Vim编辑器入门

Posted 码路拾遗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vim编辑器入门相关的知识,希望对你有一定的参考价值。

我们常说:Linux中一切都是文件。因此使用文本编辑器编辑配置文件参数是一键非常重要的事情,而最为广大用户熟知的文本编辑器非vim莫属;今天我们就来简单了解一下vim文本编辑器的使用。

一、vi与vim

在学习vim的使用之前,我们需要介绍一下vi文本编辑器:

  • 所有类UNIX系统都会内置vi文本编辑器;

  • 很多软件的编辑接口会调用vi,比如之前介绍过的 crontab ;

上述两个特点造就了可以成为vi高级版的vim如今地位。vim与vi最大的不同在于其语法高亮功能,该点使其不仅是一个文本编辑器,更是程序开发工具。

二、vi的使用

  1. 让vi或者vim如此受欢迎的主要原因,在于其三种模式:

  • 一般模式 打开一个文件就进入该模式;该模式中可以移动光标、对文本进行 复制 粘贴 删除 查找 等操作; Vim编辑器入门

  • 编辑模式 一般模式下,按 aio 键可以进入( a 键 与 i 键分别是在光标后面一位和当前位置切换到编辑模式,而 o 键则是在光标的下面再创建一个空行,此时可敲击 a 键进入编辑模式);该模式中可以对文件文本进行编辑,按 Esc 键回到一般模式; Vim编辑器入门

  • 命令行模式 一般模式下,输入以 :/? 开头的命令进入;该模式中光标在屏幕最下一行,可以输入一些对文件操作的命令,按 Esc 键回到一般模式; Vim编辑器入门ps:一般模式和编辑模式、一般模式和命令行模式之间可以互相切换,但是编辑模式和命令行模式之间无法互相切换。

  1. 一般模式和编辑模式常用快捷键

|快捷键|说明| |-|-| | h|光标向左移动一个字符| | j|光标向下移动一行| | k|光标向上移动一行| | l|光标向右移动一个字符| | Ctrl+fPageDown|向下翻页| | Ctrl+bPageUp|向上翻页| | 0Home|光标移动到所在行最前字符| | $End|光标移动到所在行最后字符| | G|光标移动到该文件最后一行| | gg|光标移动到该文件第一行| | XBackspace|删除光标前一个字符| | xDel|删除光标后一个字符| | [rownum]Enter|光标向下移动 [rownum] 行| | dd|删除(剪切)光标所在行| | [rownum]dd|删除(剪切)从光标处开始的 [rownum] 行| | yy|复制光标所在行| | [rownum]yy|复制光标处开始的 [rownum] 行| | n|显示搜索的下一个字符串| | N|显示搜索的上一个字符串| | u|撤销| | .Ctrl+r|重复上一个操作| | p|粘贴前剪切或复制的内容|

  1. 命令行模式常用命令

|命令|说明| |-|-| | :w|保存| | :q|退出| | :q!|放弃修改强制退出| | :wq!|强制保存退出| | :setnu|显示行号| | :setnonu|隐藏行号| | :[rownum]|跳转到 [rownum] 行| | :s/[str1]/[str2]|将当前行第一个 [str1] 替换为 [str2]| | :s/[str1]/[str2]/g|将当前行所有 [str1] 替换为 [str2]| | :%s/[str1]/[str2]/g|将全文所有 [str1] 替换为 [str2]| | ?[str]|搜索 [str]| | /[str]|反向搜索 [str]|Vim编辑器入门

三、vim的功能

  1. vim的保存文件、恢复与打开时的警告信息 当我们在使用vim编辑文件时,vim会把我们进行的操作保存在以编辑文件名加.swp命名的隐藏临时文件中; 当遇到其他用户在编辑同一个文件或者其他未知的原因导致vim崩溃后,我们可以使用这个临时文件恢复之前进行的操作;

  • 新建一个名为 xdltestvim.json 的文件,使用 Ctrl+z 快捷键使vim在后台运行

 
   
   
 
  1. vim xdltestvim.json

  • 使用 ls-al 命令查看当前文件夹信息,可以看到名为 .xdltestvim.json.swp 隐藏临时文件Vim编辑器入门

  • 当我们尝试继续编辑 xdltestvim.json 这个文件时,会出现提示:Vim编辑器入门并给出5个操作项:

|操作项|说明| |-|-| | [O]penRead-Only|只读模式打开文件| | [E]dit anyway|正常模式打开,不使用之前临时保存的操作,会改变之前的操作| | [R]ecover|恢复之前的操作,完成后需要手动删除隐藏临时文件| | [Q]uit|退出| | [A]bort|忽略,类似于 [Q]uit | 根据给定的操作快捷键可进行对应的操作。

  1. 块选择 vim一般模式和编辑模式下可以使用快捷键进行文本的块选择:

  • v 字符选择,选择从按下 v 开始到当前光标位置的字符:Vim编辑器入门

  • V 行选择,选择从按下 V 开始到当前光标位置的行:Vim编辑器入门

  • Ctrl+v 矩形选择,选择从按下 Ctrl+v 开始到当前光标位置所画出矩形框内的字符:Vim编辑器入门

文本选择之后,可以使用之前介绍的 ydp 快捷键进行复制、删除、粘贴。

  1. 多文件编辑 当我们想要把一个文件中的文本复制到另一个文件中时,就可以使用vim的多文件编辑功能;

|命令|说明| |-|-| | vim[file1][file2]|同时编辑文件 [file1][file2]| | :files|查看当前正在编辑的文件| | :n|切换到编辑下一个文件| | :N|切换到编辑上一个文件|Vim编辑器入门

  1. 多窗口功能 在vim命令行模式下使用 :sp[filename] 命令在同时以多个窗口中打开多个文件; 

多窗口功能常用快捷键:

|快捷键|说明| |-|-| | Ctrl+w jCtrl+w|切换到下一个窗口| | Ctrl+w kCtrl+w|切换到上一个窗口| | Ctrl+w q|关闭下一个窗口,等同于先切换到下一个窗口再使用 :q 关闭|

  1. vim常用命令示意图

图片转自 deniro_li 的CSDN文章 vim 常用指令操作示意图


以上是关于Vim编辑器入门的主要内容,如果未能解决你的问题,请参考以下文章

vim+makefile入门编辑,编译,差错实例

VIM 入门操作

Vim快速入门

Linux编辑器-Vim从入门到进阶

Linux下vi(vim)编辑器新手入门教程

Atom编辑器入门到精通 Atom使用进阶