mirror of https://github.com/logseq/logseq
Fix codemirror too slow for clojure mode
parent
cef4c3b0bc
commit
cbca9602fa
|
@ -125,7 +125,7 @@
|
|||
(when-let [file-content (db/get-file path)]
|
||||
(let [content (string/trim file-content)
|
||||
mode (util/get-file-ext path)
|
||||
mode (if (= mode "edn") "clojure" mode)]
|
||||
mode (if (contains? #{"edn" "clj" "cljc" "cljs" "clojure"} mode) "text/x-clojure" mode)]
|
||||
(lazy-editor/editor {:file? true
|
||||
:file-path path} path {:data-lang mode} content nil)))
|
||||
|
||||
|
|
|
@ -1470,10 +1470,11 @@
|
|||
(highlight/html-export attr code)
|
||||
|
||||
:else
|
||||
[:div
|
||||
(lazy-editor/editor config (str (dc/squuid)) attr code pos_meta)
|
||||
(when (and (= language "clojure") (contains? (set options) ":results"))
|
||||
(sci/eval-result code))]))
|
||||
(let [language (if (contains? #{"edn" "clj" "cljc" "cljs" "clojure"} language) "text/x-clojure" language)]
|
||||
[:div
|
||||
(lazy-editor/editor config (str (dc/squuid)) attr code pos_meta)
|
||||
(when (and (= language "clojure") (contains? (set options) ":results"))
|
||||
(sci/eval-result code))])))
|
||||
["Quote" l]
|
||||
(->elem
|
||||
:blockquote
|
||||
|
|
|
@ -38,7 +38,8 @@
|
|||
["codemirror/mode/sql/sql"]
|
||||
["codemirror/mode/swift/swift"]
|
||||
["codemirror/mode/xml/xml"]
|
||||
["parinfer-codemirror" :as par-cm]))
|
||||
;; ["parinfer-codemirror" :as par-cm]
|
||||
))
|
||||
|
||||
;; codemirror
|
||||
|
||||
|
@ -86,9 +87,10 @@
|
|||
(let [[config id attr code pos_meta] (:rum/args state)
|
||||
original-mode (get attr :data-lang)
|
||||
mode (or original-mode "javascript")
|
||||
clojure? (contains? #{"clojure" "clj"} mode)
|
||||
clojure? (contains? #{"clojure" "clj" "text/x-clojure" "cljs" "cljc"} mode)
|
||||
mode (if clojure? "clojure" mode)
|
||||
lisp? (contains? #{"clojure" "scheme" "racket" "lisp"} mode)
|
||||
lisp? (or clojure?
|
||||
(contains? #{"scheme" "racket" "lisp"} mode))
|
||||
textarea (gdom/getElement id)
|
||||
editor (from-textarea textarea
|
||||
#js {:mode mode
|
||||
|
@ -114,8 +116,8 @@
|
|||
(util/stop e)))
|
||||
(.save editor)
|
||||
(.refresh editor)
|
||||
(when clojure?
|
||||
(par-cm/init editor))
|
||||
;; (when clojure?
|
||||
;; (par-cm/init editor))
|
||||
editor))
|
||||
|
||||
(defn- load-and-render!
|
||||
|
@ -139,6 +141,9 @@
|
|||
[:div.absolute.top-0.right-0.p-1.text-sm.text-gray-500
|
||||
{:style {:z-index 2
|
||||
:background "white"}}
|
||||
(get attr :data-lang "javascript")]
|
||||
(let [mode (get attr :data-lang "javascript")]
|
||||
(if (= mode "text/x-clojure")
|
||||
"clojure"
|
||||
mode))]
|
||||
[:textarea (merge {:id id
|
||||
:default-value code} attr)]])
|
||||
|
|
|
@ -402,8 +402,14 @@
|
|||
(db/cloned? repo-url)
|
||||
(not (state/get-edit-input-id)))
|
||||
(-> (p/let [files (js/window.workerThread.getChangedFiles (util/get-repo-dir (state/get-current-repo)))]
|
||||
(when (or (seq files) fallback? diff-push?)
|
||||
;; auto commit if there are any un-committed changes
|
||||
(when (or
|
||||
;; FIXME:
|
||||
(and
|
||||
(seq (state/get-changed-files repo-url))
|
||||
(seq files))
|
||||
fallback?
|
||||
diff-push?)
|
||||
;; auto commit if there are any un-committed changes
|
||||
(let [commit-message (if (string/blank? commit-message)
|
||||
"Logseq auto save"
|
||||
commit-message)]
|
||||
|
|
Loading…
Reference in New Issue