GitHub - tpope/vim-classpath: classpath.vim: Set 'path' from the...

 4 years ago
source link: https://github.com/tpope/vim-classpath
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.



This plugin sets the 'path' for JVM languages to match the class path of your current Java project. This lets commands like :find and gf work as designed. I originally wrote it for Clojure, but I see no reason why it wouldn't be handy for other languages as well.

Currently, Maven and Leiningen are supported, with a fallback to $CLASSPATH if neither applies. Open an issue if you have ideas for supporting another project management system.

Included is a :Java command, which executes java (or $JAVA_CMD) with the current buffer's 'path' as the class path.


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-classpath.git

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


Why does it take so long for Vim to startup?

The short answer is because the JVM is slow.

The first time you load a Clojure file from any given project, classpath.vim sets about trying to determine your class path, leveraging either lein classpath or mvn dependency:build-classpath. This takes a couple of seconds or so in the best case scenario, and potentially much longer if it decides to hit the network.

Because the class path is oh-so-expensive to retrieve, classpath.vim caches it in ~/.cache/vim/classpath. The cache is expired when the timestamp on project.clj or pom.xml changes.


See the contribution guidelines for pathogen.vim.


Like classpath.vim? Follow the repository on GitHub. And if you're feeling especially charitable, follow tpope on Twitter and GitHub.


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

About Joyk

Aggregate valuable and interesting links.
Joyk means Joy of geeK