这几天刚开始接触vi编辑器,慢慢开始熟悉vi,但是还是感觉诸多不便,比如说复制粘贴删除操作不能用鼠标总是感觉不自在,而且我一般习惯用方向键移动光标,更增加了操作的复杂度,今天在网上搜索了一下,vim编辑相关的快捷键如下:

1.删除操作

  删除操作是我最先适应的,快捷键如下:

    1.删除整行:命令模式下,按下dd可以删除光标所在行,按u键可以撤销操作,按U键撤销所有操作。

    2.删除第m到第n行 :冒号模式下,输入’m,nd‘,比如,要删除第3到第4行,输入’:3,4d‘即可,撤销依然是u键。

    3.删除从光标所在行开始的m行:命令模式下,键入’mdd‘即可,例如,想删除从当前光标所在行开始的2行,输入’2dd‘即可。

      注:其实也可以用’mdj‘,但是不如’mdd‘方便。同样的’mdk‘删除从光标所在行开始往上数的m行。

    4.删除光标所在字符开始到单词结尾(包括空格)的一个单词:命令行模式下输入dw。

     删除光标所在字符开始到单词结尾(包括空格)的m个单词:命令行模式下输入mdw。

    5.删除光标位置的一个字符:命令行模式下输入x(其实X也可以,但是没必要这么麻烦,对不?)。

     删除从光标位置开始的m个字符:命令行模式下输入mx

    6.删除当前光标所在字符到行尾的所有字符:命令行模式下输入d$

    7.删除当前光标所在字符开始的n个字符:命令行模式下输入ndl或者ndh

    可以看到,删除的主键是字符’d‘

2.复制操作

  复制操作是我最想用的操作,一起习惯了用鼠标来选定区域的我一时半会最难以接受的就是vi的复制区域选定和快捷键,复制的快捷键如下:

    1.复制整行:命令行模式下,输入yy

    2.复制从当前光标所在行开始的m行:命令行模式下输入myy

      注:myj也是可以的,myk只不过是方向相反而已。

    3.复制从当前光标所在字符到该字符所在单词的结尾(包括空格)开始的的m个单词:命令行模式下输入myw

    4.复制从当前光标所在字符到该字符所在单词的结尾(包括空格)的内容:命令行模式下输入yw

    5.复制当前光标所在字符到该行的结尾所有字符:命令行模式下输入y$

    6.复制当前光标所在字符到该行行首所有字符:命令行模式下输入y^

    7.复制当前光标所在字符开始的n个字符:命令行模式下输入nyl或者nyh,其中l和h是指明方向的

    复制的主键是’y‘

3.粘贴操作

  键入’p‘即可,多文件复制粘贴我先不考虑,后续等我熟练了再说。

4.替换操作

  替换操作的主键是’s‘,具体来说,各个操作的快捷键如下:

    1.用new替换掉光标所在行中首次出现的old:冒号模式下键入’s/old/new‘,注意,没有空格

    2.用new替换掉光标所在行中所有的old:冒号模式下键入:’s/old/new/g‘

    3.用new替换掉第m到第n行中出现的所有old:冒号模式下键入:’m,n s/old/new‘

    4.用new替换掉整篇中的old:冒号模式下键入:’% s/old/new‘

暂且先记录这么多吧,再接再厉!!

    

