一、vim命令模式。
1.移动光标。
1.1. 光标移动到行首,按键:shift + 6(大键盘) 即^
1.2. 光标移动到行尾,按键:shift + 4(大键盘) 即$
1.3. 光标移动到首行,按键:gg
1.4. 光标移动到尾行,按键:G
1.5. 向上翻屏,按键:Ctrl + b(backward) 或者 PageUp
1.6. 向下翻屏,按键:Ctrl + f(forward) 或者 PageDown
2.复制粘贴。
2.1.复制所在行,按键: yy
粘贴:在想要粘贴地方按键p
2.2. 包含当前行,以光标所在行为准,相下复制制定行数。按键:number yy
2.3. 可视化复制,按键 Ctrl + v,然后按上下左右键切换需要复制的区块,再按下yy复制,最后按p粘贴。
3.剪切/删除。
3.1.剪切光标所在行,按键:dd。(dd本质为剪切命令,但是剪切不粘贴就是删除)
3.2.剪切/删除所在行为准,向下剪切/删除制定行数。(上移补齐)按键:nubmer dd
3.3.剪切/删除所在行为准,向下剪切/删除制定行数。(不上移补齐,出现空白行)按键:D
4.撤销/恢复。
4.1撤销,按键:u (undo)
4.2恢复,按键 Ctrl + r 恢复之前的撤销
5.光标快速移动。
5.1. 快速将光标移动到制定行,按键:number G
5.2. 以当前光标所在行为准向上向下移动n行,按键number ↑/↓
5.3. 以当前光标所在行为准向左向右移动n字符,按键number ←/→
5.4. 末行模式下快速移动到制定行,按键: : number
二、vim末行模式。
进入(命令模式切换末行模式):由命令模式进入,按: (英文冒号)
退出(末行模式切换命令模式):按一次ESC或者连按两次ESC,或者删除已敲击命令行。
1.保存。按键: “w”(write)
2.另存。按键: “w 路径”
3.退出。按键: “q”(quit)
4.保存并退出。按键: “wq” (writequit)
5. 强制退出。按键: “q!”(quitforce)
6.调用外部命令。按键: “:! 命令”
7.查找/搜索。按键: “/关键词”
8.在搜索中切换上/下一个结果。按键: “N/n”(Next)
9.取消高亮。按键: “nohl”(no highlight)
10.替换。
①.s/搜索关键词/新内容 替换光标所在行的第一处符合条件的内容。
②.s/搜索关键词/新内容/g 替换光标所在行的全部符合条件的内容。
③.%s/搜索关键词/新内容 替换整个文档的每行第一处符合条件的内容。
④.%s/搜索关键词/新内容 g 替换整个文档的全部符合条件的内容。
S(String) %(整个文件) g(global)
11.显示行号。按键: “set nu”
取消显示行号。按键: “set nonu”
12.vim同时打开多个文件,末行模式切换文件。查看当前已经打开文件“:files”
释义:%a,active,活跃态,当前正在打开文件。
#,表示上一个打开文件。
切换文件方式:
①.切换制定文件,输入: “:open 文件名”
②.通过命令切换上一个/下一个文件。
输入: “:bn”,切换到下一个文件(back next)
输入: “:bp”,切换到上一个文件(back previous)
三、编辑模式
进入方式:
1.i(insert):在光标所在字符前插入
2.a(after):在光标所在字符后插入
3.o:在光标所在行的下面另起新的一行插入
4.I:在光标所在行的行首插入,若行首有空格在空格之后插入
5.A:在光标所在行的行尾插入
6.O:在光标所在行的上面一行另起新一行插入
7.S:删除光标所在行并开始插入
退出:ESC。
ps:
A.代码着色:
显示:“syntax on”
关闭显示:“syntax off”
B.vim中使用计算器:
在编辑文件时,突然需要使用计算器计算公式,调用vim的简单计算器。
1.进入编辑模式
2.按下ctrl + R,然后输入 = ,光标跑到最后一行
3.输入需要计算的内容,回车。
C.Vim配置:
1.个人配置文件。步骤:~回到当前家目录;创建.vimrc;vim打开.vimrc,配置行号,编辑模式set nu;
2.个人配置和全局配置优先级:若针对同一个配置项,个人配置存在,就以个人为准,若个人配置不存在以全局为准。
D.异常退出:
在vim编辑模式编辑文件后并没有正常的wq(writequit),而是类似于突然关闭终端或者断电了,导致再次使用vim打开此文件时会提出警告的情况。
解决方法:删除交换文件(编程中产生的临时文件),即可。
例如编辑文件:vim aaaa.txt,异常退出后再次打开前需要rm –f .aaaa.txt.swp
E.别名机制:
用户可以给现有指令命名别名,已达到相同效果。类似于C和C++里面的typedef关键字。
关键:依赖于当前用户的家目录下的别名映射文件: ~/.bashrc
而且必须重新登录方可生效。
F.退出方式:
vim退出可以使用“q”也可以使用“x”
a.“x”在文件没有修改的情况下,表示直接退出;在文件修改的情况下保存并退出。
b.若文件没有修改,但是使用wq退出,文件的修改时间会被更新;但是若文件没有被修改,使用“x”退出,不会更新文件的修改时间。
开发中防止混淆文件修改时间,就用“x”(小写)来save。
大写X为加密操作。