美文网首页码农的世界
优雅的使用Vim,提高效率与激情!

优雅的使用Vim,提高效率与激情!

作者: 婉言行川 | 来源:发表于2019-07-23 17:10 被阅读2次

    1. 写文本文件的时候会经常用到重复的文本内容,重复的做一件事情,总是让程序员想动动手,把操作变得更加简捷舒适.

            将文本内容写入模板文件中DEMO.tplt,用的时候直接在命令行用r DEMO.tplt ;

    2. 查询文本的时候,如何有选择性的查询,使用|表达式,让查询变得更加容易.

            以Python中的关键字def ,class为例,如果我们知道类或者函数都是在Python文件的第一列开始,那么问题变得简单了在命令行用 /^def\|^class.如此你可以安心的在每一个块间自由跳转了;

    3. 删除代码块,删除连续多行,使用标记的方式,让删除跳转多些神秘感.

            使用标记语法,把开始的地方标记"m a",结束的地方标记"m b", 想要删除还不简单, " 'a d 'b "。

            当然对于有括号这类的代码块删除,可以有更加简便的方式,开始的地方输入d然后再%,这样这一块内容都将删除;

    4. 拷贝粘贴的代码好多空格,此时我更想换成其他字符,文本内容替换解决掉一个又一个的命令输入.

            在导出数据的时候需要将其中的空格替换成其他的指定符号,刚开始的时候用替换弄的我很不愉快.将多个空格替换成指定的字符" %s/\s\{2,\}/#/g " ,将空格替换成#号.

    5. 调整光标的位置,让光标位置正中显示.

            用jk什么的命令看代码,汪汪光标的位置会跑到最顶上或者最下面,使用命令"zz"将当前光标位置重置到屏幕正中.

    6. 调整光标的位置,让光标跳转到页头,页中,页尾.

            在本页之中如何将光标快速跳到当前页的头,页中部,页尾部.一步到位"H"Home, "M" Middle, "L" Last 的三个命令,分别对应页首,页中,页尾.

    7.  有行代码需要修改先"dd"删除,然后"O"再继续插入.

            删除当前行,并继续在当前行编辑请换个姿势使用"cc" 命令.

    8. Ctrl+v的块状模式对于交易列数据非常有用.

            需要处理表格数据,交换N列和J列,使用这个模式选中需要交换的信息,然后"d"掉,再移动到相应的位置"p"粘贴.

    9.  操作命令映射,再次让重复的输入再具神秘感.

            按键映射成单词加上括号的功能. 将Love变成被围绕的{Love},":map <F5> i{<Esc>ea}<Esc>" .

    10. 文件之间的标记跳转,让这个命令更加Amazing !

            "ma,mb"这样的标记,标记当前文件的a位置和b位置;"mA,mB",将标记换成大写,标记不同文件的位置,跳转只需要" 'A " 或者 " 'B " .

    11.  圈定替换作用范围,逃避全局替换,让搜索结合替换使用 .

            搜索模式指定作用范围,模式之间的内容,全部替换.        " :?^Chapter?,/^Chapter/s=grey=gray=g  "            ?^Chapter? 表示范围开始,/^Chapter/表示范围结束;s表示替换,=号表示分隔符,将grey换成gray,g表示所有都替换;

    12. 看着内容排序不满意,想做点特别的展示,将所有内容反序排列.

            " :'t+1,.g/^/m 't  "  g=global , m=move  ;

            也可以这样反转所有的行" :g/^/m 0 "  ;  0是个神奇行,这行把每一行都放到它的前面;

    13.  消除行尾多余的空格 .

            ":%s/\s\+$//  " ;  这里\s是空格的意思\+是表示1个或者多个空格的意思,$表标行末;

    14.  使用折行,将内容折叠起中,查看更多的内容 .

            "zf% "这个功能可以匹配对应的括号让这一段的内容都被折叠起来。

            打开所有的折叠zR.关闭所有的折叠zM ;

    15.  行向左对齐,向右对齐,居中对齐,把排列做的简单点 .

            " :le "光标所在行左对齐

            " :ri  "光标所在行右对齐

            " :ce "光标所在行居中对齐 ;

    16.  单词前后位置顺序替换 .

            将"Last, First" 替换成 "First Last", 试试这个" :%s/\([^,]*\), \(.*\)/\2 \1/ "

    17.  vim中的缩写功能,让好玩的更好玩 .

            ":ab uno Unix Operating System "  当你输入uno的时候 就会自动变成Unix Operating System.

    相关文章

      网友评论

        本文标题:优雅的使用Vim,提高效率与激情!

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