Vim常用指令汇编

真正的计算机科学家使用vi。

一、文件

(一)打开

| vim file | 打开并编辑文件 |
| e file | 加载并编辑文件 |
| open file | 加载并编辑文件 |
| r file | 加载file至当前文件光标处 |

(二)关闭

q 直接退出
q! 强制退出
w 保存
w filename 另存为filename
wq 保存并退出
wq! 保存并强制退出
n1,n2 w file 将 n1 到 n2 的内容储存成 file

(三)浏览

Vexplorer 打开文件浏览器

二、编辑

(一)插入

| o | 行下方插入 |
| O | 行上方插入 |
| a | 光标后插入 |
| A | 从光标所在行的最后一个字符处开始输入 |
| i | 光标处插入 |

J 将光标所在行与下一行的数据结合成同一行

(二)删除

| x / #x | 删除光标所在位置的一个字符或#个字符,包括自己【左侧 ------> 右侧】 |
| X / #X | 删除光标所在位置的一个字符或#个字符,包括自己【左侧 ------> 右侧】 |
| dd | 删除光标所在行 |
| #dd | 删除光标所在行开始向下#行【包括当前行】 |
| dw | 删除一个单词 |
| d^ | 删除光标至行首的所有字符 |
| D/d$ | 删除光标至行尾所有字符 |
| d0 | 数字 0 ,删除游标所在处,到该行的最前面一个字符 |
| di' | 删除单引号'内的字符,保存引号。【单引号可替换为双引号,括号等】 |

da' 删除单引号'内的字符及引号。【单引号可替换为双引号,括号等】

Vim快速选中、删除、复制引号或括号中的内容

VIM中有快速对引号或括号等标点内的内容进行选中、删除、复制操作的超级技巧,非常实用。可以极大的提高编辑效率。

以下命令可以对标点内的内容进行操作。

ci'、ci"、ci(、ci[、ci{、ci< - 分别更改这些配对标点符号中的文本内容

di'、di"、di(或dib、di[、di{或diB、di< - 分别删除这些配对标点符号中的文本内容

yi'、yi"、yi(、yi[、yi{、yi< - 分别复制这些配对标点符号中的文本内容

vi'、vi"、vi(、vi[、vi{、vi< - 分别选中这些配对标点符号中的文本内容

(三)复制

| yw | 将光标所在之处到当前字尾的字符复制到缓冲区中。 |
| #yw | 复制#个字到缓冲区 |
| y#w | 从光标处开始复制3个字到缓冲区 |
| yy | 复制光标所在行到缓冲区。 |
| #yy | 「5yy」表示拷贝从光标所在的该行"往下数"5行文字【包括光标所在行】 |
| y0 | 复制光标所在的那个字符到该行行首的所有数据 |

y$ 复制光标所在的那个字符到该行行尾的所有数据

(四)粘贴

| p | 将缓冲区内的字符贴到光标所在位置这一行的下一行。 |

#p 「5p」表示拷贝从光标所在的该行"往下数"5行文字。【包括光标所在行】

(五)撤销

u 如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次"u"可以执行多次复原。
ctrl + r 撤销的恢复,相当于对撤销的撤销
. 不要怀疑!这就是小数点!意思是重复前一个动作的意思。 如果你想要重复删除、重复贴上等等动作,按下小数点『.』就好了! (常用)

(六)替换

| r | 单次替换光标下的字符 |

R 多次替换光标下的字符,直到按下 ESC 为止;

三、光标

(一)行移

键盘上↑↓←→来进行移动移动,或h、j、k、l键。

| h | 左 |

#h 左移#个字符
j
#j 下移#行
k
#k 上移#行
l
#l 右移#个字符
#<enter> 向下移动#行

(二)屏移

|--------|---------------|
| ctrl+b | 屏幕往"后"(上)移动一页 |
| ctrl+f | 屏幕往"前"(下)移动一页 |
| ctrl+u | 屏幕往"后"(上)移动半页 |
| ctrl+d | 屏幕往"前"(下)移动半页 |

(三)跳转

| gg | 进入到文本开始 |
| G | 进入文本末端【shift + g】 |
| #gg | 光标移到第#行,如:5gg |

$ 移动到光标所在行的"行尾"【shift + 4】
^ 移动到光标所在行的"行首"【shift + 6】
w 光标跳到下个字的开头
W 光标移到下一个单词
b 光标回到上个字的开头
B 光标移到上一个单词
e 光标跳到下个字的字尾
#l 光标移到该行的第#个位置,如:5l,56l

四、查找

|-----|------------|
| /xx | 向后查找字符串xx |
| ?xx | 向前查找字符串xx |
| n | 查找下一个字符串xx |
| N | 查找上一个字符串xx |

五、替换

复制代码
:[range]s/pattern/string/[c,e,g,i]

range表示替换范围,如"1,4"、"8,$",字符%代表全文。

|----|----------|
| 标志 | 功能 |
| c | 替换前询问 |
| e | 不显示错误信息 |
| g | 替换一行所有匹配 |
| i | 忽略大小写 |

六、分屏

|-----------|-------------------|
| vnew | 新建空白垂直分屏 |
| new | 新建空白水平分屏 |
| vsplit/vs | 新建垂直分屏,分屏内容与当前屏一样 |
| split | 新建水平分屏,分屏内容与当前屏一样 |
| ctrl+ww | 分屏切换 |

七、配置

|---------------------------|----------|
| :set number | 显示行号 |
| :set cindent shiftwidth=N | 设置行缩进字符数 |
| :set autoindent | 设置自动缩进 |
| :set tabstop=N | 设置tab宽度 |
| :set ignorecase | 查找时忽略大小写 |
| :syntax on | 语法高亮 |

八、Shell命令执行

|---------------------|-----------|
| :terminal | 新建水平控制台分屏 |
| :tab terminal | 新建控制台全屏 |
| :!shell command | 执行shell命令 |

相关推荐
REST_302711 小时前
告别Excel孤岛:一款任务链路可视化工具带来的真实改变
大数据·微服务·云计算·编辑器·excel·动态规划
学逆向的16 小时前
汇编——寻址方式
开发语言·汇编·网络安全
我不是QI17 小时前
Master PDF Editor 逆向复现
汇编·安全·pdf
●VON17 小时前
鸿蒙 PC Markdown 编辑器图片粘贴:从系统剪贴板到标准相对链接
华为·编辑器·harmonyos·鸿蒙
●VON17 小时前
鸿蒙 PC Markdown 编辑器外部修改检测:从文件指纹到冲突决策
华为·编辑器·harmonyos·鸿蒙
●VON17 小时前
鸿蒙 PC Markdown 编辑器十兆级大文档保护模式
华为·编辑器·harmonyos·鸿蒙
●VON17 小时前
鸿蒙 PC Markdown 编辑器三方冲突处理:本地缓冲区、磁盘版本与共同基线
网络·华为·编辑器·harmonyos·鸿蒙
●VON18 小时前
鸿蒙 PC Markdown 编辑器搜索选项响应式布局:220 vp 侧栏中的完整中文控件
服务器·华为·编辑器·harmonyos·鸿蒙
ShirleyWang01219 小时前
Linux中Vim编辑器快速找到需要改的行
linux·编辑器·vim
Duo1J2 天前
【UE】Slate 编辑器工具开发03 - 节点编辑器 (EdGraph)
ue5·编辑器·游戏引擎·ue4