Skip to content
master
Switch branches/tags
Code

Latest commit

This shares most caveats as 7a3d9e7.
Using clj-repl as the default start command is a bit of a cop out, but
I'm not sure what else to use.  A command like "watch app" is the
obvious choice, but this doesn't give us a foreground REPL, and I don't
think we want to hard code a build id.

References tpope/vim-fireplace#322
5958a99

Git stats

Files

Permalink
Failed to load latest commit information.

salve.vim

Static Vim support for Leiningen, Boot, and the Clojure CLI.

Leiningen ran... [the ants] would get to him soon, despite the salve on his boots.

-- from "Leiningen versus the Ants"

Features

  • :Console command to start a REPL or focus an existing instance if already running using dispatch.vim.
  • Autoconnect fireplace.vim to the REPL, or autostart it with :Console.
  • Navigation commands: :Esource, :Emain, :Etest, and :Eresource.
  • Alternate between test and implementation with :A.
  • Use :make to invoke lein, boot, or clojure, complete with stacktrace parsing.
  • Default dispatch.vim's :Dispatch to running the associated test file.
  • 'path' is seeded with the classpath to enable certain static Vim and fireplace.vim behaviors.

Installation

If you don't have a preferred installation method, I recommend installing pathogen.vim, and then simply copy and paste:

cd ~/.vim/bundle
git clone git://github.com/tpope/vim-salve.git
git clone git://github.com/tpope/vim-projectionist.git
git clone git://github.com/tpope/vim-dispatch.git
git clone git://github.com/tpope/vim-fireplace.git

Once help tags have been generated, you can view the manual with :help salve.

FAQ

Why does it sometimes take a few extra seconds for Vim to startup?

Much of the functionality of salve.vim depends on knowing the classpath. When possible, this is retrieved from a fireplace.vim connection, but if not, this means a call to lein classpath or boot show --fake-classpath.

Once retrieved, the classpath is cached until a project manifest file changes: for Leiningen project.clj or ~/.lein/profiles.clj, for Boot build.boot or ~/.boot/profile.boot, for the Clojure CLI deps.edn or ~/.clojure/deps.edn.

License

Copyright © Tim Pope. Distributed under the same terms as Vim itself. See :help license.

About

salve.vim: static support for Leiningen and Boot

Resources

Releases

No releases published

Packages

No packages published