跳至主要內容

vim的简单使用

酷丁大约 4 分钟linuxvim

很多人配置Linux的时候,必然是需要用到vim的(虽然对于新手来说,显然nano更加好用)。在搜索引擎上,输入:vim怎么,首先推荐的就是:“vim怎么编辑和vim怎么退出”。

其实,掌握了一些vim的逻辑,即可达到事半功倍的效果。

vim的历史

可能有人会说,vim有什么好说的。其实,vim在1988年就发布了。在这时,计算机还没有图形化界面,而vim作为当时的编辑器,他的快捷键足以让人提升效率了。也由此可知,vim的很多逻辑对于用惯了图形化界面的我们来说,肯定需要重新上手。但vim至今仍被一部分人推崇,由此可见,vim也有其独特之处。

启动vim

vim的启动非常简单,在命令行中输入:vim即可看到其主界面。如果你需要编辑(或创建)一个文件,一般使用vim filename

vim的四种模式

  • 正常模式
  • 命令模式
  • 编辑模式
  • 可视模式

正常模式

当我们打开vim的时候,即可使用vim的正常模式。在此模式下,可以快速移动光标。也可以执行复制/粘贴/删除/搜索等命令。

一般来说,我们启动vim,默认的模式即是正常模式。在其他模式下,按一下(或者两下)esc键,即可退回到正常模式。

插入模式

插入模式,顾名思义,这个模式是用于编辑内容的。进入后,即可通过键盘编辑内容。

命令模式

在正常模式下,按下:或者/,会进入命令模式。在此模式下可执行指令。

可视模式

在正常模式下使用v即可进入可视模式。

打开文件

上面提到,使用vim filename即可打开文件,如果需要打开多个文件,也可以直接使用vim filename1 filename2打开多个文件分屏操作(没用过,且因为这篇文章只将基础,故不会详细说明)

vim的退出

:w 保存当前文件的修改,但不退出。
:wq 保存并退出
:wq! 强制保存并退出
:w file 将修改后的文件另存为file
:q 退出文件
:q! 强制退出
:x 保存并退出,效果类似于:wq

进入插入模式

i 是在光标所在的字符之前插入需要录入的文本。
I 是在光标所在行的行首插入需要录入的文本。
a 是在光标所在的字符之后插入需要录入的文本。
A 是在光标所在行的行尾插入需要录入的文本。

vim中搜索

在正常模式中输入/即可进入搜索框,输入搜索词回车后,n即可跳转到下一个搜索结果,N即可跳转到上一个搜索结果

vim中的复制,粘贴,删除

删除

dw 删除一个单词
dnw 删除n个单词,此处n表示数字
dfa 从光标处开始删除,到下一个字符a停止
dfna 从光标处开始删除,到下n个字符a停止
dd 删除整行
dnd 删除从光标开始n行
ndd 删除从光标处开始n行
d$ 删除到行末
https://zhuanlan.zhihu.com/p/68111471open in new window

复制

yw 复制一个单词,还有 ynw
yfa 复制光标到下一个 a 的字符处,还有ynfa
yy 复制一行,还有 nyy
y$ 复制光标到本号的结尾
yH 复制屏幕显示的第一行文本到光标所在的行
yG 复制光标所在行到文本的结束

粘贴

p 在光标后粘贴
P 在光标钱粘贴

查找

  • :word 在光标之后查找一个字符串word,按n向后继续搜索,shift+n向上搜索。
  • :?word在光标之前查找一个字符串word,按n向后继续搜索。

替换

  • :1,5s/word1/word2/g将文档中1-5行的word1替换为word2,不加g则只替换每行的第一个word1。
  • %s/word1/word2/gi将文档所有的word1替换为word2,不区分大小写。

vim的配置

设置搜索高亮

临时设置时,在命令模式下输入:set hlsearch即可。如果需要永久设置,可以在~/.vimrc中添加set hlsearch即可。

学习更多

看见有人推荐使用 VimTutor 入门,看见一个简体中文翻译版open in new window ,可以试试。

参考

本文部分内容参考知乎的精通 VIM ,此文就够了open in new window 一文。