Linux Vim代码格式化/美化插件vim-autoformat安装

  vim-autoformat是Vim的一款代码自动化格式插件,vim-autoformat会根据文件的后缀,自动调用相应的相应命令进行代码格式化。所以,安装vim-autoformat的同时,还需要安装相应代码语言的格式化工具,才能保证vim-autoformat的正常运行。
 

一、安装vim插件管理器:

  为了方便插件安装,我们需要先安装vim插件管理器。这里我们使用"Vundle"作为vim的 插件管理器,安装 方法这里不再做介绍,请参考:Linux Vim插件管理器Vundle安装和使用 

二、安装vim-autoformat插件:

1、安装vim-autoformat:

  安装好Vundle插件管理器后,我们就能非常方便的安装插件了。在~/.vimrc文件"call vundle#begin()" 到 "call vundle#end()"件的范围内,添加一行"Plugin 'Chiel92/vim-autoformat'",如下所示:

call vundle#begin()
 
" Vundle 本身就是一个插件
Plugin 'gmarik/Vundle.vim'
Plugin 'Chiel92/vim-autoformat'
 
"所有插件都应该在这一行之前
call vundle#end()


添加好并保存后,重新运行vim命令,在vim中运行:PluginInstall命令即可完成vim-autoformat插件的安装。

 

2、配置vim-autoformat插件:

  在~/.vimrc文件末尾添加下面内容,将F3键设置为代码格式话键。

"F3自动格式化代码
noremap <F3> :Autoformat<CR>
let g:autoformat_verbosemode=1


也可以通过下面方式,设置保存时自动对指定格式代码进行格式化,或对所有格式进行格式化。

"保存时自动格式化代码,针对所有支持的文件
au BufWrite * :Autoformat
"保存时自动格式化PHP代码
"au BufWrite *.php :Autoformat


 

还可以对指定后缀的文件名,使用指定的格式化话工具。如下为html文件指定格式化工具和参数:

<!-- 指定html格式化工具,并设置缩进为两个空格 -->
let g:formatdef_my_html = '"html-beautify -s 2"'
let g:formatters_html = ['my_html']


三、安装各语言格式化支持工具:

1、html、Javascript/JSON、css:

  htm、js、css 格式化命令分别为html-beautify、js-beautify、css-beautify:

yum -y install epel-release
yum -y install npm
npm -g install js-beautify
npm -g install html-beautify
npm -g install css-beautify
#注意:在高版本,html-beautify、css-beautify,集中在js-beautify里面了,只要安装js-beautify就行。


2、ruby语言:

#rbeautify for Ruby. It is shipped with ruby-beautify
yum -y install gem
gem install ruby-beautify


3、 C, C++, Objective-C:

  C, C++, Objective-C等语言进行格式化,可以使用 clang-format,而clang-format包含在clang包中:      

#clang-format for C, C++, Objective-C
yum -y install clang


4、Java和C#, C++, C 等:

# astyle for C#, C++, C and Java:
wget https://sourceforge.net/projects/astyle/files/astyle/astyle%203.0/astyle_3.0_linux.tar.gz/download -O astyle_3.0_linux.tar.gz
tar -zxvf astyle_3.0_linux.tar.gz
cd astyle/build/gcc
yum install gcc-c++
make && make install


5、更多语言:

  请参考:https://github.com/Chiel92/vim-autoformat

 

四、vim-autoformat插件的使用: