Vim 快速使用指南

2022-12-02 13:55:06 浏览数 (1)

1、vim三种常用模式的切换

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

2、 进入vim

 使用vim命令进入vim界面

vim后面加上你要打开的已存在的文件名或者不存在(则作为新建文件)的文件名。

打开Xfce终端,输入以下命令

代码语言:javascript复制
$ vim practice_1.txt

直接使用vim也可以打开vim编辑器,但是不会打开任何文件。

代码语言:javascript复制
$ vim

进入命令行模式后输入:e 文件路径 同样可以打开相应文件。

游标移动

在进入vim后,按下i键进入插入模式。在该模式下您可以输入文本信息,下面请输入如下三行信息:

代码语言:javascript复制
12345678
abcdefghijk
shiyanlou.com

Esc进入普通模式,在该模式下使用方向键或者h,j,k,l键可以移动游标。

按键

说明

h

l

右(小写L)

j

k

w

移动到下一个单词

b

移动到上一个单词

3 、进入插入模式

进入插入模式

在普通模式下使用下面的键将进入插入模式,并可以从相应的位置开始输入

命令

说明

i

在当前光标处进行编辑

I

在行首插入

A

在行末插入

a

在光标后插入编辑

o

在当前行后插入一个新行

O

在当前行前插入一个新行

cw

替换从光标所在位置后到一个单词结尾的字符

请尝试不同的从普通模式进入插入模式的方法,在最后一行shiyanlou前面加上www.注意每次要先回到普通模式才能切换成以不同的方式进入插入模式

4 保存文档

 命令行模式下保存文档

从普通模式输入:进入命令行模式,输入w回车,保存文档。输入:w 文件名可以将文档另存为其他文件名或存到其它路径下

5、 退出vim

命令行模式下退出vim

从普通模式输入:进入命令行模式,输入wq回车,保存并退出编辑

以下为其它几种退出方式:

命令

说明

:q!

强制退出,不保存

:q

退出

:wq!

强制保存并退出

:w <文件路径>

另存为

:saveas 文件路径

另存为

:x

保存并退出

:wq

保存并退出

 普通模式下退出vim

普通模式下输入Shift zz即可保存退出vim

6 删除文本

普通模式下删除vim文本信息

进入普通模式,使用下列命令可以进行文本快速删除:

命令

说明

x

删除游标所在的字符

X

删除游标所在前一个字符

Delete

同x

dd

删除整行

dw

删除一个单词(不适用中文)

d$或D

删除至行尾

d^

删除至行首

dG

删除到文档结尾处

d1G

删至文档首部

除此之外,你还可以在命令之前加上数字,表示一次删除多行,如:

2dd表示一次删除2行

7、vim的一些实用配置

vi ~/.vimrc

代码语言:javascript复制
"去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nocompatible
"显示行号
set number
"检测文件的类型
filetype on 
"记录历史的行数
set history=1000 
"背景使用黑色
set background=dark 
"语法高亮度显示
syntax on 
"下面两行在进行编写代码时,在格式对起上很有用;
"第一行,vim使用自动对起,也就是把当前行的对起格式应用到下一行;
"第二行,依据上面的对起格式,智能的选择对起方式,对于类似C语言编
"写上很有用
set autoindent
set smartindent
"第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格
set tabstop=4
set shiftwidth=4
"设置匹配模式,类似当输入一个左括号时会匹配相应的那个右括号
set showmatch
"去除vim的GUI版本中的toolbar
set guioptions=T
"当vim进行编辑时,如果命令错误,会发出一个响声,该设置去掉响声
set vb t_vb=
"在编辑过程中,在右下角显示光标位置的状态行
set ruler
"默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示
set nohls
"查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一
"个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依
"次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词
"时,别忘记回车
set incsearch
"修改一个文件后,自动进行备份,备份的文件名为原文件名加"~"后缀
if has("vms") //注意双引号要用半角的引号" "
set nobackup
else
set backup
endif

8、vim插件
vim是一款支持插件、功能无比强大的编辑器,无论你的系统是linux、unix、mac还是windows,都能够选择他来编辑文件或是进行工程级别 的coding。如果能把vim用好了,不仅编程效率能得到大幅度提高,周围人也会因此而看得头晕眼花佩服不已,自己心里当然也会心花怒放啦。下面就让我 来介绍一下如何来进行配置。这些配置所涉及到的内容有:autocomplpop, ctags, TagList,omnicppcomplete

Vim是内建代码补全功能的,在不需要通过任何设置的情况下就能使用。在您编辑代码的时候,键入 ctrl x, ctrl o, ctrl n, ctrl p 等快捷键,就会弹出智能提示的菜单。但是这仍然不满足大家的要求。大多数IDE中,只要代码输入到相应的位置,补全提示就会自动的弹出来,而vim的这种 补全还需要自己手动的来触发。

自动弹出补全提示的插件 — autocomplpop

从http://www.vim.org/scripts/script.php?script_id=1879处 下载autocomplpop.vim文件(我们所说的vim插件就是这样的*.vim格式的文件),然后将其放入vim文件目录下的plugin目录中 (unix/linux平台在/usr/share/vim/vim71中, windows平台在安装目录的vim71目录中),然后重启一下vim就会发现在编码时会自动弹出提示了。

光是利用 autocomplpop这个插件还远远达不到要求。比如说:在c 中使用.或是->访问对象或指针中的成员和函数时还无法自动弹出提示,另外, 即便是自动提示也只能提示我们在当前文档中已输入的字符串。针对这种情况,我们就需要安装ctags工具和OmniCppComplete插件。 ctags是用来对文件做标记的工具,OmniCppComplete是在c和c 语言范畴内,对上述智能补全的增强版。

智能补全的增强版插件--ctags

ctags在http://ctags.sourceforge.net/下载源码,编译后安装。常规的标记命令为 ctags -R 。"-R"表示递归创建,也就包括源代码根目录下的所有子目录下的源程序。

== CppCompleete ==

OmniCppComplete在http://www.vim.org/scripts/script.php?script_id=1520下载。下载好之后根据里面的doc文档进行安装和使用。

这样一来,代码补全就比较完善了。但是根据以往的经验,IDE中还有一个功能,那就是函数和变量的跳转查看。比如代码中出现 代码: if(true){ doThis(); }

我们想知道doThis()函数是如何定义和实现的,那么如何快速的来查看呢?我们就需要安装Taglist插件

 Taglist

插件在http://vim.sourceforge.net/scripts/script.php?script_id=273下载。下载好之后,我们可以根据其中的doc文档进行安装和配置。

我们发现其实Taglist的使用也必须要依靠ctags所创建出来的tag文件。当tag文件形成、一切配置都配置完成之后。我们可以ctrl ]来进行函数或者是变量跳转。好了,从此你就可以开始像IDE一样来使用vim进行编码了。

0 人点赞