您的位置:首页 > 其它

vim常用命令

2013-01-15 18:27 197 查看
————————————————————————————

1.撤销与恢复



u 撤销上一步的操作

Ctrl+r
恢复上一步被撤销的操作


————————————————————————————

2.复制、剪切和粘贴

1、v+移动光标 可以选中文本。

2、y可以复制已经选中的文本,d是剪切

3、p可以粘贴

用v选中文本之后可以按y进行复制,如果按d就表示剪切,之后按p进行粘贴。

复制一行则:yy

复制当前光标所在的位置到行尾:y$

复制当前光标所在的位置到行首:y^

复制三行则:3yy,即从当前光标+下两行。

剪切一行:dd

剪切当前行光标所在的位置到行尾:d$ 或者 D

剪切当前行光标所在的位置到行首:d^ 或者 d0

前切三行:3dd,即从当前行+下两行被剪切了。

复制剪切指定行,都可以用命令完成:

n,m co k 把n,m之间的内容拷贝到k行的下面。

a,b m k 把a,b之间的内容剪切(移动)到k行下面。
————————————————————————————

3.退出

:q! 编辑了一阵儿,觉得还是维持原样,退出吧。

:e! 编辑了一阵儿,觉得所做改动不好,重来吧。

:wq 保存并退出

:w 保存不退出

————————————————————————————

4.鼠标设置

:set mouse -= a 选中复制模式,右击粘贴,可在不同窗口之间复制

[b]:set mouse = a
恢复成默认模式,鼠标定位
[/b]

————————————————————————————

5.搜索,下一个,上一个

可视模式中

/pattern:
从光标开始处向文件尾搜索pattern

?pattern: 从光标开始处向文件首搜索pattern

n: 在同一方向重复上一次搜索命令

N: 在反方向上重复上一次搜索命令

:s/p1/p2/g: 将当前行中所有p1均用p2替代

:n1,n2s/p1/p2/g: 将第n1至n2行中所有p1均用p2替代

:g/p1/s//p2/g: 将文件中所有p1均用p2替换
————————————————————————————

6. vim光标移动

绝对行首是0,第一个非空字符是^,行尾是$

行号+G
跳转到指定行

k

h l 左

j


w

向前移动一个单词,将符号或标点当作单词处理
W

向前移动一个单词,不把符号或标点当作单词处理
b

向后移动一个单词,把符号或标点当作单词处理
B

向后移动一个单词,不把符号或标点当作单词处理

(
光标移至句首
)
光标移至句尾
{
光标移至段落开头
}
光标移至段落结尾
H
光标移至屏幕顶行
M
光标移至屏幕中间行
L

光标移至屏幕最后行

0
到行首
$
到行尾
gg
到页首
G
到页末
行号+G
跳转到指定行
n+
光标下移n行
n-
光标上移n行
Ctrl+g 查询当前行信息和当前文件信息

fx
向右跳到本行字符x处(x可以是任何字符)
Fx
向左跳到本行字符x处(x可以是任何字符)

tx
和fx相同,区别是跳到字符x前
Tx
和Fx相同,区别是跳到字符x后

C-b
向上滚动一屏
C-f
向下滚动一屏
C-u
向上滚动半屏
C-d
向下滚动半屏
C-y
向上滚动一行
C-e
向下滚动一行

nz
将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。

7.
切分窗口[/b]

:split
横向切分

:vsplit
纵向切分

:ctrl w ctrl w
切换窗口

:close 或者 quit 或者 only
关闭窗口

:split abc.cpp 用另一个文件切分到另一窗口
vsplit一样

:qall wall wqall qall!
为对所有窗口执行命令

vim -o
one.txt two.txt three.txt 为每个文件打开一个窗口
比较两个文件的区别:

vimdiff main.c~ main.c

:edit main.c
:vertical diffsplit
main.c~

:edit main.c
:vertical diffpatch main.c
diff
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: