当前位置:网站首页>vim的基本使用-命令模式
vim的基本使用-命令模式
2022-07-31 23:23:00 【华为云】
vim命令模式命令集
- 按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
- 按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
- 按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
- 从插入模式切换为命令模式
- 按
esc键
- 按
- 移动光标
- vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、
「l」,分别控制光标左、下、上、右移一格- 记忆方式:
- h键在做左侧,l在左右侧 表示左右
- j:jump 往下跳
- k:king 高高在上
- 按「G」:移动到文章的最后
- 按「shift+ $ 」:移动到光标所在行的“行尾”
- 按「shift+^」:移动到光标所在行的“行首”
- 按照单词为单位进行前后光标移动
- 按「w」:光标跳到下个单词的开头 (左移,往前移动)
- 按「e」:光标跳到下个单词的字尾
- 按「b」:光标回到上个字词的开头 (右移,往后移动)
- 按「#l」:光标移到该行的第#个位置,如:5l,56l
- 按[gg]:进入到文本开始 (跳到起始行)
- 按[shift+g]:进入文本末端 (跳到结束行)
- n+shift+g :跳到指定行
- 按「ctrl」+「b」:屏幕往“后”移动一页
- 按「ctrl」+「f」:屏幕往“前”移动一页
- 按「ctrl」+「u」:屏幕往“后”移动半页
- 按「ctrl」+「d」:屏幕往“前”移动半页
- vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、
- 删除文字
- 「x」:小写的x, 每按一次,删除光标所在位置的一个字符 (小写的x:从左向右删除)
- 支持nx 删除光标所在位置,及其往后的n个字符
- 「#x」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
- 「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符 (大写的x:从右向左删除)
- 支持nX 删除光标所在位置,及其往前的n个字符
- 「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符
- 「dd」:删除光标所在行
- 支持ndd 一次删除n行,包括当前行
- 「#dd」:从光标所在行开始删除#行
- 「x」:小写的x, 每按一次,删除光标所在位置的一个字符 (小写的x:从左向右删除)
- 复制
「yw」:将光标所在之处到字尾的字符复制到缓冲区中。
「#yw」:复制#个字到缓冲区
「yy」:复制光标所在行到缓冲区。
「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。
- nyy 表示拷贝从光标所在的该行“往下数”n行文字,包括当前行
「p」:将缓冲区内的字符贴到光标所在位置。
np:一次重复粘贴n行
注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。
先yy,然后直接np:在光标位置往后复制n行
dd之后再p :剪切
- 替换
- 「r」:替换光标所在处的字符
- 支持nr 往后替换n个字符
- 「R」:替换光标所到之处的字符,直到按下「ESC」键为止
- shift + r 替换模式,直接进行多个内容的替换
- 「r」:替换光标所在处的字符
- 撤销上一次操作
- 「u」:撤销误操作,如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次恢复
- 「ctrl + r」: 撤销的恢复
- 更改
- 「cw」:更改光标所在处的字到字尾处
- 「c#w」:例如,「c3w」表示更改3个字
- shift + ~ :快速大小写切换
- 跳至指定的行
- 「ctrl」+「g」列出光标所在行的行号
- 「#G」:例如,「15G」,表示移动光标至文章的第15行行首
边栏推荐
- VOT2021 game introduction
- SQL injection Less47 (error injection) and Less49 (time blind injection)
- LevelSequence source code analysis
- 浏览器下载快捷方式到桌面(PWA)
- ICML2022 | 深入研究置换敏感的图神经网络
- [Reading Notes -> Data Analysis] 02 Data Analysis Preparation
- UOS - WindTerm use
- The difference between adding or not adding the ref keyword when a variable of reference type is used as a parameter in a method call in C#
- SQL注入 Less47(报错注入) 和Less49(时间盲注)
- 景区手绘地图的绘制流程
猜你喜欢
随机推荐
hboot与recovery、boot.img、system.img
I don't know what to do with sync issues
Components of TypeScript
@JsonFormat(pattern=“yyyy-MM-dd“)时间差问题
The difference between adding or not adding the ref keyword when a variable of reference type is used as a parameter in a method call in C#
Fixed-length usage of nanopb string type based on RT1052 Aworks (27)
【ACM】2022.7.31训练赛
Bionic caterpillar robot source code
Golang must know the Go Mod command
消息队列消息存储设计(架构实战营 模块八作业)
【Acwing】The 62nd Weekly Game Solution
[QNX Hypervisor 2.2 User Manual]9.14 set
SQL injection Less38 (stack injection)
输入输出优化
网络安全--通过握手包破解WiFi(详细教程)
网易云信圈组上线实时互动频道,「破冰」弱关系社交
A high-quality WordPress download site template theme developed abroad
数据分析(一)——matplotlib
lua入门案例实战123DIY
EntityFramework保存到SQLServer 小数精度丢失








