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. pip3 升级失败的解决方法!亲测有效

    pip3 --default-timeout=10000 install -U pip 注意:由于防火长城的存在,会导致更新失败,如果你加上--default-timeout=10000  这个就ok ...

  2. iOS QRcode识别及相册图片二维码读取识别

    https://www.jianshu.com/p/48e44fe67c1d 2016.03.30 10:32* 字数 892 阅读 16197评论 5喜欢 34赞赏 1 最近碰到一个用户 在使用我们 ...

  3. Python_生产者消费者模型、管道、数据共享、进程池

    1.生产者消费者模型 生产者 —— 生产数据的人 消费者 —— 消费数据的人 生产者消费者模型:供销数据不平衡的现象. import time import random from multiproc ...

  4. 百度地图支持https

    百度地图SDK,  支持https <script src="http://api.map.baidu.com/api?v=3.0&ak=nbnttGGI6lilllgy2zn ...

  5. C调用C++, C++调用C方法

    1. C 调用 C++封装好后的函数: -> 在C++中有一个函数 int main_cpp(): -> 首先构建头文件, #ifndef CPP_FILE_H   #define CPP ...

  6. java类库

    Java的应用程序接口(API)以包的形式来组织,每个包提供大量的相关类.接口和异常处理类,这些包的集合就是Java的类库. Java类库可以分为两种 包名以java开始的包是Java核心包(Java ...

  7. laravel门面和服务提供者使用

      关于laravel门面和服务提供者使用的一点见解,门面之词,不足之处,还请多多指教. 在laravel中,我们可能需要用到自己添加的类时,可以建立一个文件夹专门存放类文件,也可以使用laravel ...

  8. __new__和__init__的区别

    __new__是一个静态方法,而__init__是一个实例方法. __new__方法会返回一个创建的实例,而__init__什么都不返回. 只有在__new__返回一个cls的实例时后面的__init ...

  9. restful 规范(建议)

    需求:开发cmdb,对用户进行管理. 做前后端分离,后端写api(URL),对用户表进行增删改查,应该写四个URL(还要给文档(返回值,返回,请求成功,干嘛,失败,干嘛)),然后分别写视图函数. ht ...

  10. python爬虫scrapy的LinkExtractor

    使用背景: 我们通常在爬去某个网站的时候都是爬去每个标签下的某些内容,往往一个网站的主页后面会包含很多物品或者信息的详细的内容,我们只提取某个大标签下的某些内容的话,会显的效率较低,大部分网站的都是按 ...