vim操作



插入模式         命令行模式        
末行模式



命令行模式  ->   插入模式

i --->   在当前光标的前一个插入

I --->   在行首插入

a --->   在当前的光标的后一个插入

A --->   行尾插入

o --->   在光标所在的这一行的下一行插入

O --->   在光标所在的这一行的上一行插入

s --->   删掉当前光标所在的字符并且进入插入模式

S --->   删掉当前光标所在的这一行并且进入插入模式





命令行模式下:

    dd  删除当前光标所在的这一行

    yy 复制当前光标所在的这一行

    p  粘贴之前复制的文本,在当前光标的下一行

    P  粘贴之前复制的文本,在当前光标的上一行

   

    连用

    d + 向下键   删除当前光标所在的行及下一行   ==> dj

    d + 向上键   删除当前光标所在的行及上一行   ==> dk

    d + 向左键   删除当前光标前一个字符         ==> dh

    d + 向右键   删除当前光标所在的一个字符     ==> dl



    h    j     k      l

    左   下    上    




    ndd  删除从当前光标所在的行的以下n行



    gg   跳到当前文本的第一行

    G    跳到当前文本的最后一行

     

    ngg  可以跳到当前文本的第n行

    /*vim xxx.c  +15 */  打开文本并且跳到15行

   



    D    删除当前光标之后的这一行的所有数据

    dG   删除当前光标到文本结束的所有行



    end   跳到行尾

    home 跳到行首



    W    往后跳一个单词





    v    左右上下拉黑然后按d删除



    r + 字符  可以将当前光标下的字符替换成该字符

    n+r+ 字符  可以从当前光标开始以下的n个字符全部替换成该字符

   

    v    拉黑之后 + r + 字符  
将拉黑的区域换成该字符



    u    撤消上一步的动作

    ctrl + r  撤消上一次所撤消的东西



    块操作

    ctrl + v   进入可视块   拉黑一块区域  
按d  删除此块区域

   

    块操作  插入

    ctrl + v   往下拉    按 I  
进入块操作插入模式   输入完之后按esc退出





    打标: 暗标

    m + a --> z    在某一行打标      ' + 标码  (将光标跳到哪个标码之下)



    删除

    从当前的光标删除到标码           d + ' + 标码



    插入模式:

    ctrl + u      删除光前光标前的所有字符

    ctrl + w      删除从当前光标开始的前一个单词



    ctrl + p / ctrl + n  可以补全 (可以补全头文件的函数)

   

    末行模式:

    :wq      w  保存  q  退出    


    :wq!     !   强制

    :x       保存退出

    :X       对文本进行密码保护      取消密码  :X  
密码不写

    :e!      回到最老的文件,没有改动的文件

    :!sh

    :!bash   创建一个新的终端去做其它事情,回来时ctrl+ d

    :!command  执行该命令

    ctrl + z  将vim掉到后台,然后通过fg将vim掉到前台

    :e   xxx.c    跳到另一个文件中   e  edit 编辑    ctrl + o
返回上一次跳过去的文件

    :split   将当前窗体分成两个  水平   
窗体之间的跳转  ctrl + w + w

    :vsplit  竖直分窗体

    :n,md    从第n行删到第m行

    :n,mw  xxx.c   可以将该文本从第n行到m行保存到xxx.c中

    :nohl  取消高亮 (查找的高亮)





其它操作:



    查找

    /xxx     查找xxx向下查找   n
查找下一个  N 查找上一个

    ?xxx     向上查找          n 查找上一个  N
查找下一个

    shift +  #     快速查找 当前光标所在的单词



   

替换:

    :%s/aaaa/bbbb      全局将所有行的第一个aaaa替换成bbbb

    :%s/aaaa/bbbb/g    全局将所有的行的所有的aaaa替换成bbbb

    :%s/aaaa/bbbb/gc   以提问形式替换

    :n,ms/aaaa/bbbb/g  从第n行到m行的所有的aaaa替换成bbbb



   

    tab的宽度

    vim   /etc/vimrc

    set   ts=4



    同时打开两个文件

    vim    xxx.c  -O  xx.c      竖直

    vim    xxx.c  -o  xx.c      水平

