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
相关文章
相关标签/搜索