Vim编辑器

Vim编辑器

目录

Vim编辑器

一、Vim编辑器的六种模式

普通模式(Normal mode)

插入模式(Insert mode)

可视模式(Visual mode)

选择模式(Select mode)

命令行模式(Command line mode)

Ex模式(Ex mode)

二、Vim的基本命令

1.进入界面和模式切换

2.普通模式的游标移动

3.删除基本命令

4.退出Vim

5.跳转命令

6.复制粘贴

7.替换和撤销

8.快速缩进

9.查找命令

10.内容选取

三、高级功能

1.多文件编辑

2.恢复文件

3.视窗操作

4.创建加密文档

5.执行外部命令

6.查看帮助

7.功能设定


一、Vim编辑器的六种模式

普通模式(Normal mode)

在普通模式中,用的编辑器命令,比如移动光标,删除文本等等。这也是Vim启动后的默认模式。这正好和许多新用户期待的操作方式相反(大多数编辑器默认模式为插入模式)。

Vim强大的编辑能来自于其普通模式命令。普通模式命令往往需要一个操作符结尾。例如普通模式命令dd删除当前行,但是第一个"d"的后面可以跟另外的移动命令来代替第二个d,比如用移动到下一行的"j"键就可以删除当前行和下一行。另外还可以指定命令重复次数,2dd(重复dd两次),和dj的效果是一样的。用户学习了各种各样的文本间移动/跳转的命令和其他的普通模式的编辑命令,并且能够灵活组合使用的话,能够比那些没有模式的编辑器更加高效地进行文本编辑。

在普通模式中,有很多方法可以进入插入模式。比较普通的方式是按a(append/追加)键或者i(insert/插入)键。

 

插入模式(Insert mode)

在这个模式中,大多数按键都会向文本缓冲中插入文本。大多数新用户希望文本编辑器编辑过程中一直保持这个模式。

在插入模式中,可以按ESC键回到普通模式。

 

可视模式(Visual mode)

这个模式与普通模式比较相似。但是移动命令会扩大高亮的文本区域。高亮区域可以是字符、行或者是一块文本。当执行一个非移动命令时,命令会被执行到这块高亮的区域上。Vim的"文本对象"也能和移动命令一样用在这个模式中。

 

选择模式(Select mode)

这个模式和无模式编辑器的行为比较相似(Windows标准文本控件的方式)。这个模式中,可以用鼠标或者光标键高亮选择文本,不过输入任何字符的话,Vim会用这个字符替换选择的高亮文本块,并且自动进入插入模式。

 

命令行模式(Command line mode)

在命令行模式中可以输入会被解释成并执行的文本。例如执行命令(:键),搜索(/和?键)或者过滤命令(!键)。在命令执行之后,Vim返回到命令行模式之前的模式,通常是普通模式。

 

Ex模式(Ex mode)

这和命令行模式比较相似,在使用:visual命令离开Ex模式前,可以一次执行多条命令。