Vim编译器的常用使用方法与技巧的更多相关文章

  1. Thinkphp常用的方法和技巧(转)

    2012年09月26日 Thinkphp 里一些常用方法和技巧的整理,包括常用的快捷键以及在程序开发时用到的一些实用方法,关于快捷键用得不是很熟练,总之,掌握这些方法和技巧,对于我们开发 thinkp ...

  2. SecureCRT是最常用的终端仿真程序,简单的说就是Windows下登录UNIX或Liunx服务器主机的软件,本文主要介绍SecureCRT的使用方法和技巧

    SecureCRT是最常用的终端仿真程序,简单的说就是Windows下登录UNIX或Liunx服务器主机的软件,本文主要介绍SecureCRT的使用方法和技巧 VanDyke CRT 和 VanDyk ...

  3. IDEA编译器的常用快捷键

    今天想简单分享一下IDEA编译器的常用快捷键 1. -----------自动代码-------- 常用的有fori/sout/psvm+Tab即可生成循环.System.out.main方法等boi ...

  4. Object Pascal 方法与技巧

    4 方法与技巧 4.1 设置代码模板 代码模板是Delphi 的代码感知特性的一种,通过它可以快速.高效和正确地输入代码.代码模板将一些常用的语句块保存在模板中,然后程序员只要在代码编辑器中按下“Ct ...

  5. Python - 集成开发环境Pycharm的使用方法和技巧

    PyCharm HomePage:PyCharm 我的Pycharm,我做主 Getting Started with PyCharm Pycharm使用技巧 Documentation & ...

  6. 【Tips】【UE】总结自己常用的UltraEdit使用技巧

    如果您问我每天都要打开的软件是什么,那毫无疑问是UltraEdit!作为一位DBA,每天都要写各种脚本,尤其是在对具有超多行行的大文件进行精心编辑时,没有一个好的文本编辑器是不成的.掐指一算,哇塞,自 ...

  7. 常用的UltraEdit使用技巧

    Tip 1: Alt+C 列模式可以说最初选择使用这个文本编辑软件,原因很简单,就是因为"她"具有列编辑模式.如果您还不知道什么是列编辑模式的话,我想您应该好好研究一下啦.这是一个 ...

  8. Vim编译器的相关知识

    Vim编译器相关知识 1.关于Vim编译器 在热门Linux操作系统中都会默认安装一款超好用的文本编辑器——名字叫“vim”,vim是vi编辑器的升级版. vim 具有程序编辑的能力,可以主动的以字体 ...

  9. 【UE】常用的UltraEdit使用技巧

    Tip 1: Alt+C 列模式可以说最初选择使用这个文本编辑软件,原因很简单,就是因为“她”具有列编辑模式.如果您还不知道什么是列编辑模式的话,我想您应该好好研究一下啦.这是一个超级“赞”的功能.在 ...

随机推荐

  1. 百度编辑器UEditor常用设置函数

    最近在研究UEditor的使用,下面是附上传送门: 这是API文档http://ueditor.baidu.com/doc/ 这是下载地址http://ueditor.baidu.com/websit ...

  2. javap反编译命令详解&Eclipse中配置javap命令

    javap命令所有参数如下图所示: javap 命令用于解析类文件.其输出取决于所用的选项.若没有使用选项,javap 将输出传递给它的类的 public 域及方法.javap 将其输出到标准输出设备 ...

  3. Android倒计时器——CountDownTimer

    Android倒计时器--CountDownTimer 说明 第一个参数是倒计时的时间 第二个参数是多长时间执行一次回调 /** * @param millisInFuture The number ...

  4. Python图片处理库之PIL

    这个模块对于Python2.7 的windows64位电脑而言,还真的是不好找啊.这里分享一个下载链接吧,需要的朋友可以下载下来.PIL For Windows64 Python2.7下面分享一下这个 ...

  5. Spark集群模式&Spark程序提交

    Spark集群模式&Spark程序提交 1. 集群管理器 Spark当前支持三种集群管理方式 Standalone-Spark自带的一种集群管理方式,易于构建集群. Apache Mesos- ...

  6. ios7内购、Game Center 实现 in-App Purchases & Game Center

    猴子原创,欢迎转载.转载请注明: 转载自Cocos2D开发网–Cocos2Dev.com,谢谢! 原文地址: http://www.cocos2dev.com/?p=514 昨天使用ios7SDK b ...

  7. malloc、calloc、relloc

    1.malloc void * malloc(size_t _Size); malloc函数在堆中分配参数_Size指定大小的内存,单位:字节,函数返回void *指针. 2.calloc void ...

  8. Android中JNI编程详解

    前几天在参加腾讯模拟考的时候,腾讯出了一道关于JNI的题,具体如下: JNI本身是一个非常复杂的知识,但是其实对于腾讯的这道题而言,如果你懂JNI,那么你可能会觉得这道题非常简单,就相当于C语言中的h ...

  9. 可视化分析工具Cytoscape使用记录

    最近项目要使用到可视化分析工具Cytoscape,所以会花费很多的时间跟精力来整理Cytoscape软件使用和开发的相关资料,希望写下的文章能减少有兴趣的同行学习跟开发所走的弯路时间.同时也是因为百度 ...

  10. Hibernate3 Criteria对象详解

    1.序言 Hibernate框架是目前JavaEE软件开发的企业主流框架,学习Hibernate必然要掌握ORM(对象关系映射Object/Relation Mapping)的概念思想, Hibern ...