github.com/liquidz/vim-iced ↗
Clojure Interactive Development Environment for Vim8/Neovim
Open this visualization on its own page →
Contributors
21
Lines of Code
4,430
From
2018-08-03
To
2021-02-10
About liquidz/vim-iced
Vim-iced is a Clojure Interactive Development Environment for Vim8 and Neovim that enables interactive Clojure development directly within the editor. The plugin provides asynchronous code evaluation powered by Vim's channel system, allowing developers to test and refactor code without leaving their editor. It supports nREPL connections and integrates with CIDER-nREPL and refactor-nREPL to provide advanced development features.
The plugin offers comprehensive Clojure development tools including test execution, refactoring operations like clean namespace, thread first/last macros, and symbol renaming. It includes debugging support via cider-nrepl's debugger and the ability to browse tapped values. Vim-iced also provides reference lookup for documentation, Javadoc, and ClojureDocs integration, along with code formatting support for multiple formatters like cljfmt, cljstyle, zprint, and joker. The project includes ClojureScript support for Figwheel Main, lein-figwheel, and shadow-cljs.
Notable technical aspects include that vim-iced requires no Python dependency, instead using Vim's native channel capabilities for asynchronous operations. It integrates with various completion engines like coc.nvim and asyncomplete.vim through external plugins, and uses clj-kondo for static analysis to boost performance. The project is primarily written in Vim Script and requires Clojure 1.8 or later. The maintainer is developing Elin as a successor to vim-iced, written primarily in Babashka.