Vim輕量級查看Java代碼


平時開發 Java 都是使用 Intellij IDEA,毫無疑問它是現在最好用的 Java 開發平台,無論是代碼補全、智能提示、代碼重構各個方面都是頂尖的存在。但是在平時一直都有這樣的情況存在,我平時有時候並不會一直打開 IDEA,可有時卻需要簡單的查看一下公司項目的代碼,這個時候要是打開 IDEA 去查看難免有點殺雞焉用牛刀的感覺,所以一直想尋找一個平時簡單查看代碼的方式。我現階段使用的是 vim 來查看代碼,當然純 vim 是不適合查看 java 代碼的,至少缺少目錄結構、方法結構以及方法跳轉,於是我借助 3 個 vim 插件來解決這個問題,一個是 tagbar 一個是 nerdtree 還有一個是 ctags

插件安裝就是使用 Bundle 這里就不贅述了

Bundle `majutsushi/tagbar`
Bundle `scrooloose/nerdtree`

ctags 在 mac 安裝

brew install ctags-exuberant

安裝后 .vimrc 配置:

let g:tagbar_ctags_bin='/usr/local/bin/ctags'

我這里 Java 代碼的跳轉是使用 ctags 來實現的,tagbar 也是依賴於 ctags,所以需要先安裝它,並配置 tagbar_ctags_bin 指向 ctags 可執行文件。

我們可以使用 ctags --list-kinds=java 命令查看 ctags 都支持哪些 java 的跳轉:

$ ctags --list-kinds=java
c  classes
e  enum constants
f  fields
g  enum types
i  interfaces
l  local variables [off]
m  methods
p  packages

安裝好后我們需要在代碼的根目錄使用 ctags -R . 命令來生成 ctags 需要的緩存文件 tags,然后再在 .vimrc 文件中配置 set tags=tags;/ 表示當前目錄找不到tags文件時請到上層目錄查找,這樣就不用在 tags 所在目錄中才可以使用 ctags 了。如果不配置就只能在 tags 同級目錄上使用代碼跳轉功能,配置后可以在任意子目錄中使用。

ctags --extra=+q --exclude=android-dto --languages=java -R . 表示索引添加類名,排除 android-dto 文件夾,語言是 java 類型

<Ctrl> + ] 跳轉到代碼的定義

<Ctrl> + o 返回

nerdtree 配置

" 使用 F2 開關 nerdtree
map <F2> :NERDTreeToggle<CR>

" 每次打開 vim 自動打開 NERDTree
autocmd VimEnter * NERDTree

" \ + r 定位當前文件所在目錄
map <leader>r :NERDTreeFind<cr> <C-w><C-w>

" 每次進入、退出方法的時候切換目錄
map <C-]> <C-]> :NERDTreeFind<cr> <C-w><C-w>
map <C-o> <C-o> :NERDTreeFind<cr> <C-w><C-w>

tagbar 配置

nmap <F8> :TagbarToggle<CR>

" 打開文件自動 打開tagbar
autocmd FileType java nested :TagbarOpen
let g:tagbar_ctags_bin='/usr/local/bin/ctags'

更多配置請查看 tagbar wiki

效果圖

vim look java


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM