【Linux】vim的使用详解-Linux编辑器


1.前言

vi/vim的区别简单点来说,它们都是多模式编辑器,不同的是vim是vi的升级版本,它不仅兼容vi的所有指令,而且还有一些新的特性在里面。例如语法加亮,可视化操作不仅可以在终端运行,也可以运行于x window、 mac os、windows。这篇文章,我们统一按照vim来进行讲解。

如果大家在命令行输入vim [文件名],没有出现编辑器,大家就先在命令行输入以下命令进行安装vim命令:

yum install -y vim

2.vim的基本概念

这篇文章我们讲解vim的三种模式(其实有好多模式,目前掌握这3种即可),分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

  • 正常/普通/命令模式(Normal mode)
    控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入插入模式下,或者到底行模式;
  • 插入模式(Insert mode)
    只有在插入模式下,才可以做文字输入,按「ESC」键可回到命令行模式。该模式是我们后面用的最频繁的编辑模式。
  • 底行模式(last line mode)
    文件保存或退出,也可以进行文件替换,找字符串,列出行号等操作。 在命令模式下,shift+: 即可进入该模式。要查看你的所有模式:打开vim,底行模式直接输入:help vim-modes

这里一共有12种模式:six BASIC modes(6种基础模式)和six ADDITIONAL modes(6中附加模式)。

3.vim的基本操作

  • 进入vim,在系统提示符号输入vim及文件名称后,就进入vim全屏幕编辑画面: vim test.c
    不过有一点要特别注意,就是你进入vim之后,是处于[正常模式],你要切换到[插入模式]才能够输入文字
  • [正常模式]切换至[插入模式]输入a或输入i或输入o
  • [插入模式]切换至[正常模式]
    目前处于[插入模式],就只能一直输入文字,如果发现输错了字,想用光标键往回移动,将该字删除,可以先按一下「ESC」键转到[正常模式]再删除文字。当然,也可以直接删除。
  • [正常模式]切换至[末行模式]「shift + ;」, 其实就是输入「:」
  • 退出vim及保存文件,在[正常模式]下,按一下「:」冒号键进入「底行模式」,例如:
    : w (保存当前文件)
    : wq (输入「wq」,保存并退出vim)
    : q! (输入q!,不保存强制退出vim)

4.vim正常模式命令集

1.插入模式

按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

2.从插入模式切换为命令模式

按「ESC」键。

3.移动光标

1.vim可以直接用键盘上的光标来上下左右移动,
但正规的vim是用小写英文字母「h」、「j」、「k」、「l」,
分别控制光标左、下、上、右移一格

2.G(shift+g) :光标直接移到文章的最后,n+G跳到指定行
3.按gg :光标直接移到文本开始
4.按$(shift+4) :移动到光标所在行的“行尾”
5.^(shift+6) :移动到光标所在行的“行首”
6.按w :光标跳到下个字(单词)的开头,支持nw(一次性移动n个单位)
7.按b :光标跳到上个字(单词)的开头, 支持nb
8.按e :光标跳到下个字的字尾
9.按nl :光标移动到该行的第n个位置
10.按「ctrl」+「b」:屏幕往“后”移动一页
11.按「ctrl」+「f」:屏幕往“前”移动一页
12.按「ctrl」+「u」:屏幕往“后”移动半页
13.按「ctrl」+「d」:屏幕往“前”移动半页

4.删除文字

1.按x :每按一次,删除光标所在位置的一个字符
2.按nx :例如,6x,表示删除光标所在位置的后面(包括字节在内)的6个字符
3.按X :删除光标位置所在字符前面一个字符
4.按nX :删除光标所在位置前面的n个字符
5.按dd :删除光标所在行(会进行自动复制)
6.按ndd :从光标所在行开始删除n行

5.复制

1.按yw :将光标所在之处到字尾的字符复制到缓冲区(支持nyw)
2.按yy :复制光标所在行(支持nyy,复制n行)
3.按p :粘贴(支持np,粘贴n行)
4.按ndd+p :剪切

6.替换

1.按r :替换光标所在处的字符(支持nr替换多个字符)
2.按R :切换到替换replace模式,进行字符替换,按Esc键退出到正常模式
3.按shift+~ :大小写切换

7.撤销操作

1.按u :进行一次撤销操作
2.按Ctrl+r :取消上次的撤销操作

8.vim底行模式命令集

在使用底行模式之前,请记住先按Esc键,确认您现在已经处于正常模式,再按shift+;,即:键即可进入底行模式

1.输入set nu/nonu :会在文件的每一行前面列出/取消行号
2.[#] :[#]号表示一个数字,在冒号后输入一个数字,再按回车键就可以直接跳到该行,如输入数字15,再回车,就会跳到文章第153. /关键字 :一个下划线+你要查找的关键字,如果第一次不是你要查找的关键字,可以按n,会往后寻找到你要的关键字为止。
4. ?关键字  :功能和第3点一样
5. 输入 vs 文件名 :在当前界面再创建一个文件,会自动进行分屏
6. Ctrl+ww :光标跨屏,注意光标只有一个,在哪个屏就编辑哪个屏,退出编辑器(wq)之后,会发现目录中多了一个文件
7. 在底行输入%s/printf/cout/g 可以将文件中的printf都替换成cout
8. !command 在底行输入命令

9.保存文件

「w」: 在冒号输入字母「w」就可以将文件保存起来

10.离开vim

「q」:按「q」就是退出,如果无法离开vim,可以在「q」后跟一个「!」强制离开vim。
「wq」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

5.简单vim配置

配置文件位置

  • 在目录/etc/下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效。
  • 在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:.vimrc。如果不存在就创建一个。
  • 切换用户成为自己执行su,进入自己的主工作目录,执行cd~
  • 打开自己目录下的.vimrc文件,执行vim .vimrc

常用配置选项,用于测试

  • 设置语法高亮:syntax on
  • 显示行号:set nu
  • 设置缩进的空格数为4:set shiftwidth=4

使用插件

  • 安装TagList插件,下载taglist_xx.zip ,解压完成,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
  • 在~/.vimrc 中添加:
    let Tlist_Show_One_File=1
    let Tlist_Exit_OnlyWindow=1
    let Tlist_Use_Right_Window=1
  • 安装文件浏览器和窗口管理器插件: WinManager
  • 下载winmanager.zip,2.X版本以上的
  • 解压winmanager.zip,将解压出来的doc的内容放到~/.vim/doc, 将解压出来的plugin下的内容拷贝到~/.vim/plugin
  • 在~/.vimrc 中添加 let g:winManagerWindowLayout=‘FileExplorer|TagList
    nmap wm :WMToggle
  • 然后重启vim,打开~/XXX.c或~/XXX.cpp, 在normal状态下输入"wm", 你将看到上图的效果。
    更具体移步:点我, 其他手册,请执行 vimtutor 命令。

参考资料:
vim从入门到牛逼(vim form zero to hero)

6.总结

以上就是Vim编辑器的一些基本命令,它们的操作会让你更加高效地完成文件编辑。Vim的功能非常强大,可以通过自定义配置文件和插件来实现更多的功能。希望本文能对你有所帮助,感谢阅读!

猜你喜欢

转载自blog.csdn.net/weixin_63449996/article/details/129829034