init commit

This commit is contained in:
2025-08-11 05:48:00 -09:00
parent ebeff7b1e4
commit 9c34381aa5
10 changed files with 2615 additions and 1623 deletions
+46 -1
View File
@@ -32,13 +32,58 @@
:passive? true
:on-result (output-expanded me-form)})))
(defn wrap-emit [name f]
(fn [...]
(event.emit name)
(f ...)))
(local dir-str (wrap-emit
:doc
(client-exec-fn :doc :doc-str)))
(defn dir-word []
(let [{: content : range : node} (extract.word)]
(when (not (core.empty? content))
(dir-str
{:code content
:range range
:node node
:origin :word}))))
(defn replace-form []
(let [buf (vim.api.nvim_win_get_buf 0)
win (vim.api.nvim_tabpage_get_win 0)
form (extract.form {})]
(when form
(let [{: content : range : node} form]
(eval-str
{:code content
:range range
:node node
:origin :replace-form
:suppress-hud? true
:on-result
(fn [result]
(buffer.replacerange
buf
range result)
(editor.go-to
win
(core.get-in range [:start 1])
(core.inc (core.get-in range [:start 2]))))})
(.. "(clojure.core/macroexpand1 " form ")")))))
(defn add-buf-mappings []
(mapping.buf :CljMacroexpand "cm" #(clj-macroexpand)
{:desc "Call macroexpand-all on the symbol under the cursor"})
(mapping.buf :CljMacroexpand0 "c0" #(clj-macroexpand "clojure.core/macroexpand")
{:desc "Call macroexpand on the symbol under the cursor"})
(mapping.buf :CljMacroexpand1 "c1" #(clj-macroexpand "clojure.core/macroexpand-1")
{:desc "Call macroexpand-1 on the symbol under the cursor"}))
{:desc "Call macroexpand-1 on the symbol under the cursor"})
(mapping.buf :CljMacroexpandReplace "em!" #(replace-form)
{:desc "Call macroexpand-1 on the symbol under the cursor then replace that src with the expansion"})
(mapping.buf :CljDirWord "em!" #(dir-word)
{:desc "Calls (clojure.repl/dir ,,,) for the namespace under the cursor"}))
(defn init []
(when (or (not nvim.g.conjure_macroexpand_disable_mappings)