当前位置:网站首页>vim常用命令总结
vim常用命令总结
2022-07-23 05:37:00 【九离⠂】
vim常用命令总结
文章目录
点击Esc按键,然后点击:
进入命令编辑模式
1、查找
| 命令 | 说明 |
|---|---|
| /str | 向下查找str字符或单词 |
| ?str | 向上查找str字符或单词 |
| n | 查找模式下,下一个字符 |
| N | 查找模式下,上一个字符 |
| v{str} -> * | 选中str,按“*”将查找一次str出现的位置 |
| /{str}\> | 精确查找整个单词str,而不会查找到string,"\>"匹配结束处,“\<”匹配开始处 |
2、替换
| 命令 | 说明 |
|---|---|
| s/{pattern}/{replace}/ | 替换第一个出现的匹配正则文本pattern为replace |
| s/{pattern}/{replace}/g | 替换当前行所有匹配正则文本pattern为replace |
| %s/{pattern}/{replace}/g | 全局替换所有匹配正则文本pattern为replace |
| s/{pattern}/{replace}/gc | 全局替换所有匹配正则文本为replace,需确认(confirm) |
| 2,5/{pattern}/{replace}/g | 替换2到5行匹配正则的文本为replace |
3、编辑
3.1 字符插入、删除
| 命令 | 说明 |
|---|---|
| x | 向后删除字符 |
| X | 向前删除字符 |
| s | 替换字符 |
| i | 在光标前插入 |
| I | 在行首插入 |
| a | 在光标后插入 |
| A | 在行尾插入 |
| c | 改变(change),删除并进入编辑模式 |
| C | 改变(change),删除光标后字符到行尾并进入编辑模式 |
3.2 单词
| 命令 | 说明 |
|---|---|
| diw | 删除光标所在单词,不包含空格,del inner word |
| daw | 删除光标所在单词,包含空格,del a word |
| dw | 删除光标后的字符到下一个单词的词首,包含空格,d4w—删除4个单词,d4e,d$ |
3.3 行操作-----删除、插入、编辑
| 命令 | 说明 |
|---|---|
| D | 删除光标后的字符到行尾,不可编辑 |
| C | 修改光标后的字符到队尾,可编辑 |
| S | 修改整行,可编辑 |
| dd | 删除整行 |
| yy | 复制整行 |
| o | 向下插入一行 |
| O | 向上插入一行 |
| A | 向前行首插入 |
| I | 当前行尾插入 |
| J | 两行合一行,{n}J:n行合一行 |
3.4 撤销
| 命令 | 说明 |
|---|---|
| u | 向前撤销 |
| ctrl+r | 向后恢复 |
3.5 编辑(复制,剪切,删除)
| 命令 | 说明 |
|---|---|
| p | 向下复制一行 |
| P | 在当前行复制一行 |
| d | 剪切 |
| n,md | 删除n到m行内容 |
| n,d | 删除n以后的行 |
| .,$d | 删除光标所在行后的所有行 |
3.6 状态
| 命令 | 说明 |
|---|---|
| ctrl+g | 统计当前行的信息 |
| g->ctrl + g | 统计所有内容信息 |
3.7 选择
| 命令 | 说明 |
|---|---|
| v | 从光标位置开始,光标经过位置选中 |
| V | 从光标位置所在行开始,光标经过所在的行选中 |
| ctrl+v | 从光标位置开始,构成选中矩阵 |
| ggVG | 选中全部的文本,其中gg为跳到行首,V选中整行,G末尾 |
3.8 文件
| 命令 | 说明 |
|---|---|
| edit foo.txt | 编辑另一个foo.txt文件,简写:e foo.txt |
| vim 1.txt 2.txt 3.txt | 同时编辑多个文件 |
| vim -R file.txt | 只读打开 |
| next (previous) | 切到下一个 |
| n (prev) | 切到上一个 |
| wn (wprev) | 保存后下一个 |
| args | 显示正在编辑的文件和文件列表 |
| split | 为文件打开一个新窗口 |
| split 2.txt | 为2.txt文件打开一个新窗口 |
| vsplit | 垂直分割窗口 |
| vim -o 1.txt 2.txt | 为每个文件打开一个窗口 |
| vimdiff 1.txt 2.txt | 比较文件之间的不同 |
| tabe 1.txt | 问1.txt创建标签页,gt切换 |
| q|w|wq all | 放弃|保存|保存所有并退出 |
| only | 关闭除当前窗口外的其他窗口 |
| sav|saves newfileName.txt | 另存为新文件(已保存) |
| f|file newFileName.txt | 另存为新文件(未保存) |
| ctrl + w | 切换窗口 |
4、移动
4.1 单词
| 命令 | 说明 |
|---|---|
| w | 下一个单词第一个字符 |
| W | 下一个长单词第一个字符 |
| e | 下一个单词最后字符 |
| E | 下一个长单词最后字符 |
| b | 前一个单词第一个字符 |
| B | 前一个长单词第一个字符 |
| g[e|E] | 前一个(长)单词最后字符 |
4.2 行
| 命令 | 说明 |
|---|---|
| (数字0|btn[home]) | 行首:包含空格 |
| ^ | 行首:非空字符 |
| {n}$|btn[end] | n行行尾:非空字符 |
| gg | 第一行 |
| G | 最后一行 |
| {n}G | 到第n行行首 |
4.3 句
| 命令 | 说明 |
|---|---|
| ( | 到句首 |
| ) | 到句尾 |
4.4 段落
| 命令 | 说明 |
|---|---|
| { | 到段首 |
| } | 到段尾 |
4.5 屏幕
| 命令 | 说明 |
|---|---|
| ctrl + y | 向上滚屏 |
| ctrl + e | 向下滚屏 |
| ctrl + u | 向上滚半屏 |
| ctrl + d | 向下滚半屏 |
| ctrl + b | 向上滚半屏 |
| ctrl + f | 向下滚半屏 |
4.6 跳转
| 命令 | 说明 |
|---|---|
| [f|F]{x} | 跳到【下】|【上】一个x字符的位置,分号(;)向下查看,逗号(,)反向 |
| ctrl + ] | 跳到上一个应用的地方 |
| ctrl + o | 跳到上一个光标位置 ctrl + I 调回来 |
| % | 匹配关闭所在括号的另一个对应括号 |
| {n}% | 跳到文件n%的地方 |
| [H|M|L] | 跳到文件【第一行】|【中间行】|【结尾行】的行首 |
4.7 标记
| 命令 | 说明 |
|---|---|
| m[a-z] | (同一个文件用小写)为光标当前位置做一个[a-z]的标记(mark a),调回a标记,使用a。 清除所有标记:delm! |
| m[A-Z] | (不同文件用大写)为光标当前位置做一个[A-Z]的标记(mark A),调到A标记,使用A。 清除所有标记:delm! |
| marks A | 查看A标记对应的内容 |
| ‘’ | 前后两个mark之间跳转 |
4.8 其他
| 命令 | 说明 |
|---|---|
| h|j|k|i | 左,下,上,右 |
| {n}[h|j|k|i] | 向【左|下|上|右】移动n |
5、折行
| 命令 | 说明 |
|---|---|
| zfap | 折一段文本 |
| zf | 创建折行 |
| zo | 打开折行 |
| zc | 关闭折叠 |
6、保存、退出
| 命令 | 说明 |
|---|---|
| w | 保存 |
| q | 退出 |
| ZZ|WQ|x | 保存退出 |
| ZQ|q! | 不保存退出 |
| w{filename} | 另存为文件 |
7、寄存器
| 命令 | 说明 |
|---|---|
| reg | 查看寄存器 |
| ""p | 使用匿名寄存器粘贴 |
| "ayy | 复制当前行到寄存器 a 中 |
| "ap | 粘贴a寄存器中的内容 |
| "+p | 粘贴剪切板中的内容 |
| ":p | 粘贴上一个vim命令,带冒号 -:的命令 |
| "/p | 粘贴上一个在vim中搜索的关键词 |
| "_[d|y] | 黑洞复制,黑洞剪切 |
8、设置
| 命令 | 说明 |
|---|---|
| set h|search | 开启高亮搜索 set noh|search关闭 |
| set autoindent | 开启自动缩进 |
| syntax | enable |
| set nu! | 显示行号 |
| set warp | 自动换行 |
边栏推荐
- C1 -- vivado configuration vs code text editor environment 2022-07-21
- Qt样式的语法定义获得途径,可查资料,可自动生成
- Redis source code and design analysis -- 14. Database implementation
- 排序
- C语言n番战--共用体和枚举(八)
- The 12th Blue Bridge Cup embedded design and development project
- Xssgame games (XSS learning) level1-15
- Jump statement and debugger
- Database process stuck solution
- Single sign on - how to unify the expiration time of session between authentication server and client
猜你喜欢

