入门vim——知识点记录
- vim模式
- 普通模式
- dd删除整行、
- dj/dw
- 2dd
- 插入模式
- a/i
- 可视模式
- 选择模式
- 命令行模式
- :执行命令键
- /和?搜索
- !过滤命令
- ex模式
- 使用:visual命令离开ex模式前,可以一次执行多条命令
- 普通模式
- vim基本操作
- 进入Vim
- vim 文件名
- 或vim进入命令行模式后输入:e 文件路径
- 游标移动
- hjkl
- wb
- 插入模式
- 命令 说明
- i 在当前光标处进行编辑
- I 在行首插入
- A 在行末插入
- a 在光标后插入编辑
- o 在当前行后插入一个新行
- O 在当前行前插入一个新行
- cw 替换从光标所在位置后到一个单词结尾的字符
- 退出vim方式
- 命令行模式下退出
- :wq
- :q! 强制退出,不保存
- :q 退出
- :wq! 强制保存并退出
- :w <文件路径> 另存为
- :saveas 文件路径 另存为
- :x 保存并退出
- :wq 保存并退出
- 普通模式下退出
- shift + zz保存并退出
- 命令行模式下退出
- 删除文本
- 普通模式下
- x 删除游标所在的字符
- X 删除游标所在前一个字符
- Delete 同x
- dd 删除整行
- dw 删除一个单词(不适用中文)
- d$或D 删除至行尾
- d^ 删除至行首
- dG 删除到文档结尾处
- d1G 删至文档首部
- 2dd删除多行
- 普通模式下
- 进入Vim
- vim文档编辑
- 重复命令
- 普通模式下, " . "表示重复上一次命令
- 指定次数相同的命令
- 10x
- 3dd
- dw/d5w
- 游标快速跳转
- 行间跳转
- nG(n Shift+g) 游标移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入:set nu以显示行号)
- gg 游标移动到到第一行
- G(Shift+g) 到最后一行
- Ctrl + o 快速回到上一次光标所在位置
- 行内跳转(以单词为单位跳转
- w 到下一个单词的开头
- e 到当前单词的结尾
- b 到前一个单词的开头
- ge 到前一个单词的结尾
- 0或^ 到行头
- $ 到行尾
- f<字母> 向后搜索<字母>并跳转到第一个匹配的位置(非常实用)
- F<字母> 向前搜索<字母>并跳转到第一个匹配的位置
- t<字母> 向后搜索<字母>并跳转到第一个匹配位置之前的一个字母(不常用)
- T<字母> 向前搜索<字母>并跳转到第一个匹配位置之后的一个字母(不常用)
- 行间跳转
- 复制、粘贴、剪切
- 普通模式中使用y复制
- 普通模式中,yy复制游标所在的整行(3yy表示复制3行)
- 普通模式中,y^ 复制至行首,或y0。不含光标所在处字符。
- 普通模式中,y$ 复制至行尾。含光标所在处字符。
- 普通模式中,yw 复制一个单词。
- 普通模式中,y2w 复制两个单词。
- 普通模式中,yG 复制至文本末。
- 普通模式中,y1G 复制至文本开头。
- 普通模式中使用 p 粘贴
- 普通模式中,p(小写)代表粘贴至光标后(下)
- 普通模式中,P(大写)代表粘贴至光标前(上)
- 剪切及粘贴
- dd 删除命令就是剪切,你每次 dd 删除文档内容后,便可以使用 p 来粘贴,实现一个很爽快的功能——交换上下行
- 普通模式中使用y复制
- 重复命令
- vim查找替换
- 替换和撤销
- r+<待替换字母> 将游标所在字母替换为指定字母
- R 连续替换,直到按下Esc
- cc 替换整行,即删除游标所在行,并进入插入模式
- cw 替换一个单词,即删除一个单词,并进入插入模式
- C(大写) 替换游标以后至行末
- ~ 反转游标所在字母大小写
- u{n} 撤销一次或n次操作
- U(大写) 撤销当前行的所有修改
- Ctrl+r redo,即撤销undo的操作
- 快速缩进
- 使用命令控制
- 普通模式下输入15G,跳转到15行
- 普通模式下输入>> 整行将向右缩进(使用,用于格式化代码超爽)
- 普通模式下输入<< 整行向左回退
- 普通模式下输入:进入命令行模式下对shiftwidth值进行设置可以控制缩进和回退的字符数
- :set shiftwidth=10
- 调整文本位置
- :ce本行居中
- :ri靠右
- :le靠左
- 使用命令控制
- 查找
- 快速查找
- 普通模式下输入 / 然后键入需要查找的字符串 按回车后就会进行查找。 ? 与/ 功能相同,只不过 ? 是向上而 / 是向下查找。 进入查找之后,输入n 和 N 可以继续查找。 n是查找下一个内容,N查找上一个内容。
- 快速查找练习
- 普通模式下输入/icmp然后回车即可查找字符串 icmp
- 普通模式下输入n查找下一个 icmp
- 普通模式下输入?tcp向上查找字符串 tcp
- 普通模式下输入N查找上一个出现的 tcp
- 命令行模式下输入 noh 然后回车即可取消搜索
- 高级查找
- 普通模式下输入\*寻找游标所在处的单词
- 普通模式下输入\#同上,但 \# 是向前(上)找,\*则是向后(下)找
- 普通模式下输入g\*同\* ,但部分符合该单词即可
- 普通模式下输入g\#同\# ,但部分符合该单词即可
- 快速查找
- 替换和撤销
- vim 高级功能