Vim Tabularize 安装
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
在公司好多工具已经被专人解决。回家后想自己想搭一下环境 ,发现很多踩过的坑并没有被记录,因此想通过博客来记录自己的使用,避免以后在网上找来找去,以希望能够帮助到同样需求的人。这里先介绍一个vim 插件,格式对齐的工具Tabularize。
提示:以下是本篇文章正文内容,下面案例可供参考
一、Tabularize 是什么?
首先它是一个vim 插件, 工作中会使用到gvim,代码写完后需要完成格式调整,比如verilog 中对其()等等。因此会用Tabularize 插件。
二、使用步骤
1.Tabularize 下载和安装
Tabularize 可以从github 下载,操作如下:
mkdir -p ~/.vim/bundle
cd ~/.vim/bundle
git clone https://github.com/godlygeek/tabular.git
2.Tabularize vim 设置
修改home 路径下的.vimrc 文件,在文本最后粘贴下面代码(网上搜寻过来,亲测有效)。
let mapleader=','
if exists(":Tabularize")
nmap <Leader>a= :Tabularize /=<CR>
vmap <Leader>a= :Tabularize /=<CR>
nmap <Leader>a: :Tabularize /:\zs<CR>
vmap <Leader>a: :Tabularize /:\zs<CR>
endif
inoremap <silent> <Bar> <Bar><Esc>:call <SID>align()<CR>a
function! s:align()
let p = '^\s*|\s.*\s|\s*$'
if exists(':Tabularize') && getline('.') =~# '^\s*|' && (getline(line('.')-1) =~# p || getline(line('.')+1) =~# p)
let column = strlen(substitute(getline('.')[0:col('.')],'[^|]','','g'))
let position = strlen(matchstr(getline('.')[0:col('.')],'.*|\s*\zs.*'))
Tabularize/|/l1
normal! 0
call search(repeat('[^|]*|',column).'\s\{-\}'.repeat('.',position),'ce',line('.'))
endif
endfunction