fix up conjure and paredit stuff
This commit is contained in:
+58
-4
@@ -21,8 +21,30 @@
|
||||
{repo "Olical/conjure"
|
||||
:ft ["fennel" "clojure" "lisp" "scheme" "racket" "lua"]
|
||||
:config (fn []
|
||||
;; Enable HUD floating window
|
||||
(set vim.g.conjure#log#hud#enabled true))}
|
||||
;; HUD
|
||||
(set vim.g.conjure#log#hud#enabled true)
|
||||
(set vim.g.conjure#log#hud#width 0.42)
|
||||
(set vim.g.conjure#log#hud#height 0.30)
|
||||
;; Auto-start lein repl when no .nrepl-port found
|
||||
(set vim.g.conjure#client#clojure#nrepl#connection#auto_repl#enabled true)
|
||||
(set vim.g.conjure#client#clojure#nrepl#connection#auto_repl#cmd "lein repl :headless")
|
||||
;; Show result inline as virtual text
|
||||
(set vim.g.conjure#eval#result_register "*")
|
||||
(set vim.g.conjure#eval#inline#enabled true)
|
||||
(set vim.g.conjure#eval#inline#prefix "=> ")
|
||||
;; Open log as vertical split
|
||||
(set vim.g.conjure#log#split#enabled true)
|
||||
(set vim.g.conjure#log#split#direction "vertical")
|
||||
;; Clojure-specific: strip ANSI from nREPL output
|
||||
(set vim.g.conjure#client#clojure#nrepl#eval#raw_out true)
|
||||
;; Keymaps
|
||||
(let [km vim.keymap.set]
|
||||
(km :n "<localleader>lv"
|
||||
(fn [] (vim.cmd "ConjureLogVSplit"))
|
||||
{:desc "Conjure log vertical split"})
|
||||
(km :n "<localleader>lt"
|
||||
(fn [] (vim.cmd "ConjureLogTab"))
|
||||
{:desc "Conjure log tab"})))}
|
||||
|
||||
;; nvim-parinfer - Automatic parenthesis balancing
|
||||
;; See fnl/config/parinfer.fnl for default-enabled flag and toggle logic
|
||||
@@ -46,7 +68,38 @@
|
||||
;; Sync sexp auto-insert with parinfer default
|
||||
(let [par (require :config.parinfer)]
|
||||
(set vim.g.sexp_enable_insert_mode_mappings
|
||||
(if par.default-enabled 0 1))))}
|
||||
(if par.default-enabled 0 1))))
|
||||
:config (fn []
|
||||
;; vim-sexp-mappings-for-regular-people's setup is VimEnter-gated.
|
||||
;; Under lazy.nvim :ft loading, VimEnter has already fired by the
|
||||
;; time the plugin sources, so its FileType autocmd never registers
|
||||
;; and the slurp/barf/swap mappings never attach. Register our own
|
||||
;; FileType autocmd that maps the <Plug>s directly.
|
||||
(let [fts (or vim.g.sexp_filetypes "clojure,scheme,lisp,timl,fennel,racket")
|
||||
attach (fn []
|
||||
(let [m (fn [lhs rhs]
|
||||
(vim.keymap.set :n lhs rhs
|
||||
{:buffer 0 :silent true :remap true}))]
|
||||
(m "<I" "<Plug>(sexp_insert_at_list_head)")
|
||||
(m ">I" "<Plug>(sexp_insert_at_list_tail)")
|
||||
(m "<f" "<Plug>(sexp_swap_list_backward)")
|
||||
(m ">f" "<Plug>(sexp_swap_list_forward)")
|
||||
(m "<e" "<Plug>(sexp_swap_element_backward)")
|
||||
(m ">e" "<Plug>(sexp_swap_element_forward)")
|
||||
(m ">(" "<Plug>(sexp_emit_head_element)")
|
||||
(m "<)" "<Plug>(sexp_emit_tail_element)")
|
||||
(m "<(" "<Plug>(sexp_capture_prev_element)")
|
||||
(m ">)" "<Plug>(sexp_capture_next_element)")
|
||||
(m "dsf" "<Plug>(sexp_splice_list)")))]
|
||||
(vim.api.nvim_create_augroup "sexp_regular_people_fix" {:clear true})
|
||||
(vim.api.nvim_create_autocmd "FileType"
|
||||
{:group "sexp_regular_people_fix"
|
||||
:pattern (vim.split fts ",")
|
||||
:callback attach})
|
||||
;; Attach to current buffer (the FileType that triggered lazy load
|
||||
;; already fired before this autocmd was registered).
|
||||
(when (vim.tbl_contains (vim.split fts ",") vim.bo.filetype)
|
||||
(attach))))}
|
||||
|
||||
;; Mason - Package manager for LSP servers, DAP servers, linters, formatters
|
||||
{repo "williamboman/mason.nvim"
|
||||
@@ -96,4 +149,5 @@
|
||||
{lhs "<leader>b" :group "buffer"}
|
||||
{lhs "<leader>r" :group "refactor"}
|
||||
{lhs "<leader>c" :group "code"}
|
||||
{lhs "<leader>t" :group "toggle"}]))}]
|
||||
{lhs "<leader>t" :group "toggle"}
|
||||
{lhs "<leader>l" :group "log"}]))}]
|
||||
|
||||
+7
-7
@@ -1,17 +1,17 @@
|
||||
{
|
||||
"conjure": { "branch": "main", "commit": "403639610bcb9b6a5dfc494dc3179cc19773a471" },
|
||||
"conjure": { "branch": "main", "commit": "f66b3e7f45d325bd556cd785502761e583971920" },
|
||||
"hop.nvim": { "branch": "master", "commit": "08ddca799089ab96a6d1763db0b8adc5320bf050" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
|
||||
"mason-tool-installer.nvim": { "branch": "main", "commit": "443f1ef8b5e6bf47045cb2217b6f748a223cf7dc" },
|
||||
"mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" },
|
||||
"nfnl": { "branch": "main", "commit": "fecf731e02bc51d88372c4f992fe1ef0c19c02ae" },
|
||||
"mason.nvim": { "branch": "main", "commit": "12ddd182d9efbdc848b540f16484a583d52da0fb" },
|
||||
"nfnl": { "branch": "main", "commit": "ac0177c5549df7abba7a19554c18a7765386c894" },
|
||||
"nvim-parinfer": { "branch": "master", "commit": "3968e669d9f02589aa311d33cb475b16b27c5fbb" },
|
||||
"nvim-treesitter": { "branch": "main", "commit": "19c729dae6e0eeb79423df0cf37780aa9a7cc3b7" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
||||
"tokyonight.nvim": { "branch": "main", "commit": "5da1b76e64daf4c5d410f06bcb6b9cb640da7dfd" },
|
||||
"tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" },
|
||||
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" },
|
||||
"vim-sexp": { "branch": "master", "commit": "f5bd4cb2535969fe4741b24fa5f51690521dbaf0" },
|
||||
"vim-sexp": { "branch": "master", "commit": "2fc0a7c7e44fe94e48156d6a5b5fea28538430eb" },
|
||||
"vim-sexp-mappings-for-regular-people": { "branch": "master", "commit": "4debb74b0a3e530f1b18e5b7dff98a40b2ad26f1" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user