Vim上手
Vim的三种模式
vim三种模式相互转换
vim三种模式相互转换
-
命令模式:
在命令行模式下,输入"vim 文件名"就进入了命令模式;
在编辑模式或者末行模式下,点击“ESC”键,即可入命令模式;
命令模式所输入的命令并不在屏幕上显示。 -
编辑模式:
在命令模式下输入插入命令i、o等命令都可以进入编辑模式;
在该模式下点击"ESC"键,回到命令模式。 -
末行模式:
按 “:” 键即可进入末行模式下,会在最后一行显示一个 “:” 作为末行模式的提示符,等待用户输入命令;
在该模式下点击"ESC"键,回到命令模式。
命令模式(Command Mode)
在该模式下可以进行光标的移动、复制、粘贴、删除、撤销以及进入编辑模式
1、光标的移动
命令 | 命令的含义 |
---|---|
h或者向左方向键 | 光标向左移动一个字符 |
l或者向右方向键 | 光标向右移动一个字符 |
k或者向上方向键 | 光标向上移动一个字符 |
j或者向下方向键 | 光标向下移动一个字符 |
Ctrl+f或pageup键 | 屏幕向前移动一页 |
Ctrl+b或pagedown键 | 屏幕向后移动一页 |
数字0或者^ | 移动到本行行首 |
$ | 移动到本行行尾 |
gg | 移动到首行 |
G | 移动到尾行 |
nG(n是任意数字) | 移动到第n行 |
2、复制、粘贴、删除、撤销
命令 | 命令的含义 |
---|---|
复制 | —— |
yy | 复制光标所在行 |
nyy | 从光标所在行算起向下复制n行 |
yG | 从光标行复制到末尾 |
ygg | 从光标行复制到首行 |
粘贴 | —— |
p | 从光标所在行向下粘贴已经复制或者粘贴的内容 |
P | 从光标所在行向上粘贴已经复制或者粘贴的内容 |
删除 | —— |
x,X | x向后删除一个字符,X向前删除一个字符 |
nx | 向后删除n个字符 |
dd | 删除/剪切光标所在的那一行 |
ndd(n为数字) | 删除/剪切光标所在行起向下一共n行 |
dG | 删除光标行到文本末尾 |
dgg | 删除光标行到文本首行 |
:%d | 删除文件中所有数据 |
撤销 | —— |
u | 撤销一次 |
U | 撤销所有 |
选择范围 | —— |
v | 按v后移动光标会选中指定字符,然后可以复制、粘贴等 |
3.进入编辑模式
命令 | 命令的含义 |
---|---|
i | 在光标的前边进入插入模式 |
I | 在光标所在行的行首进入插入模式 |
a | 在光标的后边进入插入模式 |
A | 在光标所在行的行尾进入插入模式 |
o | 在光标所在行的下方插入空行并进入插入模式 |
O | 在光标所在行的上方插入空行并进入插入模式 |
s | 删除光标指定的字符并进入插入模式 |
S | 将光标所在行清除并进入插入模式 |
编辑模式(Input Mode)
在该模式下可以进行文本的编辑
末行模式(Last line Mode)
在该模式下可以进行文件的保存、查找、替换、行号的显示
1、文件的保存
命令 | 命令的含义 |
---|---|
:w | 保存文本 |
:q | 退出vim |
:w! | 强制保存,在root用户下即使文本只读也可以完成保存 |
:q! | 强制退出,所有改动不生效 |
:wq | 保存并退出 |
2、查找、替换
命令 | 命令的含义 |
---|---|
/word | 向光标之后寻找一个字符串为word(n向后继续搜索 N查找上一个) |
?word | 向光标之前寻找一个字符串为word(n向后继续搜索 N查找上一个) |
:%s/word1/word2/ | 把所有的word1替换成word2 |
:1,3/word1/word2/ | 把一行到三行的word1替换成word2 |
:2s/word1/word2/ | 把第二行的nmon替换成hello |
:%s/.$/beijing/ | 把以.为结尾.的换成北京(.前最好加上转义符\) |
:%s/^my/your | 把my开头的替换成your |
3、行号的显示
命令 | 命令的含义 |
---|---|
:set nu | 显示行号 |
:set nonu | 不显示行号 |
vim操作演示
进入vim编辑器
- 选择要存放文件的路径
- 进入vim编辑器
cd /home/michaelxwang/
dir
vim hello.py
vim-1-进入vim.gif
进入编辑模式输入代码
- 点击"i"进入编辑模式
print("hello world 1")
print("hello world 2")
print("hello world 3")
vim-2-进入编辑模式.gif
进入命令模式移动光标、复制、粘贴、撤销
- 点击“ESC”进入编辑模式
- 点击“h、k、j、l”左上下右移动光标
- 点击“dd”删除当前行
- 点击“u”撤销上一步操作
vim-3-进入命令模式.gif
进入末行模式设置行号、保存退出
#输入“:”进入末行模式
:
#设置行号
set nu
#保存编辑
:wq
vim-4-进入末行模式.gif