写在前面
vim 是 vi 的升级版,号称史上最好的文本编辑器。但是,学习vim确实一个很痛苦的过程,尤其是刚开始的一个礼拜。这里整理的是vim的基本知识,主要包括:
安装配置
普通模式基本操作
编辑模式基本操作
命令模式基本操作
打开保存文件
开始之前,先把vim最重要的两张图贴出来:
- vim命令:
- vim键位图:
安装配置
vim 安装
centOS 7安装:
1 | yum install -y vim-enhanced |
macOS 安装:
1 | brew install vim |
vim简单配置
Vim编辑环境配置,涉及/etc/vimrc
和 ~/.vimrc
。前者是全局配置,而后置只针对当前用户,所以就新建一个进行修改即可。
1 | touch ~/.vimrc //新建当前用户目录下的配置文件 |
之后,按 esc
键,输入:wq
进行保存。
普通模式基本操作
命令行格式: vim [filename]
vim 有三种模式,包括普通模式、编辑模式和命令模式。首先是普通模式:
在普通模式下,可以进行的操作包括:
移动光标
- 使用h、l、k、j 代表左、右、上、下,如下图所示:
Ctrl+B
、ctrl+F
代表向前/向后翻页。
0
、shift+6
移动到本行行首;shift+4
移动到本行末尾。
gg
移动到第一行;G
移动到最后一行;nG
移动到第n行(n代表数字)
删除字符或行
x
表示向后删除一个字符;X
表示向前删除一个字符;nx
表示向后删除n的字符(n代表数字)dd
删除光标所在行;ndd
删除光标所在行之后的n行(n代表数字)
复制粘贴字符或者行
yy
复制光标所在行;nyy
从光标所载行开始,向下复制n行;小写
p
表示从光标所在行开始向后粘贴;大写P
表示向前粘贴;按
v
移动光标会选中指定文字,之后按y
复制,按p
粘贴;按
u
还原上一步操作;
查看帮助文档
vim 快捷键示意图
输入
:help
查看帮助文档输入
/
(向下) 或者?
(向上) 查找关键字;如果有多个匹配项,按n
键进行切换。
进入编辑模式
快捷键 | 解释 |
---|---|
i | 在当前字符插入 |
I | 在光标所在行的行首插入 |
a | 在光标后插入 |
A | 在光标所在行的末尾插入 |
o | 在当前行后插入新的一行 |
O | 在当前行前插入新的一行 |
vim命令模式
快捷键 | 解释 |
---|---|
/word |
在光标之后查找关键词,如果存在多个匹配项,按n向后搜索 |
?word |
在光标之前查找关键词,如果存在多个匹配项,按n向前搜索 |
:1,$s/word1/word2/g |
(难点)将文档中的word1替换为word2,不加g则只替换每行的第一个word1 |
:m,ns/word1/word2/g |
(难点)将第m行和第n行之间的word1替换为word2,不加g则只替换每行的第一个word1 |
打开/保存/退出/改变文件
快捷键 | 解释 |
---|---|
:e [path to file] |
打开一个文件 |
:w |
存盘 |
:saveas [path to file] |
另存为 <path/to/file> |
:x 、 ZZ 、:wq |
保存并退出 (:x 表示仅在需要时保存;ZZ 不需要输入冒号并回车) |
:X |
设置密码保存并退出,使用此命令后cat 该文件会显示乱码,再次打开需输入密码 |
:q! |
退出不保存 |
wq! |
强制保存退出 |
:qa! |
强行退出所有的正在编辑的文件,就算别的文件有更改。 |
:bn 、 :bp |
你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。 |
vim使用窍门
窍门一:自动跳转到文件第n行
vim +10 [filename]
,即进入会光标自动跳转到第10行bash
命令!$
自动重复上一条命令。
窍门二: 如何解决代码自动缩进造成乱码
方法一:命令模式,输入
:set noai nosi
方法二:paste模式
1 | :set paste |