简洁地使用vim

作者: 我的饭灬 | 来源:发表于2017-10-29 21:16 被阅读68次

    本文以Linux操作系统为测试环境,并且要求对vim有些许了解,如果对vim完全没有概念,建议在命令行下输入vimtutor获取vim的入门教程,花一个小时左右即可入门。

    我对vim的定位

    据我了解,在命令行时代,如果根据编辑器的使用给程序员分类,几乎大致可以分为vim和Emacs两大阵营。我在刚刚接触文本编辑器的时候,也被灌输着必须二选一的思想,诚如传言,vim确实很重要,只要接触Linux而不使用vim是不可能的,而Emacs的组合命令让我实在无法忍受,所以即使Emacs很强大,还没开始学我就决定放弃它了。
    在折腾vim很长时间之后,特别是接触了Atom、Sublime Text、VS code等新兴文本编辑器之后,我又得出了一个结论:vim不适合这个时代。也许有很多高手和老黑客还在青睐vim,他们已经把vim玩得很6了,甚至离不开vim了,但是我必须承认有很多更好用的编辑器,我不想再折腾这个老古董了。
    但是vim是又是必须的,它是一个很好用的辅助工具,因为一旦我们熟悉了vim的使用,就可以在很多地方包括以上提到的新兴编辑器使用,而vim也确实是一个高效的工作方式。我一直在使用vim:在Linux下,我使用vim编辑小文件,在浏览器端,我使用vimuim插件支持vim快捷键,而我在使用新兴编辑器的时候,我依然是使用vim的键盘快捷方式。高效的辅助工具,这是我对vim的定位。
    这个定位也是我写本文的原因。网上有很多vim的教程,但是讲的都很仔细,我也看了一遍又一遍,但是到头来,我发现我记住的还是那么多,因为我只用那么多。我想通过本文总结我在使用vim的时候用到的东西,而且是常用的、不会忘记的东西。

    简洁地使用vim

    跳转

    h          向左移动
    k          向上移动
    j          向下移动
    l          向右移动
    H          移动到屏幕的起始行
    M          移动到屏幕中间
    L          移动到屏幕的底行
    gg         移动到文档首行
    G          移动到文档尾行
    NG         N替换为数字,移动到文档的第N行
    Ctrl + f   向下翻一页
    Ctrl + b   向上翻一页
    0          移动到行头
    $          移动到行尾
    

    搜索匹配

    普通匹配如下,在命令模式下,先输入/,再输入str即可匹配到字符str,然后按n则匹配下一个str,按N匹配上一个str。而如果输入的是?str,则n和N的功能相反,不管是/str还是?str,在匹配到文始或者文末之后,都会从头开始。

    /str          向下搜索匹配字符str
    ?str          向上搜索匹配字符str
    

    而想要更精确的匹配,就要用到正则表达式匹配,基本使用如下,正则表达式的高级语法请自行百度。

    :/str/        正则表达式匹配字符str
    

    替换与删除

    r          替换单个字母
    R          从当前字母开始替换
    x          删除一个字母
    dw         删除一个单词
    dd         删除一行
    d$         从当前删除到行末
    d0         从当前删除到行头
    J          删除本行的回车符,将本行与下一行合并
    

    插入

    i          在当前光标前插入
    a          在当前光标后插入
    o          在本行的下面新建一行并进入编辑模式
    O          在本行的上面新建一行并进入编辑模式
    

    复制粘贴

    yy          复制本行
    p           在光标后面粘贴
    P           在光标前面粘贴
    

    更使用的做法是,在命令模式下,先按v进入可视模式,利用上面讲到的跳转命令选择文本,被选择的文本背景会反白,选择好要复制的文本后,按下y即可复制反白文本。

    撤销与重复

    u            撤销上一次操作,常用
    .            重复上一个命令操作
    

    打开、保存、退出

    :w            保存而不退出
    :w filename   保存副本
    :q            退出vim
    :q!           强制退出,不保存
    :wq           保存并退出
    :e path/file  在vim中打开文件
    :f file       重命名文件
    

    其他命令

    :set nu          显示行号
    :syntax on       开启语法高亮
    

    :set option命令常常用来设置vim的界面与相关配置,如上两天配置命令只会临时起作用,而退出vim之后就会失效,所以最好的做法是,在用户主目录下新建一个.vimrc文件,并把自己的配置选项写入文件中,这样vim就知道如何初始化自己了。

    :f 或者 Ctrl + G          显示状态栏,这对于想看文件名很有用
    :!cm                      其中cm为shell命令,这允许我们在vim中运行shell命令
    

    还有一些命令,我不常用,但是我认为可以了解,如下:

    :sp                  上下分屏
    :vsp                 左右分屏
    Ctrl + w + h         切换到左边屏
    Ctrl + w + j         切换到下边屏
    Ctrl + w + k         切换到上边屏
    Ctrl + w + l         切换到右边屏
    

    其实Ctrl + w可以在不同的屏之间按顺序切换。

    总结

    这是我对自己使用vim的总结,我认为对于vim,我知道这些就够了,希望对你们有所帮助,发现错误欢迎指正,有意见欢迎反馈。

    相关文章

      网友评论

        本文标题:简洁地使用vim

        本文链接:https://www.haomeiwen.com/subject/eszypxtx.html