• 一个简单的vim例子


    一.欢迎来到我的酒馆

            在本章节介绍vim工具。

    二.什么是vim

    2.1什么是vim
            vim是一种Linux命令行类型的文本编辑器。vim指的是"vi improved",意思是vi工具的升级版。vim是基于vi实现的,它提供了额外的功能,例如提升用户体验、增强文本编辑器的工作效率等。如果安装了vim程序,只需要输入命令就可以启动vim工具:

    vim filename
    
    • 1

            vim是 " Vi Improved “的缩写,它是一款免费、开源、跨平台的文本编辑器,它是Bram Moolenaar在1991年在类UNIX系统上开发出来的。vim编辑器是基于vi实现的,而vi编辑器是Bill Joy在1976年开发的,当时vi工具非常流行,但到了90年代,相比较于Emacs编辑器来说,vi缺少了很多功能,因此Bram Moolenaar开发了一些新的功能,并给这个编辑器起名为vim。
    2.2 什么是vi
            vi是一种标准的命令行类型文本编辑器。vi指的是"visual interface”,意思是可视化的界面。vi始于UNIX命令行文本编辑器,当时它还不是vi,而是叫做"ed"的一款命令行文本编辑器,而且衍生出了不同类型的编辑器,最后才形成vi编辑器。要使用vi工具,只需要在命令行输入:

    vi filename
    
    • 1

            vi是一种模式类型的编辑器,而且它有很多种模式。当我们打开一个文本文件的时候,会进入到"command mode",在"command mode"命令模式下,无法输入内容。如果要切换到"insert mode" 插入模式,可以按下"i"键:

    i
    
    • 1

    在这里插入图片描述

    在编辑内容完成后,可以按下"Esc"键返回到"command mode",保存并退出,可以输入:

    :wq
    
    • 1

    w:write,表示写入。
    q:quit,表示退出。

    不保存仅退出,可以输入:

    :q
    
    • 1

    2.3 安装vim
            vim是一款跨平台的编辑器,可以在Windows、Linux和Mac上运行。在Windows下安装vim,可以去vim的官网下载,点击这里下载vim。在大部分的*nix操作系统上都预装了vim,如果没有安装的话,可以使用命令进行安装,不同的Linux发行版的安装命令不同,下面列出在centos7下安装vim:

    sudo yum -y install vim*
    
    • 1

    为了确保你正确的安装vim,你可以使用命令查看安装的vim路径:

    which vim
    
    • 1

    如果是下面的输出,则说明vim已经安装好了:

    /usr/bin/vim
    
    • 1

    三.vim中常见的模式

    3.1打开vim
            你可以在命令行输入vim,就可以打开vim编辑器:

    vim
    
    • 1

    vim界面:
    在这里插入图片描述
    3.2 vim中的模式
            这里需要理解一个概念:在vim中任何东西都视为一种模式。如果你理解了vim中的模式,那么你使用vim就会如鱼得水。在vim中有很多种模式,这里介绍vim中最重要的4种模式:

    • " command mode " (命令模式)
    • " command-line mode " (命令行模式)
    • " insert mode " (插入模式)
    • " visual mode " (视图模式)

    3.3 什么是命令模式?
            命令行输入vim,打开的vim界面默认就是命令模式,也叫做(Normal mode)普通模式。在命令模式下,可以切换到其它任何模式。一般情况下,你要从一个模式切换到另一种模式,首先你要转到命令模式,然后再切换到其它模式。当你在执行一个命令的时候,如果这个命令不是以冒号开始的(" : "),那就表明你现在处于命令模式。
    3.4 什么是插入模式?
            在插入模式下,你可以随心所欲的编辑文本内容,只要按下i键就可以转到插入模式。在窗口的左下角,会显示一个单词:INSERT,表明当前处于插入模式,当你编辑内容完成后,你可以按下Esc键退回到命令模式,此时输入内容:wq就可以保存文本内容并退出vim。
    在这里插入图片描述

    3.5 什么是命令行模式?
            在命令行模式下,可以执行一些命令。但是这些命令要以冒号开头(:),你可以在命令模式下输入冒号(:)切换至命令行模式,上面讲到的保存退出,就是命令行模式:

    :wq
    
    • 1

    3.6 什么是视图模式?
            在视图模式下,你可以选择一些文本或运行一些命令,通过按下v键切换到视图模式。
    vim 视图模式


    3.7 四种模式之间切换图
    在这里插入图片描述

    四.开始使用vim

    4.1创建一个文件
            使用vim创建文件非常简单!创建文件有两种方式,一种是打开终端,输入命令:

    [user@192 tmp]$ vim simple.txt
    
    • 1

    如果当前目录下simple.txt这个文件不存在,则创建这个文件;如果当前目录下simple.txt文件存在,则打开这个文件;
    另外一种创建文件的方式是,在命令行模式(命令模式切换到命令行模式,只需要输入:冒号即可),输入:

    :edit simple.txt
    
    • 1

    输入完成后,提示:

    "simple.txt" [New File]
    
    • 1

    在这里插入图片描述

    则说明已经创建了simple.txt文件,需要向文件中输入内容,只需要按下i键,切换至插入模式(insert mode),左下角会显示一个英文单词:INSERT,说明当前处于Insert mode,可以向文件中输入任何你想要输入的内容:
    在这里插入图片描述

    4.2 保存文件并退出
            保存文件并退出,只需要切换到命令行模式,从插入模式切换到命令行模式,你需要按下Esc键,这时候,左下角不在显示英文单词:INSERT,输入冒号(:)将切换至命令行模式,
    insert mode --> command mode: 按下Esc键
    command mode -->command-line mode: 输入冒号(:)

    :wq
    
    • 1

    在这里插入图片描述


    4.3 如何编辑一个文件
            编辑一个文件,你需要使用vim打开一个文件,并切换至插入模式。打开文件:

    vim simple.txt
    
    • 1

    打开一个文件,默认是处于命令模式或普通模式,编辑文件,需要切换至插入模式,命令模式切换至插入模式,按下i键。
    在这里插入图片描述
    按下Esc键,回到命令模式,输入:w 保存文件,输入:q不保存文件退出,你也可以保存退出一起输入,像这样:wq,表示保存文件并退出vim,如果不想保存文件直接退出,可以输入:q! ,!号表示强制。


    4.4 如何剪切,复制,粘贴

            在默认模式下,按下v键进入视图模式。视图模式可以选取文本,选择内容后,按y键复制,p键粘贴,d键剪切。

    在这里插入图片描述

    五.如何查找和替换

    5.1查找和替换
            在一段文本中查找和替换也很简单,只需要一条命令就可以完成操作,下面是语法:

    :[range]s/[pattern]/[string]/[flags]
    
    • 1

    单独解释每个部分是如何工作的:

    • [range] 表示可以传入的行数范围。%符号用于查找和替换所有行,行数的范围使用冒号隔开。例如,要查找和替换第5行到第10行,输入5,10。使用(.)号表示当前行,($)表示最后一行。
    • [pattern] 表示查找的模式,这里可以使用正则表达式。
    • [string] 表示要替换的一段内容。
    • [flags] 表示你期望要传入的参数。例如,c表示在替换内容之前需要确认。一般情况下,这是区分大小写的搜索,你也可以修该这个默认值,通过使用参数i可以忽略大小写。

    在这里插入图片描述

    例如,上面的文本内容,有2个"早上好",要求将文本中出现的所有的早上好,替换成好久不见,可以输入以下命令:

    :%s/早上好/好久不见/g
    
    • 1
    • %s。 表示替换整个文件中的内容。
    • 早上好。 需要搜索的文本内容。
    • 好久不见。需要替换的文本内容。
    • g。表示全局修改。

    5.2 指定行号查找和替换
            例如,现在有一个新的要求,把第4行到第7行出现的 “幸福快乐每一天” 替换成 “开心每一天”,并且替换前需要确认。可以在命令行模式下输入以下命令:

    :3,5s/幸福快乐每一天/开心每一天/gci
    
    • 1

    在这里插入图片描述

    在命令行模式下,输入以下命令,可以显示行号:

    :set nu
    
    • 1

    不显示行号:

    :set nonu
    
    • 1

    六.如何撤销和重做操作

            有时,当你在编辑一个文件的时候,你可能删错了一行,或者是在编辑的时候改变注意了,这时候需要执行撤销操作,返回上一步。在vim中撤销操作,你可以在命令模式下按下u键,即可取消之前的操作,按两下u键,返回前两步操作。
    撤销操作:

    1.命令模式下,按下u键
    2.命令行模式下,输入:u
    3.命令行模式下,输入:undo
    4.命令行模式下,:2u表示返回前两步,:4u表示返回前4步,以此类推。
    
    • 1
    • 2
    • 3
    • 4

    重做操作(反撤销):

    1.命令模式下按下ctrl+r :重做,重新执行一遍之前的操作
    2.命令行模式下,输入:redo
    
    • 1
    • 2

    重做4步,可以按下4ctrl+r(按下4键,再按下ctrl键不放,按r键。)

    七.写在最后

            一个简单的vim例子完结。在本章节只介绍了vim的基本操作,学完本篇vim例子可以帮助你更好的使用vim工具。虽然在本篇中只介绍了vim的1%的内容,但是这些基本操作会帮助到你更好的理解和应用vim。如果有什么想问的问题,可以在评论下方留言,如果发现有错误的地方或有待提高的地方,欢迎指正!

  • 相关阅读:
    C++:vector
    10.Async异步函数
    Ai-WB2系列模组linux开发环境搭建
    mpls 笔记 part 1
    “创能源之新、享绿色未来” 数境“三星堆杯”能源装备智能化绿色化创新大赛启动...
    使用 R 和 ggraph 自定义树状图
    小目标检测:基于切图检测的yolov5小目标检测
    0动态规划中等 LeetCode467. 环绕字符串中唯一的子字符串
    【UE4笔记】paper2D通过静态图片创建动画序列
    Oracle通过DBLINK访问达梦数据库
  • 原文地址:https://blog.csdn.net/StayAlive1887/article/details/132582991