A neovim port of clj-refactor.el
All commands are mapped under the cr prefix and use a two letter mnemonic shortcut. E.g. crrs for Clojure Refactor Rename Symbol.The full list is below.
Using Vundle, add this to your vundle .config/nvim/init.vim section:
Plugin 'snoe/clj-refactor.nvim'
- run
:PluginInstall :UpdateRemotePluginsyou should seeremote/host: node host registered plugins ['clj-refactor.nvim']- close all nvims simultaneously
- refactor
You can set g:clj_refactor_prune_ns_form and g:clj_refactor_prefix_rewriting to 0 to affect the corresponding middleware options. Both default to 1.
- Magic requires - experimental
autocmd FileType clojure inoremap <buffer> / /<ESC>:silent! CMagicRequires<CR>a - Automatic insertion of namespace declaration
-
cradadd-declaration - add-import
- add-libspec
-
cramadd-missing-libspec - add-project-dependency
- add-stubs
-
crcnclean-ns -
crfecreate-fn-from-example -
crcccycle-coll -
crcicycle-if -
crcpcycle-privacy -
crctcycle-thread - describe-refactor
- destructure-keys
-
crelexpand-let * Doesn't yet replace other usages of bindings -
credextract-def -
crefextract-fn - find-usages
- hotload-dependency
- inline-symbol
-
crilintroduce-let - move-form
-
crmlmove-to-let - promote-fn-literal
- promote-fn
- remove-let
- remove-unused-requires
-
crrfcrrdrename-file-or-dir -
crrsrename-symbol-global * just rename symbol -
crrsrename-symbol-local * just rename symbol - replace-use
- show-changelog
- sort-project-dependencies
- stop-referring
-
crtfthread-first-all -
crtlthread-last-all -
crttthread-last -
crththread -
cruaunwind-all -
cruwunwind-thread
Run lein npm install
I generally have 4 terminals open:
$ rlwrap lein figwheel$ node target/out/tests.js$ lein cljsbuild auto plugin$ tail -f $NEOVIM_JS_DEBUG
Somewhere in your environment do export NEOVIM_JS_DEBUG=~/nvimdebug.log and neovim will dump messages from the plugin there. If something goes wrong it will likely show up in ~/.nvimlog