1. 建议参考IBM官方文档
    https://www.ibm.com/developerworks/cn/linux/l-cn-tip-vim/
  2. 重新输入以前输入过的某条命令
    Ctrl + r
  3. 全局替换
    格式:
    ":%s/要替换字符/替换为新字符/g"
    :%s/old/new/g 
    指定行替换 
    格式: ":起始行,终止行s/要替换字符/替换为新字符/g"
    :1,5 s/old/new/g
  4. 多文件替换
    多文件替换,比如要替换所有.c文件中a_value为b_value,可以使用如下方法: 
    vi *.c 
    :argdo %s/a_value/b_value/ge | update 
    其中update是直接替换覆盖原文件,若需要确认,则可使用 
    :argdo %s/a_value/b_value/gec | update
  5. 多行注释:
    首先按 esc 进入命令行模式下,按下 Ctrl + v,进入列(也叫区块)模式;
    在行首使用上下键选择需要注释的多行;
    按下键盘(大写)"I" 键,进入插入模式;
    然后输入注释符("//"、"#" 等);
    最后按下 "Esc" 键。
    注:在按下 esc 键后,会稍等一会才会出现注释,不要着急~~ 时间很短的
  6. 删除多行注释:
    首先按 esc 进入命令行模式下,按下 Ctrl + v, 进入列模式;
    选定要取消注释的多行;
    按下 "x" 或者 "d".
    注意:如果是 "//" 注释,那需要执行两次该操作,如果是 "#" 注释,一次即可
  7. 删除行首的多字符
    首先按 esc 进入命令行模式下,按下 Ctrl + v, 进入列模式, 按"右箭头"选择要删除的字符长度;
    按"向下"箭头选择要删除多少行
    按下"d",即可删除
  8. 其他
    显示行号: set nu
    取消显示行号: set nonu
    回到句尾: shift + $ 
    回到句首: shift + ^
    段首 :  { 
    段尾 :  }
    前一修改处 :  g, 
    后一修改处 :  g;
    删除光标之后的单词剩余部分 : dw
    删除光标之后的该行剩余部分 : d$
    把下一行合并到当前行尾 : J
    撤消更改: u 
    自动补全: Ctrl-p 
    显示当前编辑文件名及行数: Ctrl-g
    按住ctrl + alt 选块复制粘贴

vim 高级编辑技巧的更多相关文章

  1. [转]基于Protel DXP软件的PCB高级编辑技巧大全

    来源:基于Protel DXP软件的PCB高级编辑技巧大全 一.放置坐标指示 放置坐标指示可以显示出PCB板上任何一点的坐标位置. 启用放置坐标的方法如下:从主菜单中执行命令 Place/Coordi ...

  2. vim高级编辑(一)

    本文出自   http://blog.csdn.net/shuangde800 ------------------------------------------------------------ ...

  3. vim 高级使用技巧

    前言:逃离windows有很长时间了,特别是当今android盛行的时代,我们没有理由不选择ubuntu作为编译开发android之首选.其实操作系统只是我们使用的一个工具, windows也好lin ...

  4. vim 高级使用技巧第二篇

    上篇我贴上了我使用的vim配置及插件配置,有这些东西只能是一个脚本堆积,无从谈高效的代码阅读开发. 下面我们就来写经常使用的命令,就从配置F系列快捷键开始吧. F+ n 快捷键配置 F1基本上时帮助, ...

  5. vim编辑技巧

    算上大学上课linux接触四年了,可惜除了工作接触的那些,其他地方还是很水的,都不精通,今日翻来看了看以前过目即忘的vim技巧,发现,如无几年操作经验,这些技巧很难领悟的.这里写下来,以备后查. 区块 ...

  6. vi/vim系统编辑命令使用技巧

    01前言 在Linux系统中会有很多的文件信息,这些文件的内容如果需要编辑,就必须借助vi或vim编辑命令. vi是Linux命令行界面下的重要文字编辑器.vim是vi命令的增强版. [语法格式] v ...

  7. vim常用操作技巧与配置

    vi是linux与unix下的常用文本编辑器,其运行稳定,使用方便,本文将分两部分对其常用操作技巧和配置进行阐述,其中参考了网上的一些文章,对作者表示感谢 PART1 操作技巧 说明: 以下的例子中  ...

  8. Vim实用小技巧

    Vim实用小技巧 一些网络上质量较高的Vim资料 从我07年接触Vim以来,已经过去了8个年头,期间看过很多的Vim文章,我自己觉得非常不错,而且创作时间也比较近的文章有如下这些. Vim入门 目前为 ...

  9. vi/vim高级命令集粹

    vi/vim高级命令集粹 (ctrl +v过来 留着以后看) 1.交换两个字符位置 xp 2.上下两行调换 ddp 3.把文件内容反转 :g/^/m0/ (未通过) 4.上下两行合并 J 5.删除所有 ...

随机推荐

  1. stl stack用法

    栈后进先出 #include<iostream> #include<algorithm> #include<cstdio> #include<stack> ...

  2. UnderWater+SDN论文之三

    Software-Defined Underwater Acoustic Modems: Historical Review and the NILUS Approach Source: IEEE J ...

  3. 【kindle笔记】之 《浪潮之巅》- 2018-1-

    <浪潮之巅> 这本书推荐自最爱的政治课老师. 政治课老师张巍老师.我会一直记得你的. 以这样的身份来到这个学校,他人的质疑,自己的忐忑,老板的不公.犹犹豫豫谨小慎微地前进. 第一次听到这样 ...

  4. VS如何在调试时进入到dll文件

    背景:    项目A:用C#写的一个类库文件 项目B:引用项目A的dll文件,完成编码,也是C#编写的. 需求:怎么能在调试的时候,调试断点能够从项目B中进入项目A中的代码. 解决办法就是: 假设,项 ...

  5. MyEclipse 配置 Tomcat

    安装好Tomcat,MyEclipse 之后,利用这两个工具可以开发部署Web 应用,步骤相对手动部署要简洁的多,这里有一个特别要注意的地方:系统里安装JDK.Tomcat.MyEclipse 的版本 ...

  6. Git本地仓库push至GitHub远程仓库每次输入账户密码问题解决(亲测可行)

    在使用git push命令将本地仓库内容推送至GitHub远程仓库的每一次git都要让我们输入GitHub的用户名和密码.这着实让我们心烦.我们会有疑问,我明明设置了公钥呀!怎么还需要输入账户和密码? ...

  7. oss上传和下载的笔记

    <<<<<<<<<对oss操作,上传文件>>>>>>>>>>>>>& ...

  8. 剑指offer(1)

    题目: 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. ...

  9. AJAX+springmvc遇到的问题

    当我使用AJAX将表单的值传入处理器中后,经过了一个判断再进行页面跳转时,不能在处理器中使用重定向,它会将重定向的页面内容在AJAX的data中显示出来而不是显示一个页面 所以只能在AJAX 的suc ...

  10. python语法糖/装饰器

    1.python高阶函数和嵌套函数 1.1高阶函数 def func1(x): return x**2 def func2(x): return x**3 def func(x,y): return ...