vi的基本操作,vi使用方法
一只熊在天上飞知不如行,乐不如好第3页
《Vi常见操作》由拉斐尔张于2012年3月24日出版。
现在我70%的时间都在用Windows,还有很多时间和vi打交道。如果不把常见的vi操作记录下来,真的很难记住。
虚拟仪器的两种模式切换:
按Esc键进入命令模式,在该模式下可以保存、退出、查找、替换、复制、粘贴、删除行、撤消、打开新文件和显示行号。按I或A进入编辑模式,在此模式下,您可以输入字符,并使用delete和backspace (I表示插入,A表示添加/追加)添加语法on (echo syntax on ~/来删除字符。vmirc)添加到vi的配置文件中可以支持文件的语法高亮显示。一般至少默认支持shell、php、python、C等语言的语法高亮。如果这不起作用,您可能需要添加另一行语法enable。
但是,有时您需要手动添加语法突出显示文件。例如,我需要添加markdown的语法突出显示。操作如下所示:
修改/usr/share/vim/vim #/filetype . vim文件(其中#表示你的vim版本号,比如73),找到对应的行,给文件加上对应文件类型的后缀。比如我加到markdown的关联规则在maple和map类型之后,代码如下:‘Markdown
au BufNewFile,BufRead *。降价,*。mdown,*。mkd,*。mkdn,*。md setf降价
下载这个markdown语法高亮文件,并将其复制到/usr/share/vim/vim#/syntax目录中。如果有些文件是markdown文件,但是后缀很少,那么可以使用Vim的命令模式:set filetype=markdown让Vim用markdown语法突出显示模板来处理它。以下是命令模式下的操作组合键:
$:将光标移动到当前行的末尾:将光标移动到当前行的开头*:在文件中找到光标的当前单词%:找到对应的半括号X:删除一个字符dd:删除当前行dw:删除一个单词dnd:删除当前行N行U:恢复上次修改操作,即撤销:w:保存:q:关闭当前文件,如果只有一个文件则退出。q!放弃所有修改,关闭当前文件:set nu:显示行号,或者全部写入,即:set number:set nonu:不显示行号:n:跳转到第n行/word:在文件中查找单词字符串,word也可以是正则表达式n:在文件中继续查找字符串:Tabnew filename:在新的Tab中打开文件名文件:tabn:切换到下一个Tab:tabp:切换到上一个Tab。复制粘贴的操作如下:首先进入命令模式,然后在要复制的文本开头按V,在要复制的文本结尾按Y,最后在需要粘贴文本的地方按P。
如果你在上面第二步按下X而不是Y,那就是剪切,不是复制。
vi的替换操作在命令模式下执行,操作输入:ranges/search/replace/g,其中:
Range表示范围,%表示当前文件的所有行。表示当前行,$表示最后一行。例如,10,20表示从第10行到第20行,$表示从当前行到最后一行。s表示替换搜索是需要替换的字符串的正则表达式。replace意味着一个新的字符串或者一个新的字符串正则表达式G是可选的。如果有,就意味着替换这个范围内搜索匹配的所有字符串。不然像块折叠这种只替换第一串的功能对我现在来说有点太高级了,记不了那么多。当所有这些命令都颠倒过来时。