vim常用命令

来源:互联网 发布:苏东坡美食家知乎 编辑:程序博客网 时间:2024/06/03 23:46


:w 保存文件

:wq 保存并退出
:q 退出
:q! 强制退出不保存修改
:e! 放弃本次会话所做的任何修改,返回到文件的初始状态
:new 新建一栏空白窗口
:split 分两栏显示
:vnew

:vsplit 垂直分为两栏


set nu #显示行号
syn on #语法高亮
cd #进入目录
vim XXX.XX #新建文件
:e XXX.XX  #编辑文件
:tabnew #打开一个新的选项卡


移动光标
h  前
j 下
k 上
l 后。
              
G             跳到文件尾
nG              跳到第n行 (同命令 :n)
^g              显示行号
0或^           跳到行首
$             跳到行尾
w             跳到下个单词首字符
e             跳到下个单词尾字符
b             跳到前一个单词首字符
-                 跳到上一行行首
+             跳到下一行行首
n|             跳到当前行第n列
L             跳到本页最后一行行首
M             跳到本页中间一行行首
H             跳到本页首行行首


光标定位
f$             跳至本行下一个 $ 处
F$              跳至本行前一个 $ 处
t$             跳至本行下一个 $ 前一个字符
T$             跳至本行前一个 $ 后一个字符


翻页
^D             下翻半页
^U             上翻半页
^F             下翻一页
^B             上翻一页


插入模式
i             在当前字符前插入
I             在行首插入
a             在当前字符后插入
A             在行末插入
o             在下插入新行
O              在上插入新行
J             把下一行并入当前行


删除(删除后可以粘贴,因此可以当剪切用)
x             删除当前字符
X             删除前一个字符
dw          删除当前字符所在单词包括词尾空格(只删除光标后的部分)
dd          删除当前行
d$          删除当前字符到本行尾 (同命令 D)
:m,n d    删除 m~n行
:nd          删除第n行


修改替换
R             从当前字符开始改写
cw          修改当前单词 (从当前字符开始修改)
s             修改当前字符
r             修改当前字符(只修改一个字符)
S             修改当前行 (同命令 cc)
C             修改从当前字符到行尾的内容
c + 任何光标定位命令,修改目标内容, 如 cfa 修改当前字符到下一个 a 间的内容


撤销Undo
u             撤销前一步操作(此命令在各种系统实现有所不同,在我使用的FreeBSD 4.11上功能同windows下撤销)
U             撤销本行所有操作


恢复重做Redo
^R              重做前次 undo 的操作 (同 :redo)


查找
:/word          向下查找word
:?word           向上查找word
n                   以当前查找方向同向查找下一个word
N                    以当前查找方向反向查找下一个word
             
%     跳转到配对的括号去
[[     跳转到代码块的开头去(但要求代码块中'{'必须单独占一行)
gD     跳转到局部变量的定义处
''     跳转到光标上次停靠的地方, 是两个', 而不是一个"
mx     设置书签,x只能是a-z的26个字母
`x     跳转到书签处("`"是1左边的键)
>     增加缩进,"x>"表示增加以下x行的缩进
<     减少缩进,"x<"表示减少以下x行的缩进



        

替换
:s/src/dst             将本行搜索到的第一个 src 替换为 dst
:%s/src/dst          将全文所有的 src 替换为 dst
:s/src/dst/g          将本行的 src 替换为 dst
:$,$… s/src/dst/g    在指定范围内替换src为dst,其中$,$… 为指定行号,例: :2,5,6 s/hi/hello/g


复制
yy             复制当前行
yw              复制单词(从当前字符开始复制)
:m,n copy x 将m~n行内容复制到 x 行之后 #copy可以简写为cp


粘贴
p             在前粘贴
P             在后粘贴
:m,n move x 将m~n行内容移动到 x 行之后 #move可以简写为mo #剪切粘贴


q 宏名 #录制宏
。。。 #宏中的操作

q #结束录制,录制完成


@宏名 #执行宏
n@宏名 #连续执行宏n次




0 0
原创粉丝点击