vi--文本编辑常用快捷键之复制-粘贴-替换-删除的更多相关文章

  1. Linux 文本编辑常用快捷键

    一.编辑模式 vim有三种编辑模式 1. i 进入文本编辑模式 2. esc 进入命令编辑模式 命令编辑状态下 dd删除整行 3. :进入底行模式 底行模式状态  输入q 退出 w保存  wq 保存并 ...

  2. 【xshell】xshell设置快捷键 设置Ctrl+C Ctrl+V快捷键为复制粘贴

    在使用xshell的时候,总是不能顺手的进行复制粘贴的操作. 那能不能设置xhsell的快捷键呢? 点击工具--->选项---> 选择 键盘和鼠标 选项卡--->点击编辑----&g ...

  3. vi学习 常用命令-新建-复制-剪切-粘贴

    mkdir /home/brandon.du/desktop/mylinux/test_1.txt   ---------mkdir新建文件夹 rm /home/brandon.du/desktop/ ...

  4. vim基本命令之剪切复制粘贴替换

    首先是剪切(删除): 剪切其实也就顺带删除了所选择的内容,所以既可以当剪切命令用,也可以当删除命令使用. 1 首先,可以在命令模式下输入v进入自由选取模式,选择需要剪切的文字后,按下d就可以进行剪切了 ...

  5. vi 编辑器常用快捷键

    vi 编辑器 vim 编辑器算是vi的进阶版本 所有的unix like 系统都会内建vi编辑器 vi三种模式分别为: 1.一般模式(默认模式或指令模式) 上下左右方向键 移动光标 pageUp pa ...

  6. 11、jeecg 笔记之 界面常用整理 - 方便复制粘贴

    1.datagrid 操作按钮(按钮样式) 操作按钮的显示主要依赖于 <t:dgCol title="操作" field="opt"  ></ ...

  7. Android Stuido 常用快捷键

    Android Stuido 常用快捷键 Ctrl + Z : 撤消 Ctrl + G : 定位行 Ctrl + / : 单行注释 Ctrl + Shift + Z : 恢复 Ctrl + J : 快 ...

  8. Linux学习(1)-常用快捷键、文件管理和查询

    有话要说 为什么要用Linux?要用Linux的原因太多,想说说不完啊. 如果你说用Linux只是为了装逼,那证明你真的还很菜.不排除有装逼了因素,那也只占非常少的比例,可以忽略不计. 我们反问一下, ...

  9. Linux常用快捷键、文件管理和查询

    有话要说 为什么要用Linux?要用Linux的原因太多,想说说不完啊.如果你说用Linux只是为了装逼,那证明你真的还很菜.不排除有装逼了因素,那也只占非常少的比例,可以忽略不计.我们反问一下,为什 ...

随机推荐

  1. 360云盘、百度云、微云……为什么不出 OS X(Mac 端)应用呢?(用户少,开发成本高)(百度网盘Mac版2016.10.18横空出世)

    已经说的很好了,现有的云盘所谓的 OS X 版只有云同步功能,不过 115 是个例外,不过 115 的现状……不言自明.接下来说点和本题答案无关的,其实在官方客户端流氓 + 限速的大背景下 OS X ...

  2. 本人arcgis api for javascript中常见错误总结

    1. 2.对象不支持"replace"属性或方法 解决办法:一般在ie中执行js会报这样的错误,基本问题就是你引用了某个对象中不存在的方法,可能是这个方法本来存在而你写错了,或者调 ...

  3. Java API —— 递归

    1.方法定义中调用方法本身的现象 2.递归注意实现         1) 要有出口,否则就是死递归         2) 次数不能太多,否则就内存溢出         3) 构造方法不能递归使用 3. ...

  4. Spring Boot实现一个监听用户请求的拦截器

    项目中需要监听用户具体的请求操作,便通过一个拦截器来监听,并继续相应的日志记录 项目构建与Spring Boot,Spring Boot实现一个拦截器很容易. Spring Boot的核心启动类继承W ...

  5. .Net MVC API初试

    新建.net mvc api项目后,直接运行,默认会访问http://localhost:xxxx/Home/Index页面,这个页面不是要访问的API页面. 从项目的目录可以看出,默认的API页面访 ...

  6. Linux 线程属性函数总结

    1.初始化一个线程对象的属性 int pthread_attr_init(pthread_attr_t *attr); 返回值:若是成功返回0,否则返回错误的编号 形 参: attr 指向一个线程属性 ...

  7. 转 命令行下玩VC

    说明:(1)转载请注明出处:http://www.cnblogs.com/opangle/p/4298155.html (2)以下以VS2013为例,并假设VC安装路径为%VC_INSTALL_PAT ...

  8. ArrayList和List之间的转换

    开发中不免碰到List与数组类型之间的相互转换,举一个简单的例子: package test.test1; import java.util.ArrayList; import java.util.L ...

  9. Java [Leetcode 260]Single Number III

    题目描述: Given an array of numbers nums, in which exactly two elements appear only once and all the oth ...

  10. BZOJ3540: [Usaco2014 Open]Fair Photography

    3540: [Usaco2014 Open]Fair Photography Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 72  Solved: 29 ...