zoukankan      html  css  js  c++  java
  • 玩转VIM编辑器额外技巧

    玩转VIM编辑器-额外技巧

    给整个条目列表添加点阵式符号

    比如,原文为:

    The Geek Stuff article categories:

     

    Vi / Vim Tips and Tricks

    Linux Tutorials

    SSH Tips and Tricks

    Productivity Tips

    HowTo & FAQ

    Hardware Articles

    Nagios Tutorials

    MySQL and PostgreSQL Tips

    操作后变为:

    The Geek Stuff article categories:

     

    *Vi / Vim Tips and Tricks

    *Linux Tutorials

    *SSH Tips and Tricks

    *Productivity Tips

    *HowTo & FAQ

    *Hardware Articles

    *Nagios Tutorials

    *MySQL and PostgreSQL Tips

    操作方法为:

    1.    使用CTRL+V选定第一列;

    2.    按下I(即i的大写字母);

    3.    按下TAB可以移动全部选择行;

    4.    然后插入*号即可,所有的操作都会影响所有的行;

    5.    ESC退出编辑;

    使用update-alternatives设置vim为系统通用默认编辑器

          Debian操作系统中,可以设置vim为通用默认编辑器,命令为:

    update-alternatives --set editor <PATH OF VIM>

    vim作为默认编辑器

          对于普通用户,可以在bashrc中,设置默认编辑器为vim,只需要在bashrc中添加export EDITOR=vi即可。

    格式化段落

    使用gqap来格式化段落。

    重用宏

          对于我们使用的宏,如果不小心录制错误了,可以有两种方法来修改:

    1.    重新录制宏;

    2.    修改宏

    a)     “ap    用于粘贴宏;

    b)     修改宏中错误的地方;

    c)     “ayy  重新录制该宏;

    缩进代码块

    原文为:

    int main()

    {

    printf("Hello World!\n");

    printf(“Done.”);

    }

    缩进后为:

    int main()

    {

    printf("Hello World!\n");

    printf(“Done.”);

    }

    有两种方法,分别为:

    1.    移动光到{或者},然后输入>i{即可右移,左移为<

    2.    使用块模式

    a)     将光标移动到需要移动的行;

    b)     使用v键来选择移动区域;

    c)     使用方向键选定行;

    d)     使用>或者<来右移或者左移;

    组合的威力

          前面讲了很多技巧,如果我们将导航命令和编辑命令组合,将会得到更强大的功能。

    描述

    d<导航键hjkl>

    向导航方向删除

    dw

    删除一个单词

    d$

    一直删除到行尾

    d0

    一直删除到行首

    dG

    删除到文件末尾

    dgg

    删除到文件开始

    dk

    删除当前和上一行

    Dj

    删除当前和下一行

    dM

    删除到屏幕中间

    dH

    删除到屏幕开始

    dL

    删除到屏幕底部

    y <导航键hjkl>

    根据导航键来拷贝

    c<导航键hjkl>

    根据导航键来修改

    查看所有修改的历史

    :changes即可

    刷新屏幕

          当屏幕由于一些原因而导致失真时,可以使用CTRL+L来重绘屏幕。

    插入非键盘字符

          使用:digraphs可以查看一些非键盘字符;

    我们可以在插入状态中使用CTRL+K At来输入@,其中的At就是使用digraphs中查看的对应字符。这里可以输入日文、阿拉伯符号等。

          更多信息,参考:help diagraphs

    Vimex模式

          输入Q就可以进入ex模式,然后输入visual或者:vi就可以回到正常模式。

          在我们需要连续不断地执行命令的时候,可以进入该模式

    令光标位于匹配的末尾

          一般在使用/pattern搜索的时候,光标会位于匹配的开始出,我们可以使用/pattern\zs来使得光标位于该行的结尾。

    查看字符的ASCII

          在光标位于字符n上的时候,输入ga就会在底端显示:

    <n> 110, Hex 6e, Octal 156

    编辑二进制文件

    使用命令行参数b,即 vim –b filename

    折叠-查看部分源码

          这个特性对于有很多子函数的代码很有用;

    自动折叠

    :set foldmethod=indent即可折叠所有具有成对{}的代码。

    折叠键

    描述

    za

    展开光标下的内容

    zR

    展开所有折叠的内容

    zM

    折叠全部

    手工折叠

    :set foldmethod=manual

    折叠键

    描述

    zf <导航键jk>

    根据导航符来折叠

    zf/pattern

    通过搜索到的pattern来折叠代码

          我们也可以将所有的折叠信息保存起来,用的时候再加载,然后会还原原来设置的。方法为:mkview :loadview

  • 相关阅读:
    react的50个面试题
    什么是宏队列跟微队列
    宏队列与微队列
    数组都有哪些方法
    vuex 跟 vue属性
    高阶组件
    如何创建视图簇(View cluster)-SE54/SM34
    ◆◆0如何从维护视图(Maintenace view)中取数据-[VIEW_GET_DATA]
    ◆◆0如何在SM30维护表时自动写入表字段的默认值-事件(EVENT)
    ◆◆0SAP Query 操作教程
  • 原文地址:https://www.cnblogs.com/shaoguangleo/p/2806051.html
Copyright © 2011-2022 走看看