zoukankan      html  css  js  c++  java
  • vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)

      vim有许多命令,网上搜有一堆贴子、文章列举出各种功能的命令。

      对于“=”、“d”、“y”,我在无意中发现了它们所具有的相同的一些用法,先举以下三个例子:

    =nG
    dnG
    ynG

      其中,n为行号。注意行号后面接的是大写字母“G”。而“nG”恰好是光标移动到第n行的命令。

      对于“=”,“=nG”的意思就是从当前行到第n行之间进行格式化。常用的一个命令“gg=G”实际上是先执行了“gg”使光标跳转到第一行,然后才是执行了“=G”。如果不写行号,就是到最后一行,于是“gg=G”就可以使当前文件的所有内容格式化了。格式化的tab长度是在.vimrc中设置的。

      同样地,对于“dnG”,是对当前行到第n行进行剪切,“ynG”是对当前行到第n行进行复制。

      另外,n可以小于当前行数,如当前行如果是70行,执行“y35G”,就是把从70行到第35行的内容进行复制,其实就相当于复制35行到70行的东西。

      有了这个,在以下场合非常方便:

      假设要复制从25行到78行的内容,这时候可以直接使用“25Gy78G”,而不用去计算一共有多少行,然后执行ndd了。

      对于“d”和“y”,还可以这样:

      “d^”、“d$”,从光标位置剪切到行首/行尾,“dw”,剪切光标当前位置到单词的第一个字母,等等。

      总之,就是把“=”、“d”、“y”与光标移动的操作结合起来使用,从而产生想要的效果。

  • 相关阅读:
    Docker Warning : the backing xfs filesystem is formatted without d_type support
    docker 版本变化及说明
    CORS 跨域请求
    nginx 用户登录认证
    PipelineDB On Kafka
    Postgres 主从配置(五)
    exec() has been disabled for security reasons
    invalid PID number "" in "/usr/local/nginx/logs/nginx.pid"
    未连接到互联网
    github管理代码
  • 原文地址:https://www.cnblogs.com/chinxi/p/6187600.html
Copyright © 2011-2022 走看看