vim 常用命令
来源:互联网 发布:致幻蘑菇 知乎 编辑:程序博客网 时间:2024/05/17 12:55
vim常用模式为普通模式、插入模式和命令行模式
vim启动进入普通模式,处于插入模式或命令行模式时只需要按Esc
或者Ctrl+[
即可进入普通模式。普通模式中按i
(插入)或a
(附加)键都可以进入插入模式,普通模式中按:
进入命令行模式
普通模式使用下面的键将进入插入模式,并可以从相应的位置开始输入
i
在当前光标处进行编辑I
在行首插入A
在行末插入a
在光标后插入编辑从普通模式输入:
进入命令行模式,输入w,或x
回车,保存文档:q!
强制退出,不保存:q
退出:wq!
强制保存并退出:w <文件路径>
另存为:saveas 文件路径
另存为:x
保存并退出:wq
保存并退出普通模式下输入Shift+zz
即可保存退出vim进入普通模式,使用下列命令可以进行文本快速删除:
x
删除游标所在的字符X
删除游标所在前一个字符Delete
同x
dd
删除整行2dd
表示一次删除2行
在普通模式下.
(小数点)表示重复上一次的命令操作,普通模式下输入x
,删除第一个字符,输入.
(小数点)会再次删除一个字符,除此之外也可以重复dd
的删除操作
- 输入
10x
,删除10个连续字符 - 输入
3dd
,将会删除3行文本
游标的快速跳转
行间跳转nG
(n Shift+g)游标移动到第 n 行(如果默认没有显示行号,请先进入命令模式,输入:set nu
以显示行号)gg
游标移动到到第一行G
(Shift+g)到最后一行gg
游标移动到到第一行G
(Shift+g)到最后一行行内跳转
w
到下一个单词的开头
b
到前一个单词的开头复制及粘贴文本
普通模式中使用y
复制- 普通模式中,
yy
复制游标所在的整行(3yy
表示复制3行)
- 普通模式中,
yw
复制一个单词。 - 普通模式中,
y2w
复制两个单词。 - 普通模式中,
yG
复制至文本末。
p
粘贴- 普通模式中,
p
(小写)代表粘贴至光标后(下) - 普通模式中,
P
(大写)代表粘贴至光标前(上) ~
将游标所在字母变成大写或小写
剪切及粘贴
其实前面讲得dd
删除命令就是剪切,你每次dd
删除文档内容后,便可以使用p
来粘贴,也这一点可以让我们实现一个很爽快的功能——交换上下行:替换和撤销(Undo)命令,替换和Undo命令都是针对普通模式下的操作
r
+<待替换字母>将游标所在字母替换为指定字母R
连续替换,直到按下Esc
cc
替换整行,即删除游标所在行,并进入插入模式cw
替换一个单词,即删除一个单词,并进入插入u
{n}撤销一次或n次操作U
(大写)撤销当前行的所有修改Ctrl+r
redo,即撤销undo的操作使用命令进行快速调整缩进操作
- 普通模式下输入
>>
整行将向右缩进(使用,用于格式化代码超爽) - 普通模式下输入
<<
整行向左回退 - 普通模式下输入
:
进入命令行模式下对shiftwidth
值进行设置可以控制缩进和回退的字符数
:
进入命令行模式下对shiftwidth
值进行设置可以控制缩进和回退的字符数 获取目前的设定值:set shiftwidth=10
快速查找
普通模式下输入
/
然后键入需要查找的字符串 按回车后就会进行查找。 ?
与/
功能相同,只不过?
是向上而/
是向下查找。 进入查找之后,输入n
和N
可以继续查找 n
表示继续查找,N
反向查找高级查找
- 普通模式下输入
\*
寻找游标所在处的单词 - 普通模式下输入
\#
同上,但\*
是向前(上)找,#则是向后(下)找 - 普通模式下输入
g\*
同\*
,但部分符合该单词即可 - 普通模式下输入
g\#
同\#
,但部分符合该单词即可
使用vim编辑多个文件
- 命令行模式下输入
:n
编辑2.txt文件,可以加!
即:n!
强制切换,之前一个文件的输入没有保存,仅仅切换到另一个文件 - 命令行模式下输入
:N
编辑1.txt文件,可以加!
即:N!
强制切换,之前文件内的输入没有保存,仅仅是切换到另一个文件
进入vim后打开新文件
- 命令行模式下输入
:e 3.txt
打开新文件3.txt - 命令行模式下输入
:e#
回到前一个文件 - 命令行模式下输入
:ls
可以列出以前编辑过的文档 - 命令行模式下输入
:b 2.txt
(或者编号)可以直接进入文件2.txt编辑 - 命令行模式下输入
:bd 2.txt
(或者编号)可以删除以前编辑过的列表中的文件项目 - 命令行模式下输入
:e! 4.txt
,新打开文件4.txt,放弃正在编辑的文件 - 命令行模式下输入
:f
显示正在编辑的文件名 - 命令行模式下输入
:f new.txt
,改变正在编辑的文件名字为new.txt
恢复文件
vim -r
进入文档后,输入:ewcover 1.txt
来恢复 1 0
- VIM常用命令
- vim常用命令
- vim常用命令
- vim常用命令
- Vim常用命令
- vim常用命令
- vim常用命令
- vim常用命令
- VIM 常用命令
- VIM常用命令
- vim 常用命令
- vim常用命令
- vim 常用命令
- #vim常用命令
- VIM 常用命令
- vim常用命令
- VIM 常用命令
- vim常用命令
- 最小二乘法多项式曲线拟合原理与实现
- Java开发中利用枚举类来列举各个同一类型不同的值的情况
- Java中Synchronized的用法
- Boundless SDK应用发布
- 《redis入门指南》读书笔记
- vim 常用命令
- MVC 在Action中,过滤器中,或视图中,获取当前请求的 控制器/视图/区域的名字及跳转
- golang的参数验证
- [C++]高效使用c++11--理解auto类型推导
- Codeforces700BConnecting Universities(算贡献)
- 2016.7.24 (c++编程思想)
- Excel动态合并行、合并列
- [Leetcode]74. Search a 2D Matrix
- mongodb 使用python作客户端