vim经验技巧

vim经验技巧

1. nginx配置文件语法高亮
#wget http://www.vim.org/scripts/download_script.php?src_id=19394
将nginx.vim置于~/.vim/syntax目录下
增长配置到~/.vim/filetype.vim最后一行    =>
#au BufRead,BufNewFile /etc/nginx/*,/usr/local/nginx/conf/* if &ft == '' | setfiletype nginx | endif
au BufRead,BufNewFile * if &ft == '' | setfiletype nginx | endif

2. 更改默认字体
修改配置文件~/.vimrc    =>
:set guifont=Consolas:h12

3. Vim编码设置
1)encoding(enc)是Vim内部的字符编码方式。
为了不windows下,菜单出现乱码,应设置:
:set encoding=UTF-8
:set langmenu=zh_CN.UTF-8
language message=zh_CN.UTF-8
2)termencoding是Vim用于显示屏幕的编码,便于输出。
3)fileencoding(fenc)是从磁盘上读取文件时,对文件的编码。
4)fileencodings(fencs)是一个逗号分隔的列表,来实现编码的自动识别。最好把宽松的编码放在后面。
若是编码错了,打开的文件没法识别,能够指定编码:
:e ++enc=UTF-8 myfile
5)fencview是一个编码自动识别插件:
#wget http://www.vim.org/scripts/download_script.php?src_id=21657
将fencview放置于~/.vim/plugin目录下
tools=>encoding=>Auto Detect或:FencView调用命令

4. Vim中的复制
打开鼠标模式:
:set mouse=a
在普通模式下能够直接使用鼠标选取文本,若是想要复制到剪切板:
设置为paste模式
:set paste

5. Vim缩进及行号控制
set nu
set shiftwidth=2
set nobackup
set autoindent
set tabstop=2
set softtabstop=2
set expandtab

6. 安装树形目录插件BERDTree
#wget http://www.vim.org/scripts/download_script.php?src_id=17123
解压到vim目录下,把NERD_tree.vim放置于vim/plugin目录下,把NERD_tree.txt放置于vim/doc目录下。
:NERDTree
可使用该插件
vimrc添加以下自定义设置    =>
let NERDChristmasTree=1
let NERDTreeAutoCenter=1
let NERDTreeBookmarksFile=$VIM.'\Data\NerdBookmarks.txt'
let NERDTreeMouseMode=2
let NERDTreeShowBookmarks=1
let NERDTreeShowFiles=1
let NERDTreeShowHidden=1
let NERDTreeShowLineNumbers=1
let NERDTreeWinPos='left'
let NERDTreeWinSize=31
nnoremap f :NERDTreeToggle
map <F7> :NERDTree<CR>

7. 安装txt.vim插件方便查询普通文件
#wget http://www.vim.org/scripts/download_script.php?src_id=6580
解压到vim/syntax目录下,vimrc添加    =>
au BufRead,BufNewFile *  setfiletype txt

8. 安装taglist插件
#wget http://www.vim.org/scripts/download_script.php?src_id=19574
解压包把doc,plugin下的文件分别放入vim/doc,vim/plugin目录下
:helptags $VIM/vim/doc
生成帮助标签,以后能够查看taglist帮助
:help taglist.txt

9. 安装json插件
#wget http://www.vim.org/scripts/download_script.php?src_id=10853
解压到vim/syntax目录下
vimrc添加以下自定义设置    =>
au! BufRead,BufNewFile *.json set filetype=json 
augroup json_autocmd
  autocmd!
  autocmd FileType json set autoindent
  autocmd FileType json set formatoptions=tcq2l
  autocmd FileType json set textwidth=78 shiftwidth=2
  autocmd FileType json set softtabstop=2 tabstop=8
  autocmd FileType json set expandtab
  autocmd FileType json set foldmethod=syntax
augroup END