您的位置:首页 > 其它

vim命令学习总结

2017-07-27 11:02 316 查看
部分参考http://www.cnblogs.com/yangjig/p/6014198.html

h 光标左移动
j 光标下移一行
k 光标上移一行
l 光标右移动

$ 光标到行末
^ 光标到行首第一个非空字母
0 光标到行首

dw 删除光标后第一个单词
db 删除光标前第一个单词
dd 删除当前一行

y 复制选中的内容

% 查找“(”,“)”,“{”,“}”的配对符

:reg 查看当前复制的内容(寄存器内容)
"ay 复制内容到a字母寄存器
"ap 粘贴将a字母寄存器中的内容

* 向前查询光标后的一个单词
# 身后查询光标后的一个单词

o(字母) 在下一行首插入
O(字母) 在当前行前一行插入,并把当前行下移动一行
a 将可在光标之后插入文本
A 当前行最后插入

- 光标到上一行开头
+ 光标到下一行开头

G 最后一行
nG 第n行
. 回到上一次地方

u 撤消
ctrl-r 重做

ctrl-ww 切换窗口

M 移至视窗的中间那行
H 移至视窗的第一行
L 移至视窗的最后一行
CTRL-U 显示文本的窗口向上滚动了半屏
CTRL-D 命令将窗口向下移动半屏
ctrl-e 向上滚动
ctrl-y 向下滚动
zz 把当前行置为屏幕正中央
zt 把当前行置于屏幕顶端
zb 则把当前行置于屏幕底端
ctrl-f 下翻页一页
ctrl-b 上翻页一页
ctrl-n 光标下一行
ctrl-p 光标上一行
( 光标前移一句

) 光标后移一句
{光标前移一段
}光标后移一段
n% 到文件n%的位置

v 从光标位置开始选中
V 从光标行开始选中
viw 选中当前所在单词

b 移动到上个字的第一个字母
w 移动到下个字的第一个字母
e 移动到下个字的最後一个字母

f{char} 移动到当前行下一个{char}出现的位置
F{char} 移动到上一个{char}出现的位置
t{char} 移动到当前行下一个{char} 出现的位置之前
T{char} 移动到当前行前一个{char}出现的位置之后
; 继续向后匹配
, 向前匹配

ctrl-G 查看当前行行数,到文档总行数的百分比

/ 向下查找
? 向上查找
n 下一个匹配
N 上一个匹配

ctrl-o 光标回到上一个位置
ctrl-i 光标回到下一个位置

:s/thee/the 只改变光标所在行的第一个匹配
:s/thee/theg 是替换全行的匹配串
:#,#s/old/new/g 其中 #,# 代表的是替换操作的若干行中首尾两行的行号。
:%s/old/new/g 则是替换整个文件中的每个匹配串。
:%s/old/new/gc 会找到整个文件中的每个匹配串,并且对每个匹配串提示是否进行替换。

:! 然后紧接着输入一个外部命令可以执行该外部命令 如:!ls

:r FILENAME 向当前文件中插入另外的文件的内容

使用标记可以快速移动。到达标记后,可以用Ctrl+o返回原来的位置。 Ctrl+o和Ctrl+i 很像浏览器上的 后退 和 前进 。

m{a-z}: 标记光标所在位置,局部标记,只用于当前文件。
m{A-Z}: 标记光标所在位置,全局标记。标记之后,退出Vim, 重新启动,标记仍然有效。
`{a-z}: 移动到标记位置。
'{a-z}: 移动到标记行的行首。
`{0-9}:回到上[2-10]次关闭vim时最后离开的位置。
``: 移动到上次编辑的位置。''也可以,不过``精确到列,而''精确到行 。如果想跳转到更老的位置,可以按C-o,跳转到更新的位置用C-i。
`": 移动到上次离开的地方。
`.: 移动到最后改动的地方。
:marks 显示所有标记。
:delmarks a b -- 删除标记a和b。
:delmarks a-c -- 删除标记a、b和c。
:delmarks a c-f -- 删除标记a、c、d、e、f。
:delmarks! -- 删除当前缓冲区的所有标记。
:help mark-motions 查看更多关于mark的知识。


. --重复上一个编辑动作
qa:开始录制宏a(键盘操作记录)
q:停止录制
@a:播放宏a

显示行数
:set nu 或者 :set number
隐藏行数
:set nonu 或者 :set nonumber
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  命令 vim