最全的VIM脚本命令.docx

上传人:b****6 文档编号:3762640 上传时间:2022-11-25 格式:DOCX 页数:33 大小:28.66KB
下载 相关 举报
最全的VIM脚本命令.docx_第1页
第1页 / 共33页
最全的VIM脚本命令.docx_第2页
第2页 / 共33页
最全的VIM脚本命令.docx_第3页
第3页 / 共33页
最全的VIM脚本命令.docx_第4页
第4页 / 共33页
最全的VIM脚本命令.docx_第5页
第5页 / 共33页
点击查看更多>>
下载资源
资源描述

最全的VIM脚本命令.docx

《最全的VIM脚本命令.docx》由会员分享,可在线阅读,更多相关《最全的VIM脚本命令.docx(33页珍藏版)》请在冰豆网上搜索。

最全的VIM脚本命令.docx

最全的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

nmapfd:

seff=dos

nmapfu:

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=strftime("%d/%m/%y%H:

%M:

%S")

iabxnameAmirSalihefendic

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

"Editingmappingsetc.

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

"RemapVIM0

map0^

"Movealineoftextusingcontrol

nmapmz:

m+`z

nmapmz:

m-2`z

vmap:

m'>+`mzgv`yo`z

vmap:

m'<-2`>my`

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$qeDeleteTillSlash()

cno$ceeCurrentFileDir("e")

cno$tceCurrentFileDir("tabnew")

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

mapcd:

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

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1