三个模式:
一般模式:移动光标,块选择,删除,复制粘贴
编辑模式:输入
命令模式:进行设置,查找,替换,定位
模式之间的切换:
一般模式是默认的模式,一打开一个文件就是这个模式
三种模式之间,一般模式是桥梁,一侧是编辑模式,另一侧是命令模式,编辑模式和命令模式不能直接切换,必须经过一般模式
一般模式向编辑模式:
光标处进入编辑模式:i
光标所在行第一个非空字符处进入编辑模式:I
移动到光标所在字符之后进入编辑模式:a
移动到光标所在字符之前进入编辑模式:A
移动到光标的下一行并进入编辑模式:o(小写字母o)
移动到光标的上一行并进入编辑模式:O(大写字母o)
一般模式向命令行模式:
进行vim的设置::set [命令](例如 :set nu,打开行数显示)
进行定位,替换::(例如 :5 会让光标移动到第5行),:n1,n2s/word1/word2/gc(从n1行到n2行之间的word1替换为word2,最后的c是可选参数,会在每次需要替换时询问)
进行正序查找:/word(/关键字,并使用n(向下切换)/N(向上切换))
进行倒序查找:?word(?关键字,使用n向上,N向下,和/相反)
一般模式的主要命令:
逐字移动:向左(h,←)、向下(j,↓)、向上(k,↑)、向右(l,→),可以结合n来进行多个字符或多行移动,例如'5j',向下移动5行
行首行尾:行首(Home,0),行尾(End,$),非空行首(^),非空行尾(g_)
大量移动:向右移动若干个字符(n[space],例如'5空格'向右移动5个字符),向下移动若干行(n[enter],例如'5回车'向下移动5行)
定位移动:第一行(gg,1G),最后一行(G),第n行(nG)
页面移动:本屏第一行(H),本屏最中间行(M),本屏最后一行(L)
翻页:向后翻一页([Ctrl]+f,PageDown),向前翻一页([Ctrl]+b,Page Up),向后翻半页([Ctrl}+d),向前翻半页([Ctrl]+u)
替换光标处的文本:替换一次(r,替换后就停止替换了),持续替换直到ESC退出(R,相当于从光标处开始替换,并不断向后移动)
块选择:进行鼠标拖动式的选择(v,在文本中拖动选择),行选择(V,光标经过的行全选),列选择([Ctrl]+v,类似鼠标在桌面拖动一个方框)
编辑模式的命令:
编辑模式只能在光标处进行文本的输入,无其他功能
命令行模式的命令:
文件的保存和退出:保存(:w),退出(:q),保存并退出(:wq,ZZ),保存为新文件(w [filename]),注意这些命令都可以加 !,表示强制进行,不过能否成功还是要看你的权限
将本文件内指定行的内容保存为一个新文件::n1,n2 w [filename]
打开一个文件将其内容添加到光标后面:r [filename]
执行外部命令: :! command(例如 :! ls -l显示本文件所在目录的文件)
多文件编辑:在用vim编辑时,同时打开若干个文件,并使用 :n :N上下切换,使用 :files 查看当前可供编辑的文件
多窗口功能:sp [filename],使用 [Ctrl]+w+j/k 来上下切换,使用[Ctrl]+w+q 来退出,先按下[Ctrl]和w,松开再按 j/k/w