您的位置:首页 > 其它

vim 编辑器详解

2014-02-23 13:03 183 查看
# vim [options] [/path/to/somefile]

默认模式:命令模式,编辑模式
输入模式:
末行模式:

模式转换:
编辑模式 --> 输入模式:
i: insert, 实现在当前光标所在处字符前面转换为输入模式;
a: append, 实现在当前光标所在处字符后面转换为输入模式;
o: 实现在当前光标所在行的下方新建一个空白行并转换为输入模式;
I: 在当前光标所在行的行首转为输入模式;
A: 在当前光标所在行的行尾转为输入模式;
O: 在当前光标所在行的上方新建一行,并转为输入模式;

输入模式 --> 编辑模式:
按下Esc键;

编辑模式 --> 末行模式:
键入:

末行模式 --> 编辑模式:
Esc, Esc

光标跳转:
字符间跳转:
h: 左
l: 右
j: 下
k: 上

#h: 向左侧跳#个字符;

单词间跳转:
w: 后一个单词的词首
e: 跳至当前或下一个单词启尾;
b: 跳至当前或前一个单词启首;

句子间跳转:
): 下一句;
(: 前一句;

段落间跳转:
}: 下一段;
{: 前一段;

行间跳转:
1G, gg:
G:
#G:

行内跳转:
^: 行首的第一个非空白字符
$: 绝对行尾
0: 绝对行首

关闭文件:
在末行模式下:
:w 保存
:q 退出
:! 强制
:wq
: q!
: x
在编辑模式下:
ZZ:保存退出;

qall

打开文件:
vim [options] /path/to/file

vim +# /path/to/file

打开多个文件:
next 下一个;
last 最后一个;
first 第一个;
prev 前一个

-O: 垂直分割窗口
-o:水平分割窗口

编辑命令:
x: 删除单个字符
#x:

d: 删除命令
dw:
db:
de:
d^
d$

dd: 删除光标所在行;
#dd: 删除光标所在行及向下#行;

在末行模式下使用d命令
末行模式地址定界:
起始地址,结束地址
$: 最后一行;
.: 当前光标所在行;
%: 全文

1,7d
%: 全文
1,$:
1,+6
1,$-2
.,+3

编辑操作可撤消:
u: vim默认会最近50次的操作,u命令可逐一撤消此前的编辑操作;

撤消此前的撤消:Ctrl+r:

粘贴操作:p
paste, put
p

删除的是整行:
p: 在当前光标所在行的下方粘贴;
P:在当前光标所在行的上方粘贴

删除的不是整行:
p: 在当前光标所在处字符的后方粘贴;
P:在当前光标所在处字符的前方粘贴;

复制:y, yank
yy
#yy 复制#行
y$ 从当前行到最后一行复制
y^ 从当前行到第一行复制

复制的是整行:
p: 在当前光标所在行的下方粘贴;
P:在当前光标所在行的上方粘贴

复制的不是整行:
p: 在当前光标所在处字符的后方粘贴;
P:在当前光标所在处字符的前方粘贴;

翻屏:
Ctrl+f: 向文件尾部翻一屏;
Ctrl+b: 向文件首部翻一屏;

Ctrl+d: 向文件尾部翻半屏;
Ctrl+u:向文件首部翻半屏;

文本搜索:
/keyword: 从当前光标所在处向文件尾部查找
?keyword:从当前光标所在处向文件首部查找
n: 下一个,跟查找命令相同的方向
N:前一个,跟查找命令相反的方向

模式
/\<d[[:alpha:]]\{2\}n\>
基本表达式:
.
[]
[^]
*
\?
\{m,n\}
\{m\}
^
$
\<
\>
\(\), \1,\2

扩展的正则表达式元字符:
.
[]
[^]
*
?
+
{m,n}
{m}
^
$
\<
\>
a|b|c
()

编辑命令
c:编辑,转换至输入模式
cc
#cc
c

vim可视化模式
visual模式
v: 选中光标划过的字符
V:选中光标划过的行,整行选取

Esc, Esc:回到编辑模式

同一文档窗口分割:
Ctrl+w,s: 水平分割
Ctrl+w,v: 垂直分割

Ctrl+w, 箭头

窗口属性定义:
显示行号:
set number, set nu
set nonumber, set nonu

自动缩进
set autoindent, set ai
set noai

不区分字符大小写
set ignorecase, set ic
set noic

获取帮助:
set

显示匹配的括号:
set showmatch, set sm
set nosm

语法着色:
syntax on
syntax off

搜索高亮显示
set hlsearch
set nohlserach

vim的配置文件:
全局:/etc/vimrc
个人:~/.vimrc

查找替换:
:地址定界s/查找模式/替换成的内容/gi
:地址定界s@查找模式@替换成的内容@gi
global
ignorecase
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  命令模式 vim 编辑器