最全的VIM脚本命令.docx
- 文档编号:3762640
- 上传时间:2022-11-25
- 格式:DOCX
- 页数:33
- 大小:28.66KB
最全的VIM脚本命令.docx
《最全的VIM脚本命令.docx》由会员分享,可在线阅读,更多相关《最全的VIM脚本命令.docx(33页珍藏版)》请在冰豆网上搜索。
最全的VIM脚本命令
"在用户主目录下建立.vimrc文件,复制本文内容到.vimrc中
"插件目录
"~/.vim
"~/.vim/doc帮助文件的目录
"~/.vim/plugin插件的目录
"~/.vim/syntax语法目录
"设定文件浏览器目录为当前目录
setbsdir=buffer
"设置编码
setenc=utf-8
"设置文件编码
setfenc=utf-8
"设置文件编码检测类型及支持格式
setfencs=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
"指定菜单语言
setlangmenu=zh_CN.UTF-8
"C/C++注释
setcomments=:
//
"修正自动C式样注释功能<2005/07/16>
setcomments=s1:
/*,mb:
*,ex0:
/
"保存文件格式
setfileformats=unix,dos
"显示行号
"setnumber
"去除vim的GUI版本中的toolbar
setguioptions-=T
"在输入括号时光标会短暂地跳到与之相匹配的括号处,不影响输入"
setshowmatch
"当vim进行编辑时,如果命令错误,会发出一个响声,该设置去掉响声
setvbt_vb=
"查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一
"个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依
"次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词
"时,别忘记回车
setincsearch
"默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示
setnohls
"修改一个文件后,自动进行备份,备份的文件名为原文件名加“~“后缀
"ifhas(“vms”)
"setnobackup"编辑过程中不备份
"else
"setbackup
"endif
"setnobackup"编辑过程中不备份
setbackup"编辑过程备份
setwritebackup
setbackupdir=~/tmp
"去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
setnocompatible
"检测文件的类型
filetypeon
"记录历史的行数"保存50个命令历史
sethistory=1000
"背景使用黑色
setbackground=dark
"总的打开文件记录
letMRU_Max_Entries=1000
"这样在vim中打开文件时,按tab键补齐文件名时它会忽略上述文件.
setsuffixes=.bak,~,.o,.h,.info,.swp,.aux,.bbl,.blg,.dvi,.lof,.log,.lot,.ps,.toc
setencoding=utf-8
setfileencodings=utf-8,gbk
setguifont=Luxi\Mono\9"设置字体,字体名称和字号
setbackspace=2"设置退格键可用
setwrap"自动换行
"setnowrap"不自动换行
setlinebreak"整词换行,单词作为一个整体换行
setwhichwrap=b,s,<,>,[,]"光标从行首和行末时可以跳到另一行去
"setlist"显示制表符
"setlistchars=tab:
>-,trail:
-"将制表符显示为'>---',将行尾空格显示为'-'
"setlistchars=tab:
.\,trail:
."将制表符显示为'.'
setautochdir"自动设置目录为正在编辑的文件所在的目录
"sethidden"没有保存的缓冲区可以自动被隐藏
setscrolloff=5"光标上下两侧最少保留的屏幕行数。
这使你工作时总有一些可见的上下文。
setshowcmd"在屏幕最后一行显示未完成的命令。
"setmouse=a"在终端中使用鼠标这样设置后,不能用鼠标右键的”复制“了,解决方法,在复制之前,先按住Shift键
setnoswapfile"不生成.swap的文件
syntaxenable"高亮语法
syntaxon"
colordarkblue
setcursorline
settabstop=4"设置tab键的宽度
setsofttabstop=4
setnoexpandtab
setshowmode
sethls
sethlsearch"高亮显示搜索结果
setgdefault"替换时所有的行内匹配都被替换,而不是只有第一个
setcin
setsm
setai
setupdatetime=100
"匹配括号高亮的时间(单位是十分之一秒)
setmatchtime=1
"搜索时不区分大小写
setignorecase
"自动完成设置禁止在插入模式移动的时候出现Complete提示
letg:
acp_mappingDriven=1
"导出html设置
lethtml_use_css=1
lethtml_number_lines=0
letuse_xhtml=1
"设置工作目录
function!
CHANGE_CURR_DIR()
let_dir=expand("%:
p:
h")
exec"cd"._dir
unlet_dir
endfunction
autocmdBufEnter*callCHANGE_CURR_DIR()
nmap:
move.+1
nmap:
move.-2
imap:
move.+1
imap:
move.-2
vmap:
move'>+1gv
vmap:
move'<-2gv
"--------------------------------------------------------------------------------
"
"鼠标滚动
"
"--------------------------------------------------------------------------------
"map[62~
"map!
[62~
"map[63~
"map!
[63~
"map[64~
"map!
[64~
"map[65~
"map!
[65~
"--------------------------------------------------------------------------------
"
"编程相关的设置
"
"--------------------------------------------------------------------------------
setcompleteopt=longest,menu"关掉智能补全时的预览窗口
filetypepluginindenton"加了这句才可以用智能补全
"settags=src/tags"设置tags文件的路径
synon"打开语法高亮
setsmartindent"智能对齐方式
setshiftwidth=4"换行时行间交错使用4个空格
setautoindent"自动对齐
setai!
"设置自动缩进
colorschemedefault"默认为白底黑字
colorschemeevening"载入色彩方案evening。
它会在'runtimepath'里搜索
"colors/{name}.vim",载入第一个找到的文件。
"--------------------------------------------------------------------------------
"
"代码折叠
"
"--------------------------------------------------------------------------------
setfoldmarker={{{,}}}"指定折叠标志
setfoldmarker={,}"指定折叠标志
setfoldmarker={{{,}}}"指定折叠标志
setfoldmarker={,}"指定折叠标志
syntaxregionfunctionFoldstart="\(^\({\|\S.*{\)$\n\)\@<=\_[^}]"end="\(^{.*\)\@
$\n\(^}\)\@="transparentfold
syntaxregioncommentFoldstart="/\*"end="\*/"transparentfoldkeepend
syntaxregioncommentFold2start="^\(^//.*$\n\)\@
//.*\(\n//\)\@=$"end="^\(^//.*$\n\)\@<=//.*\(\n//\)\@!
$"transparentfoldkeepend
setfoldmethod=marker"标志用于指定折叠。
setfoldmethod=syntax
"语法高亮项目指定折叠。
文件太大,打开会非常慢,因为要进行正则表达式搜索
setfoldlevel=100"不要自动折叠
setfoldopen-=search"不要打开折叠,当搜索进它里面时
setfoldopen-=undo"不要打开折叠,当做撤销进它里面时
setfoldcolumn=4"如果非零,指定宽度的列在窗口的一侧显示,指示折叠的打开和关闭。
最大值为12
"--------------------------------------------------------------------------------
"
"快速编辑.vimrc设置
"
"--------------------------------------------------------------------------------
"
"当.vimrc被修改时,自动生效
autocmd!
bufwritepost.vimrcsource~/.vimrc
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"Fileformats
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"Favoritefiletypes
setffs=unix,dos,mac
nmap
seff=dos
nmap
seff=unix
""""""""""""""""""""""""""""""
"Statusline
""""""""""""""""""""""""""""""
"Alwayshidethestatusline
setstatusline=[%F]%y%r%m%*%=[Line:
%l/%L,Column:
%c][%p%%]"状态栏的显示格式
setlaststatus=2"总是显示一个状态栏
setruler"总是显示光标的位置
function!
CurDir()
letcurdir=substitute(getcwd(),'/Users/amir/',"~/","g")
returncurdir
endfunction
"Formatthestatusline
setstatusline=\%F%m%r%h\%w\\CWD:
\%r%{CurDir()}%h\\\Line:
\%l/%L:
%c
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"使tags在当前找不到tags到上级目录去找
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
settags=tags;
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"General
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"Forctags,thenitcanfindthe'tags'fileevennotincurrentdirectory"
settags=tags;/
"Settoautoreadwhenafileischangedfromtheoutside"
setautoread
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"文本操作
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"按"=",就可以利用外部命令indent美化我的c程序。
map=ggVG:
!
indent-nut-st-kr2>/dev/null
map
bp
map
bn
map
bd
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"GeneralAbbrevs
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"Myinformation
iabxdate
%M:
%S")
iabxnameAmirSalihefendic
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"Editingmappingsetc.
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"RemapVIM0
map0^
"Movealineoftextusingcontrol
nmap
m+
nmap
m-2
vmap
m'>+
vmap
m'<-2 func! DeleteTrailingWS() exe"normalmz" %s/\s\+$//ge exe"normal`z" endfunc autocmdBufWrite*.py: callDeleteTrailingWS() setcompleteopt=menu """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" "Command-lineconfig """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" func! Cwd() letcwd=getcwd() return"e".cwd endfunc func! DeleteTillSlash() letg: cmd=getcmdline() ifg: cmd==g: cmd_edited endif returng: cmd_edited endfunc func! CurrentFileDir(cmd) returna: cmd."".expand("%: p: h")."/" endfunc "Smartmappingsonthecommandline cno$he~/ cno$de~/Desktop/ cno$je./ cno$q cno$ce cno$tc cno$thtabnew~/ cno$tdtabnew~/Desktop/ "Bashlike cnoremap cnoremap cnoremap """"""""""""""""""""""""""""""""""""" "ColorsandFonts """"""""""""""""""""""""""""""""""""" "Enablesyntaxhighlight syntaxenable """"""""""""""""""""""""""""""""""""" "VIMuserinterface """"""""""""""""""""""""""""""""""""" "Set7linestothecurorsawayfromtheborder-whenmovingvertical.. setso=7 "TurnonWiLdmenu" setwildmenu "Thecommandbaris2high" setcmdheight=2 setbackspace=eol,start,indent "不要闪烁 setnovisualbell "Howmanytenthsofasecondtoblink" setmat=2 "imediatelyshowthesearchresult" setis "Switchtocurrentdir map cd%: p: h """"""""""""""""""""""""""""""""""""" "Folding """"""""""""""""""""""""""""""""""""" "Enablefolding,Ifinditveryuseful setnofen setfdl=0 """"""""""""""""""""""""""""""""""""" "Textoptions """"""""""""""""""""""""""""""""""""" setexpandtab setambiwidth=double setsmarttab "SetTab=4spaces setts=4 setlbr settw=500 setselection=inclusive """""""""""""""""""""""""""""" "Indent """""""""""""""""""""""""""""" "Autoindent setai "Setautoindentwidth=4spaces" setsw=4 "Smartindet" setsi "C-styleindenting" setcindent"usage: selectcodes,press'='key,thecodeswillautoindenting "Encodingsettings ifhas("multi_byte") "Setfileencodingpriority ifgetfsize(expand("%"))>0 setfileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,latin1 else setfileencodings=cp936,big5,euc-jp,euc-kr,latin1 endif "CJKenvironmentdetectionandcorrespondingsetting ifv: lang=~"^zh_CN" "Usecp936tosupportGBK,euc-cn==gb2312 setencoding=cp936 settermencoding=cp936 setfileencoding=cp936 elseifv: lang=~"^zh_TW" "cp950,big5oreuc-tw" "Aretheyequaltoeachother? " setencoding=big5 settermencoding=big5 setfileencoding=big5 elseifv: lang=~"^ko" "Copiedfromsomeone'sdotfile,untested" setencoding=euc-kr settermencoding=euc-kr setfileencoding=euc-kr elseifv: lang=~"^ja_JP" "Copiedfromsomeone'sdotfile,unteste" setencoding=euc-jp settermencoding=euc-jp setfileencoding=euc-jp endif "DetectUTF-8locale,andreplaceCJKsettingifneeded" ifv: lang=~"utf8$"||v: lang=~"UTF-8$" setencoding=utf-8 settermencoding=utf-8 setfileencoding=utf-8 endif else "echoerr"Sorry,thisversionof(g)vimwasnotcompiledwithmulti_byte" endif
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VIM 脚本 命令