1. 升级vim
./configure --prefix=/usr/local/vim72 --with-features=big
Make
Make install
ln -s /usr/local/vim72/bin/vim /usr/bin/vim
cp -Rf /usr/share/vim/vim70/plugin/* /usr/local/vim72/share/vim/vim73/plugin
cp -Rf /usr/share/vim/vim70/autoload/*/usr/local/vim72/share/vim/vim73/autoload/
2. Vim插件
ctags -R *:settags=tags (路径)
taglist :http://vim.sourceforge.net/scripts/script.php?script_id=273
cp plugin/taglist.vim /usr/share/vim/vim70/plugin/
自动完成: ns9tks-vim-l9-tip.zip ns9tks-vim-autocomplpop-tip.zip
解压拷贝到plugin aotu
cp ns9tks-vim-l9-tip/ns9tks-vim-l9-tip/plugin/l9.vim/usr/share/vim/vim70/plugin/
cp -R ns9tks-vim-l9-tip/ns9tks-vim-l9-tip/autoload/* /usr/share/vim/vim70/autoload/
Vim .vimrc增加
补全:
let g:AutoComplPop_Behavior = {
\ 'c': [ {'command' : "\<C-x>\<C-o>",
\ 'pattern' : ".",
\ 'repeat' : 0}
\ ]
\}
php 补全:
if!exists('g:AutoComplPop_Behavior')
let g:AutoComplPop_Behavior = {}
let g:AutoComplPop_Behavior['php'] = []
call add(g:AutoComplPop_Behavior['php'], {
\ 'command' :"\<C-x>\<C-o>",
\ 'pattern' :printf('\(->\|::\|\$\)\k\{%d,}$', 0),
\ 'repeat' : 0,
\})
endif
重新启动vim;
见附件:vim附件
3. Vim 工具 php函数查询
mkdir /root/.vim/phpmuanul
cp vim-php-manual.tar.gz /root/.vim/phpmuanul
tar zxvf vim-php-manual.tar.gz
vim /root/.vim/phpmuanul/doc/tag s然后 : %sort
把目录添加运行环境目录
"添加运行环境目录
set runtimepath+=/root/.vim/phpmuanul 目录一,目录二
autocmd BufNewFile,Bufread *.ros,*.inc,*.phpset keywordprg="help
至此:可以按住shift+k实现php函数的查询。
4. Vim 工具php内置函数自动补全-字典文件
mkdir ~/.vim
mkdir ~/.vim/dict
cp /home/gliu/php_funclist.txt ~/.vim/dict/
vim /root/.vimrc 增加
au FileType php setlocaldict+=~/.vim/dict/php_funclist.txt
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
vim 替换语法
[addr] 表示检索范围,省略时表示当前行。如:“1,20” :表示从第1行到20行;“%” :表示整个文件,同“1,$”;“. ,$” :从当前行到文件尾;s : 表示替换操作[option] : 表示操作类型如:g 表示全局替换;c 表示进行确认p 表示替代结果逐行显示(Ctrl + L恢复屏幕);省略option时仅对每行第一个匹配串进行替换;如果在源字符串和目的字符串中出现特殊字符,需要用”\”转义
:%s/\(That\) or \(this\)/\u\2 or \l\1/
:%s/child\([ ,.;!:?]\)/children\1/g
#将mgi/r/abox换成mgi/r/asquare
:g/mg\([ira]\)box/s//mg//my\1square/g <=> :g/mg[ira]box/s/box/square/g
#将多个空格换成一个空格
:%s/ */ /g
#使用空格替换句号或者冒号后面的一个或者多个空格
:%s/\([:.]\) */\1 /g
—-
#删除所有空行
:g/^$/d
#删除所有的空白行和空行
:g/^[ ][ ]*$/d
#在每行的开始插入两个空白
:%s/^/> /
#在接下来的6行末尾加入.
:.,5/$/./
#颠倒文件的行序
:g/.*/m0O <=> :g/^/m0O
#寻找不是数字的开始行,并将其移到文件尾部
:g!/^[0-9]/m$ <=> g/^[^0-9]/m$
#将文件的第12到17行内容复制10词放到当前文件的尾部
:1,10g/^/12,17t$
~~~~重复次数的作用
#将chapter开始行下面的第二行的内容写道begin文件中
:g/^chapter/.+2w>>begin
:/^part2/,/^part3/g/^chapter/.+2w>>begin
:/^part2/,/^part3/g/^chapter/.+2w>>begin|+t$
Vim命令
setfileformat=unix 设置文件格式位unix
正则表达式 vim 替换 所有的 数字开头.结尾的字符 :g/\d\{1,3}\./s///g
使用 o O插入较好
:set fileencoding
:set fileencoding=utf-8
~/.vimrc 文件中添加以下内容:
setencoding=utf-8 fileencodings=ucs-bom,utf-8,cp936
基本命令
扩大窗口: res+10 res-10
格式化全文: gg=G
自动缩进当前行: ==
行号+G 跳转
Tab 向前跳 CTRL+o 向后跳 CTRL+} 跳到实现文件 gf 跳到头文件
* 查找s
% 括号匹配
gf 查找.h
ctrl+N 代码补齐
ctrl+= 代码对齐
ctrl+w 窗口跳转
!+shell命令
ctrl+wr 窗口跳转
CTRL+S表示停止向终端输出; CTRL+Q恢复向终端输出.
:s/p1/p2/g 将当前行中所有p1均用p2替代,若要每个替换都向用户询问则应该用gc选项
:n1,n2s/p1/p2/g 将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g 将文件中所有p1均用p2替换
比较两个文件:vimdiff main.c~ main.c
Tab 向前跳 CTRL+o 向后跳 CTRL+} 跳到实现文件 gf 跳到头文件
CTRL-]命令跳转到下一个标签, CTRL-T 命令跳转到上一个标签