SpaceVim - 打造 Java 開發環境

SpaceVim 是一個社區驅動的 Vim/Neovim 配置集合,支持多種語言開發,以模塊的形式組織各類功能,包括經常使用的開發模塊以及一些工具模塊。java

welcome-page
welcome-page

項 目 主 頁: spacevim.orglinux

Github 地址 : github.com/SpaceVim/Sp…git

下面以 Java 爲例,介紹下如何利用 SpaceVim 打造一個完整的終端開發環境。首先須要明確一點的是 SpaceVim 是一個配置集合,依賴 vim 或 neovim 才能運行,vim 安裝相對簡單,各大 linux 發行版都集成 Gvim。關於 neovim 的安裝,我的建議手動編譯,neovim 的編譯安裝很是簡單:github

git clone https://github.com/neovim/neovim.git
make CMAKE_BUILD_TYPE=RelWithDebInfo
sudo make install複製代碼

SpaceVim 安裝

spacevim 也有一鍵安裝腳本:vim

curl -sLf https://spacevim.org/install.sh | bash複製代碼

載入 Java 模塊

SpaceVim 的配置文件默認是 ~/.SpaceVim.d/init.vim, 能夠經過 SPC f v d快捷鍵打開, SPC 爲空格鍵。bash

若要載入 Java 模塊,只須要加入:curl

call SpaceVim#layers#load('lang#java')複製代碼

經常使用快捷鍵演示

  • 常規界面 - 語法樹(F2),文件樹(F3),狀態欄,標籤欄

常規界面
常規界面

  • 源文件 和 對應 test 文件相互跳轉: 快捷鍵 SPC l j a

源文件test跳轉
源文件test跳轉

  • 自動補全、導包

自動導包,補全
自動導包,補全

  • 代碼自動生成 - 好比新建 class,自動生成一些方法等,這裏演示一下 getter setter 以及 tostring 等方法的生成:

代碼生成
代碼生成

  • 執行代碼,測試等:

執行 main 方法:maven

執行main方法
執行main方法

執行當前方法:工具

執行當前方法
執行當前方法

執行全部測試方法:測試

執行全部測試
執行全部測試

以上的全部演示相關快捷鍵

包導入相關快捷鍵:

快捷鍵 描述
F4 (Insert/Normal) Import class under cursor
SPC l I Import missing classes
SPC l R Remove unused classes
SPC l i smart import class under cursor
<C-j>I (Insert) Import missing classes
<C-j>R (Insert) Remove unused classes
<C-j>i (Insert) smart import class under cursor

代碼生成相關快捷鍵:

模式 快捷鍵 描述
normal SPC l A generate accessors
normal/visual SPC l s generate setter accessor
normal/visual SPC l g generate getter accessor
normal/visual SPC l a generate setter and getter accessor
normal SPC l M generate abstract methods
insert <c-j>s generate setter accessor
insert <c-j>g generate getter accessor
insert <c-j>a generate getter and setter accessor
normal SPC l ts generate toString function
normal SPC l eq generate equals and hashcode function
normal SPC l c generate constructor
normal SPC l C generate default constructor

代碼格式化:

the default key bindings for format current buffer is SPC b f. and this key bindings is defined in format layer. you can also use g= to indent current buffer.

To make neoformat support java file, you should install uncrustify. or
download google's formater jar
and add let g:spacevim_layer_lang_java_formatter = 'path/to/google-java-format.jar'
to SpaceVim custom configuration file.

Maven

Key Binding Description
SPC l m i Run maven clean install
SPC l m I Run maven install
SPC l m p Run one already goal from list
SPC l m r Run maven goals
SPC l m R Run one maven goal
SPC l m t Run maven test

Jump

Key Binding Description
SPC l j a jump to alternate file
相關文章
相關標籤/搜索