Vim编辑器

2017-06-03  本文已影响0人  ALuckyLive

vim的三种主要模式;

命令模式、插入模式、扩展模式

模式切换

1、终端输入 →  命令模式:

vim /option/... 进入命令模式,光标默认行首。

vim +n /option/...进入命令模式,光标锁定第n行、行首。

vim +/^... /option/...进入命令模式,光标锁定已选定的第一个字符为行首。

vim + /option/...进入命令模式,光标锁定段尾行的第一个字符为行首。

2、命令模式  →  插入模式:

i:进入插入模式,光标位置,进行编辑。

a:进入插入模式,光标后一位,进行编辑。

o:进入插入模式,在光标位置下,添加一个新行。

I:进入插入模式,在光标所在的行首输入。

A:进入插入模式,在光标所在的行尾输入。

O:进入插入模式,在光标上一行,行首输入。

Esc键-----退出插入模式-----进入命令模式。

3.1、命令模式  →  扩展模式:

Shfit 加:键 .....进入扩展模式   ;

Esc、Enter键------退出扩展模式;

3.2、终端输入扩展模式:

ex  /option/ :进入扩展模式

3.3、扩展模式:

:r--------------在扩展模式下将读到文件内容输入到当前文件中。

:w-------------在扩展模式下将当前文件内容写入另一个文件中。

:!------------在扩展模式下输入!(command)回车,显示命令执行结果,再回车回到命令模式                        界面。

:r!-----------在扩展模式下输入r!(command)回车,将命令内容读入到当前文件中。

4、退出vim:

:q -------------在没有进行修改操作时,进入扩展模式输入q退出。

:q! ------------在操作时进行了输写修改,不想保存时进入扩展模式输入q!强行退出。

:wq -----------保存退出。

:wq!-----------强制保存退出。

:x ---------------保存退出。

:ZZ--------------在命令模式下,保存退出。

:ZQ--------------在命令模式下,不保存退出。

5、移动光标

命令模式下移动光标;(只能在命令模式下移动光标)

h 、 j、 k、 l    :光标移动  左、下、上、右   

#h、#j、#k、#l、(#为数字)------执行#次命令(h、j、k、l)、移动#个字符。

w----------跳至下一个单词词首·。

W----------跳至下一个空格后单词词首。

b------------跳至前一个单词词首.

B------------跳至前第二个空格后词首。

H------------跳至页首

M------------跳至页中

L------------ 跳至页尾

gg-----------跳至文件首部,行首。

G------------跳至文件尾部,行首。

:#----------跳至#行。

^--------------跳至行首的第一个非空白符。

0(数字)--跳至行首。

$--------------跳至行尾。

#G------------跳至#指定行首。

1G、gg-----跳至第一行行首。

句间移动;

(-------------跳至上一句。

)-------------跳至下一句。

段落间移动;

{ -------------跳至上一段。

} -------------跳至下一段。

翻屏操作;

ctrl+B--------向首部翻屏

ctrl+F--------向尾部翻屏

ctrl+U--------向首部翻半屏

ctrl+D--------向尾部翻半屏

6、命令界面操作,修改、删除、复制;

x---------------删除当前光标字符;

xp-------------交换当前所在的字符与光标后面的字符;如:root、orot

~--------------转换大小写;

J--------------删除当前行的换行符;

r---------------替换当前光标所在位置的字符;(输入的字符替换原有的字符)

R--------------模式替换(REPLACE)

d($、0、^、w、b)-----删除

y($、0、^、w、b)------复制

c($、0、^、w、b)------修改

p------------------------------粘贴

7、扩展模式,地址定界、查找、替换

地址定界:(startpos,endpos)

# :-----------------------------第#行。

#,#:------------------------- 从左侧第#行到右侧第#行表示的行数。

#,+#:--------------------------从左侧第#行起,到加上右侧数字的行数。

.:--------------------------------当前行。

$:-------------------------------最后一行。

%:------------------------------全文,相当于1,$

/pat1/,/pat2/:-----------------从第一次被/pat1/模式匹配到的行开始,一直到第一次被/pat2/匹配到的行结果。

查找  :

/:(PATHERN)-----------从当前光标处向文件尾部查找。

?:(PATHERN)----------从当前光标处向文件首部查找。

n、N -----------------------------辅助使用

查找并替换;

s:--------------------------------在扩展模式下完成查找替换操作。

     (s/查找模式/要替换成的内容/修饰符)

修饰符:

i:---------------------------------忽略大小写

g:-----------------------------------全局替换

多文件模式;

next:-----------------------------切换到下一个文件。

provious:-----------------------切换到上一个文件。

last:------------------------------切换到最后一个文件。

first:------------------------------切换到第一个文件。

wqall:----------------------------保存所有文件。

8、多窗口模式

多文件:(vim -o a.txt b.txt......)

-o:--------------------------------水平分割

-O:-------------------------------垂直分割

在窗口间切换Ctrl+w,Arrow(上下左右箭头)

单文件;

Ctrl+w,s:---------------------水平分割

Ctrl+w,v:---------------------垂直分割

窗口属性定义;

set nu :-------------------------显示行号

set nonu:-----------------------取消显示行号

set ai:---------------------------启用自动缩进功能

set noai:----------------------- 取消自动缩进功能

set ic:---------------------------忽略字符的大小写

set noic:------------------------不忽略字符的大小写

set sm:--------------------------括号匹配

set nosm:--------------------------取消括号匹配

上一篇 下一篇

猜你喜欢

热点阅读