Vim 的常用操作与命令
1. VI -> VIM
VIM 相对于 VI 做了哪些提升?
- VIM 支持多级撤销
- VIM 可以跨平台运行
- VIM 支持语法高亮
- VIM 支持图形界面
1.1 VI 编辑器的操作模式
- Command Mode - 命令模式
- Insert Mode - 插入模式
- Last Line Mode - 底行模式(尾行,末行)
vim + 进行打开文件定位第几行 n 可以由于切换/imooc 查找内容之间的切换
命令模式:
#vim aaa bbb ccc 一次创建 3 个文件; :n 进行切换;:prev 切换到前一个文件
#vim + abc 打开文件之后把光标定在文本的最后一行
#vim +3 abc 定在第三行
#vim +/imooc abc 定在第一次有 imooc 的那一行
q! 退出 abc 文件
命令模式:
vim abc 打开文件,光标位于第一行或者上次编辑退出时所在行(不同的 Linux 情况不同)
vim + abc 打开文件,光标位于最后一行
vim +1000 abc 打开文件,光标显示最后一行行首(行数小于 1000)
vim +/imooc abc 打开文件,光标位于 imooc 出现的第一行,按 e 键在多个 imooc 处跳跃
vim +/3 abc 打开文件,光标位于第 3 行
vim a b c 同时修改(不存在则创建)三个文件,进入后在底行模式中输入:n 顺序进入下一个文件,:N 回到上一个文件
常用指令:
#底行模式常用命令
:w 保存
:q 退出
:! 强制执行
:ls 列出当前编辑器中打开的所有文件
:n 切换到下一个文件
:N 切换到上一个文件
:15 光标快速定位到 15 行
/xxx 从光标位置开始向后搜索第一次出现 xxx 的行
?xxx 从光标位置开始向前搜索第一次出现 xxx 的行
#命令模式常用指令
h 光标左移
j 光标下移
k 光标上移
l 光标右移
Ctrl+f 向下翻页(front)
Ctrl+b 向上翻页(back)
ctrl+d 向下翻半页(down)
Ctrl+u 向上翻半页(up)
dd 删除光标所在行
o 在光标所在行的下方插入一行并切换到输入模式
yy 复制光标所在的行
p 在光标所在行的下方粘贴
P 在光标所在行的上方粘贴
Vim 的模式与一些常用命令
1. Vim 的模式
Vim 有三种模式:Normal 、Insert 、 Visual。
在 Normal 模式下,可以输入运行命令;(按 esc
键可以退出 Insert 模式和 Visual 模式回到 Normal 模式)
在 Insert 模式下,可以输入编辑文本(输入 i
进入 Insert 模式);
在 Visual 模式下,可以对选定的文本运行命令操作并该命令仅仅作用于选定文本(输入 v
进入 Visual 模式)。
2. 常用命令
复制文本:
先进入 Visual
模式,按上下键选中需要进行复制的文本,输入 y
对文本进行复制,然后输入 p
进行文本的粘贴。
- :wq → 存盘 + 退出 (:w 存盘, :q 退出)
- i → 进入
Insert
模式,按ESC
回到Normal
模式 - x → 删当前光标所在的一个字符
- p → 粘贴内容到剪贴板
- y → 复制内容到剪贴板
- dd → 删除当前行,并把删除的行存到剪贴板里
- hjkl (强例推荐使用其移动光标,但不必需) →你也可以使用光标键 (←↓↑→). 注: j 就像下箭头。
:help <command>
→ 显示相关命令的帮助。你也可以就输入 :help 而不跟命令。(注:退出帮助需要输入:q)
2.1 各种插入模式
a: 在光标后插入
o: 在当前行后插入一个新行并进入插入模式
O: 在当前行前插入一个新行
cw: 替换从光标所在位置后到一个单词结尾的字符
2.2 移动光标
0: 数字零,到行头
^: 到本行第一个不是 blank 字符的位置(所谓 blank 字符就是空格,tab,换行,回车等)
$: 到本行行尾
g_: 到本行最后一个不是 blank 字符的位置。
/pattern: 搜索 pattern 的字符串(陈皓注:如果搜索出多个匹配,可按 n 键到下一个)
2.3 拷贝/粘贴
#p/P 都可以,p 是表示在当前位置之后,P 表示在当前位置之前
P: 粘贴
yy: 拷贝当前行当行于 ddP
2.4 Undo/Redo
u → undo
<C-r> → redo
2.5 打开/保存/退出/改变文件
:e <path/to/file>: 打开一个文件
:w: 存盘
:saveas <path/to/file>: 另存为 <path/to/file>
:x, ZZ 或 :wq: 保存并退出 (:x 表示仅在需要时保存,ZZ 不需要输入冒号并回车)
:q!: 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。
:bn 和 :bp: 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论