vim启动进入普通模式,处于插入模式或命令行模式时只需要按Esc或者Ctrl+[(这在vim课程环境中不管用)即可进入普通模式。普通模式中按i(插入)或a(附加)键都可以进入插入模式,普通模式中按:进入命令行模式。命令行模式中输入wq回车后保存并退出vim。

 

 

二、Vim的基本命令

1.进入界面和模式切换

进入vim界面,默认普通模式

$vim practice.txt

按下i键进入插入模式

按下Esc键,进入普通模式

 

2.普通模式的游标移动

按键

说明

h

l

j

k

w

移动到下一个单词

b

移动到上一个单词

 

 

3.删除基本命令

命令

说明

x

删除一个字符

10x

删除10个字符

dd

删除一行

3dd

删除3行

dw或daw

删除一个单词

d3w

删除3个单词

 

4.退出Vim

普通模式下:

命令

说明

:wq

保存并退出

:q!

强制退出不保存

:q

退出

:wq!

强制退出并保存

:w <文件路径>

另存为

:saveas 文件路径

另存为

:x

保存并退出

Shift+zz

保存并退出

 

5.跳转命令

行间跳转

命令

说明

10G(n Shift+g)     

游标移动到第 10行(如果默认没有显示行号,请先进入命令模式,输入:set nu以显示行号)

gg

游标移动到到第一行

G(Shift+g)

到最后一行

 

小技巧:你在完成依次跳转后,可以使用 Ctrl+o 快速回到上一次(跳转前)光标所在位置

 

行内跳转

命令

说明

w

到下一个单词的开头

b

到前一个单词的开头

ge

到前一个单词的结尾

e

到当前单词的结尾

0或^

到行头

$

到行尾

f<字母>

向后搜索并跳转到第一个匹配的位置

F<字母>

向前搜索并跳转到第一个匹配的位置

 

6.复制粘贴

复制命令

命令

说明

yy

复制游标所在的整行

3yy

复制3行

y^或y0

复制至行首(不含光标所在的字符)

y$

复制至行尾(含光标所在的字符)

yw

复制一个单词

y2w

复制两个单词

y1G

复制至文本开头

yG

复制至文本末尾

粘贴命令

命令

说明

p(小写)

粘贴至光标后

P(大写)

粘贴至光标前

 

7.替换和撤销

命令

说明

r+<待替换字母>

将游标所在字母替换为指定字母

R

进入替换模式

cc

替换整行,即删除游标所在行,并进入插入模式

cw

替换一个单词,即删除一个单词,并进入插入模式

C(大写)

替换游标以后至行末

~

反转游标所在字母大小写

u{n}

撤销一次或n次操作

U(大写)

撤销当前行的所有修改

Ctrl+r

redo,即撤销undo的操作

 

8.快速缩进

查看缩进字符数

:set shiftwidth?

设置缩进为1个字符

:set shiftwidth=1

 

普通模式下

>>

整行向右缩进

<<

整行向左缩进

 

命令行模式下

:ce

本行内容居中

:ri

本行文本靠右

:le

本行文本靠左

 

9.查找命令

普通查找

命令

说明

/字符串

向下查找字符串

?字符串

向上查找字符串

n

进入查找后继续查找,查找下一个

N

进入查找后继续查找,查找上一个

命令行模式输入noh,回车,取消搜索

搜索高亮需要在配置文件 .vimrc 中设置 set hls

 

高级查找

命令

说明

\*

向后寻找游标所在处的单词

\#

向前寻找游标所在处的单词

g\*

向后寻找游标所在处的单词,部分符合该单词即可

g\#

向前寻找游标所在处的单词,部分符合该单词即可

 

10.内容选取

命令

说明

v

进入字符选择模式,再次按下v取消选择

Shift+v

进入行选择模式,再次按下Shift+v取消选取

Ctrl+v

进入区域选择模式,再次按下Ctrl+v取消选取

d

删除选取区域内容

y

复制选取区域内容

 

 

 

三、高级功能

1.多文件编辑

$vim 1.txt 2.txt

命令

说明

:e 3.txt

打开新文件3.txt

:e#

回到前一个文件

:ls

列出以前编辑过的文档

:b 2.txt

可以直接进入2.txt编辑

:bd 2.txt

可以删除以前编辑过的列表中的文件项目

:e! 4.txt

新打开文件4.txt,放弃正在编辑的文件

:f

显示正在编辑的文件名

:f new.txt

改变正在编辑的文件名字为new.txt

 

 

2.恢复文件

如果因为断电等原因造成文档没有保存,可以采用恢复方式,vim -r进入文档后,输入:ewcover 1.txt来恢复

 

3.视窗操作

命令

操作

:new 2.txt

打开一个新的vim视窗

Ctrl+w

打开一个新的vim视窗

:sp 1.txt

打开新的水平分屏视窗

:vsp 2.txt

打开新的垂直分屏视窗

Ctrl+w s

将当前窗口分割成亮两个水平的窗口

Ctrl+w v

将当前窗口分割成亮两个垂直的窗口

Ctrl+w q

用:q结束分割出来的视窗

Ctrl+w o

打开一个视窗并隐藏之前的所有视窗

Ctrl+w j

移至下面视窗

Ctrl+w k

移至上面视窗

Ctrl+w h

移至左边视窗

Ctrl+w l

移至右边视窗

Ctrl+w J

将当前视窗移至下面

Ctrl+w K

将当前视窗移至上面

Ctrl+w H

将当前视窗移至左边

Ctrl+w L

将当前视窗移至右边

Ctrl+w -

减少视窗的高度

Ctrl+w +

增加视窗的高度

 

4.创建加密文档

$vim -x file1

 

5.执行外部命令

在命令行模式中输入!可以执行外部的shell命令

 

:!ls 用于显示当前目录的内容

:!rm FILENAME用于删除名为 FILENAME 的文件

:w FILENAME可将当前 VIM 中正在编辑的文件另存为 FILENAME 文件

 

6.查看帮助

普通模式下按F1打开vim自己预设的帮助文档

命令行模式下输入:h shiftwidth 打开名为shiftwidth的帮助文件

命令行模式下输入:ver 显示版本及参数

 

7.功能设定

vim的功能设定

可以在编辑文件的时候进行功能设定,如命令行模式下输入:set nu(显示行数),设定值退出vim后不会保存。要永久保存配置需要修改vim配置文件。 vim的配置文件~/.vimrc(实验楼环境中配置文件在/etc/vim/vimrc),可以打开文件进行修改,不过务必小心不要影响vim正常使用

 

获取目前的设定

命令行模式下输入:set或者:se显示所有修改过的配置

命令行模式下输入:set all 显示所有的设定值

命令行模式下输入:set option? 显示option的设定值

命令行模式下输入:set nooption 取消当前设定值

 

 set功能的说明

命令行模式下输入:set autoindent(ai) 设置自动缩进

命令行模式下输入:set autowrite(aw) 设置自动存档,默认未打开

命令行模式下输入:set background=dark或light,设置背景风格

命令行模式下输入:set backup(bk) 设置自动备份,默认未打开

命令行模式下输入: set cindent(cin) 设置C语言风格缩进

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值