最近迷上了使用vim开发java代码。已经使用了一段时间了,平时自己写代码时会手动调整格式,代码自动格式化一直没有使用过。如果频繁copy代码,代码格式化还是很有必要的。
这里要感谢一下SpaceVim,不然我也不知道可以代码格式化。就因为在使用SpaceVim的时候,Java的代码格式化一直报错
,我就想自己搭一下试试吧,本以为会很难,没想到如此简单。
环境
项目 | Value |
---|---|
系统 | macOS Big Sur 11.2 |
vim | VIM - Vi IMproved 8.2 |
安装neoformat
这是一个用于代码格式化的vim插件,非常强大。
项目主页:https://github.com/sbdchd/neoformat
乍一看,说明文档讲了好多内容啊,萌生退意,硬着头皮试试吧。单论java格式化这块,真的很容易。
Vundle为例
vim ~/.vimrc
增加下面一行:
Plugin 'sbdchd/neoformat'
重启vim 并执行::PluginInstall
搞定任务完成一大半了。
依赖
项目主面中有介绍,Java语法格式化,支持以下组件。
uncrustify, astyle, prettier
因为我之前用SpaceVim时尝试在CentOS7中安装uncrustify,不知道什么原因make install
报了几个错,c语言我又不熟就没打算在深入研究了。
然后我就选在macOS下先测试astyle,没想到一下就成功了。
下载文件
https://sourceforge.net/projects/astyle/files/
解压后。
cd astyle/build/mac
make
这个时候就轻松搞定了。make完成后,会在astyle/build/mac/bin/AStyle
目录下生成一个AStyle
文件,把它配置到环境变量中即可。
vim ~/.zshrc
加入一行:
export PATH=$PATH:/Users/itkey/mac/soft/bin/astyle/build/mac/bin
这个路径修改成你自己的路径就可以了。
在vim中执行 :Neoformat
即可完成代码格式化了。