Huck hurco industrial computer maintenance winmax CNC machine tool controller maintenance

Redis source code and design analysis -- 5. Integer set

Redis源码与设计剖析 -- 10.列表对象

村田muRata电源维修交换机服务器电源维修及主要功能特点

Analyse du code source et de la conception de redis - - 7. Liste rapide
TS type gymnastics intermediate type gymnastics challenge closing battle

Redis source code and design analysis -- 10. List object

pyqt5使用QPainter绘制坐标轴并显示散点图

Meyer burger Siemens industrial computer maintenance and machine tool maintenance

mysql invalid conn排查
随机推荐
Detailed explanation of structure
Visual studio 2022 interesting and powerful intelligent auxiliary coding
7、纹理映射
[information system project manager] Chapter VI recheck schedule management knowledge structure
QT style syntax definition access, can check the data, can be automatically generated
N wars of C language -- common body and enumeration (VIII)
MySQL index operation
Mysql数据库基础
海德堡CP2000电路板维修印刷机主机控制器操作及保养注意事项
sort
【达人专栏】还不会用Apache Dolphinscheduler吗,大佬用时一个月写出的最全入门教学【二】
Redis源码与设计剖析 -- 9.字符串对象
疫情时期加中年危机——游荡在十字街口的三个月
“我最想要的六种编程语言!”
Meyer burger Siemens industrial computer maintenance and machine tool maintenance
动态内存管理
3dMax先蒙皮刷权重,再附加合并
6. Barycentric coordinate interpolation and graphics rendering pipeline
Li Nan, CTO of Yunqian Technology: technology and technical people, coevolution with digitalization
【ROS进阶篇】第八讲 URDF文件的语法详解