vim操作
v
ctrl+v
shift+v
区别
v:
光标经过的行都被选中(开始光标所在行的前面没有选中)
ctrl+v:
只选中了光标经过的列
插入
- 当前光标前插入
i
- 当前光标后插入
a
- 当前光标所在行的行尾插入
A
- 当前光标所在行的行首插入
I
- 光标的下一行插入
o
- 光标的上一行插入
O
复制
1. 单行复制
esc正常模式
—- >yy
—->在想要复制地方的上一行按p(正常模式esc)
2. 多行复制
1. 可视模式 (Visual-mode) ctrl+v
—>移动光标选择要复制的字段—-> y
—-> 在想要复制地方的上一行按p
2. 正常模式(esc) 光标移动到要复制多行的第一行上
—->nyy(n是要复制的行数)
—> p
3. 命令行模式 :23, 34 copy 54
—>将第23行到34行复制到54行
注释
视图模式下 v 或许 crtl+v
—>移动光标选择要注释的字段—-> shift+i
—–> #
—–> esc
取消注释
v 或许 ctrl+v
—>移动光标选择要取消注释的字段—-> j 或者k
—-> d
缩进/缩出
按v进入visual状态
—–> 移动光标选择多行—-> 用>
或<``缩进``或缩出
vim不正常退出
恢复文件,要使用以下命令: $ vim -r test.txt
按照提示回车即可。然后保存文件,并删除.swp隐藏文件(rm .test.txt.swp文件)
但是不是任何时候都可以
光标移动
不同行间的移动
- 到文件第一行
esc
–>gg
- 到文件的最后一行
esc
—>shift+g
- 跳转到特定的行
esc
—>n(想要跳转的行号)
—>shelf+g
- 光标向下移动指定行数
esc
—>n(想要移动的行数)
—>+
22 --> +
:光标向下移动22行 - 光标向上移动指定行数
esc
—>n(想要移动的行数)
—>-
-
H
:光标移至屏幕顶行M
:光标移至屏幕中间行L
:光标移至屏幕最后行 - 查看当前的位置
esc
—–>ctrl+g
一行之间光标的移动
移动行的首尾
首:0
、home
尾:$
、end
按单词移动
- 移动到下一个单词开始
esc
—>w
- 移动到上一个单词开始
esc
—->b
- 移动下一个单词结尾
esc
—>e
- 移动到上一个单词的结尾
esc
—>g
—>e
- 跳转到下一个字符串开始
esc
—>shift+w
(只在空格处停) - 移动到上个字串的开始
esc
—>shift+b
- 移动到下个字串的结尾
esc
—>shift+e
- 移动到上个字串的结尾
esc
—>g
—->shift+e
屏幕的滚动
翻页
PgUp
PgDn
相对于光标滚动屏幕
- 光标所在的行移动到窗口的顶端
esc
—>z
—>t
- 光标所在的行移动到窗口的中间
esc
—>z
—>z
- 光标所在的行移动到窗口的底部
esc
—>z
—>b
查找历史记录
q/
or q?
多行操作
- 删除列
ctrl+v
—>移动光标选择想要删除的某一列—->d
- 插入列
1.光标定位到要操作的地方。
2.CTRL+v 进入“可视 块”模式,选取这一列操作多少行。
3.SHIFT+i(I) 输入要插入的内容。
4.ESC 按两次,会在每行的选定的区域出现插入的内容。
vim间切换文件
-
:e file_path
打开另一个文件 -
:bn
切换到某一个文件 -
:ls
查看文件编码 -
ctrl+6
两文件间切换 -
vsplit
打开多个窗口,并排 -
Ctrl+ww
——依次向后切换到下一个窗格中
vim 查看当前文件的路径
ctfl+shift+g
:f