Skip to content

liquidz/vim-iced

main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
bin
 
 
clj
 
 
doc
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

vim-iced

logo
Clojure Interactive Development Environment for Vim8/Neovim.

GitHub release GitHub license Powered by vital.vim
GitHub Actions for vim/neovim workflow GitHub Actions for dependencies workflow Codecov

Requirements

  • Vim 8.1.0614 or later, Neovim 0.4.0 or later.

  • Clojure 1.8 or later.

    • 1.10 or later is recommended.

  • No python! (boost possible with if_python3)

Features

⚑

Asynchronous evaluation

powered by channel in Vim8 / Neovim

πŸ”₯

Testing

Run test under cursor
Run tests in namespace
Re run failed/last test
Also supports kaocha by vim-iced-kaocha

πŸš€

Refactoring

Clean namespace
Add missing
Thread first/last
Extract function
Move to let
Rename symbol

πŸ’­

Auto completion

Provided by following external plugins.
- vim-iced-coc-source for coc.nvim
- vim-iced-asyncomplete for asyncomplete.vim
- vim-iced-compe for nvim-compe
Omni completion is provided by default.

πŸ“

Formatting

Supports followings currently.
- cljfmt via nREPL
- cljstyle
- zprint
- joker

πŸ”

Reference

Docs, Javadoc, and ClojureDocs πŸŽ₯
Function dependencies and references πŸŽ₯

🐜

Debugging

Supports cider-nrepl’s debugger πŸŽ₯
Browsing tapped values πŸŽ₯

πŸ““

Skeleton

Provides code skeleton when you open new file

🎩

ClojureScript support

Supports followings currently.
- Figwheel Main, lein-figwheel
- shadow-cljs

😎

Static analysis

Boost performance with static analysis powered by clj-kondo

πŸ”Œ

Socket REPL

Supports minimal operations.

🎨

Command palette

Access commands smoothly and define user custom commands

Note
vim-iced is heavily powered by cider-nrepl, refactor-nrepl, and iced-nrepl.

External plugins

πŸ”₯

vim-iced-kaocha

Provides some commands for testing with kaocha.

πŸ”

vim-iced-project-namespaces

Provides :IcedBrowseNamespace command for jumping to namespace in your project.

vim-iced-function-list

Provides :IcedBrowseFunction command for jumping to functions in current namespace.

πŸ’­

vim-iced-coc-source

Provides auto completion by coc.nvim.

vim-iced-asyncomplete

Provides auto completion by asyncomplete.vim.

vim-iced-ncm2

Provides auto completion by ncm2.

vim-iced-compe

Provides auto completion by nvim-compe.

🐜

vim-iced-fern-debugger

Provides tree views for debugging results and tapped values by fern.vim.

πŸ“š

https://github.com/liquidz/vim-iced-multi-session

Provides multi session support like connecting to nREPL and shadow-cljs.

License

Copyright (c) 2018-2023 Masashi Iizuka

Distributed under the MIT License.