vim的设计理念是:组合。
命令的组合,模式的组合,
 
 
普通模式
左: h 上:k 下:j 右 : l
 
i : 当前光标处插入
I: 到光标所在行的行首进入插入模式
a: 在当前光标的后一位进入插入模式(append追加)
A: 光标所在行尾进入插入模式
o: 当前行的下面开启新的一行,进入插入模式
O: 当前行的上面一行开启新的一行,进入插入模式
 
定位:
gg: 定位到文档头
G: 定位到文档尾
nG:移至第n行
H:移至屏幕上面
M:屏幕中间
L:屏幕下面
*:读取光标处字符串,并移动至下一处同样内容
#:读取光标处字符串,并移动至上一处同样内容
CTRL-f:向下移动一屏
CTRL-b:向上移动一屏
 
复制(yank):
nyy :  复制n行
粘贴(paste):
np : 将最后一次删除或复制的内容(即寄存器的内容)粘贴n次
 
查找:
/  +字符串       或者空格:(空格是自定义键)(向后查找字符串)
?+字符串      (向前查找字符串)
之后按n键定位至下个目标处。
 
替换:
r+要替换的字符:替换光标所在处的字符
 
撤销:u
反撤销: Ctrl + r
 
删除/剪切 (删除是将目标内容移至寄存器,可以粘贴):
x : 删除当前光标下的字符
dw:从光标处删除至一个单词的末尾(包含空格)
de:从光标处删除至一个单词的末尾(不包含空格)
(n)dd:删除当前(n)行
d$:删除当前光标到行尾(to the end of line)
D: 删除当前光标到行尾(自定义)(=d$)
dG : 删除到文档尾(自定义)
 
删除总结:
格式如下:
number d object 或者  d number object
其中number代表执行命令的次数,默认为1;d代表删除;object代表命令操作的对象(w--光标处删除至一个单词的末尾,包含空格;e--光标处删除至一个单词的末尾,不包含空格;$ --行尾,当前光标到行尾;j--移动到下一行;^--行首,光标至行首;)
 
退出插入模式: Esc

结构化的删除:
cit/cat : 删除标签结构(tag)
ci<>/ca<> : 删除尖括号,或者里面内容
ci()/ca(): 删除小括号,或者内容
ci[]/ca[]: 删除中括号,或者里面的内容
ci{}/cat{}: 删除大括号.或者里面的内容

Zend-Coding
html: (xs/xt/5)  -->Ctrl + y -->,

插入/输入模式

Ctrl + n : 向左移动光标
Ctrl + l : 向右移动光标
Ctrl + j : 向下
Ctrl + k : 向上移动光标

Ctrl + h : 删除前一个

命令行模式:
:w  <回车>保存
:q  <回车> 退出
:q!<回车> 强制退出(不保存)
:wq <回车> 保存再退出
:set fenc<回车> 查看文档的编码
 
:%s   /原始内容/替换的内容/g <回车>   替换    --------(g--global全局的,此处即为替换所有。不加g为替换第一个。不加%为在一行内替换所有。逐项询问用户确认为/gc)
 
 
 
 
普通模式的移动相关的命令:
概念--motion:当光标从一处移动到另一处,这两点之间的文本被称作“跨过”,这里的命令被称作motion。
 
b:向前移动一个单词
w:向后移动一个单词
0(数字):移至当前行首
^:移至当前行第一个字母
$:移至当前行行尾
):移至下一个句子
(:移至上一个句子
%标签对应

VIM的一些操作小技巧的更多相关文章

  1. OMG,12 个精致的 Java 字符串操作小技巧,学它

    字符串可以说是 Java 中最具有代表性的类了,似乎没有之一哈,这就好像直播界的李佳琪,脱口秀中的李诞,一等一的大哥地位.不得不承认,最近吐槽大会刷多了,脑子里全是那些段子,写文章都有点不由自主,真的 ...

  2. mysql避免数据库误操作小技巧(转)

    避免混淆开发环境的DB和生产环境的DB这在小公司小团队尤其常见.一个人即负责开发,又管DB.桌面上开了一坨终端,有的是开发的DB,有的是生产的DB.一不留神,就写串了,或者粘贴串了.更郁闷的是,有时候 ...

  3. vim字符串替换及小技巧

    vi/vim 中可以使用 :s 命令来替换字符串.以前只会使用一种格式来全文替换,今天发现该命令有很多种写法(vi 真是强大啊,还有很多需要学习),记录几种在此,方便以后查询. :s/vivian/s ...

  4. mac文本操作小技巧——2019年10月17日

    声明:看的别人博主写的,自己整理的,非原创,只是自用. mac文本操作技巧 官方指导文档:https://support.apple.com/zh-cn/HT201236 1.光标移动 1.1 行首. ...

  5. Windows 操作小技巧 之一(持续更新)

    1.图片批量旋转 通常携带单反去景点排了大量照片回来处理图片时都会遇到很多横竖杂乱排序的图片难以处理的情形.现提供如下技巧进行处理. 1).在文件夹中添加"方向"的排列或分组选项: ...

  6. My操作小技巧

    1.当我们新增一条数据之后想要获取其自增长的id,可以紧随新增语句后调用 SELECT last_insert_id();即可获得,一般搭配变量一起使用 SELECT @newUserId:=last ...

  7. Intellij IDEA的一些操作小技巧

    1.Presentation Mode 我们可以使用 Presentation Mode,将IDEA弄到最大,可以让你只关注一个类里面的代码,进行毫无干扰的 coding.可以使用Alt+v快捷键,弹 ...

  8. Unity操作小技巧

    1.操作类 1)F:选择物体后聚焦 2)V:选择物体的顶点,顶点吸附 3)Ctrl:摁住后拖动物体,可以按照系统设置的步长进行移动(Edit -> Snap setting) 4)Q W E R ...

  9. linux操作小技巧

    巧妙利用别称 alias,让工作更有效率 在我的个人目录下/home/zdwu,打开.bashrc文件进行修改: 将  ll='ls -alF' 改为 ll='ls -ahlF',是的观察的结果显示更 ...

随机推荐

  1. easyui combobox点击输入框弹出下拉框

    由于easyui combobox需要点击下拉箭头才能下拉,不能像select标签那样点击输入框就下拉,所以觉得不太方便,查看了一下,combobox弹出框是一个div,原本想在他的输入框的点击事件中 ...

  2. js 下载图片与下载文件的方式一样;保存至本地 ASP.NET 方式

    <asp:Button ID="btnDownLoad" runat="server" style="display: none" T ...

  3. python批量处理excel文件数据

    https://www.zhihu.com/question/39299070?sort=created 作者:水中柳影链接:https://www.zhihu.com/question/392990 ...

  4. Class对象即反射

    Class对象 当ClassLoader加载一个class文件到JVM的时候,会自动创建一个该类的Class对象,并且这个对象是唯一的,后续要创建这个类的任何实例,都会根据这个Class对象来创建.因 ...

  5. mysql+ibatis 批量插入

    述:相比oracle批量插入,mysql批量插入就简单的多了,mysql支持values后面跟多条数据,进行批量插入,并且主键可以自增,不像oracle会遇到序列问题. 1.建表 CREATE TAB ...

  6. 关于js中闭包的理解

    1.以前很不理解js中闭包的概念及使用,下面来看一下 function foo() { var a = 123; var b = 456; return function () { return a; ...

  7. [转载] Java高新技术第一篇:类加载器详解

    本文转载自: http://blog.csdn.net/jiangwei0910410003/article/details/17733153 首先来了解一下字节码和class文件的区别: 我们知道, ...

  8. 2016国内最值得期待的响应式前端框架pintuer(拼图)--http://www.pintuer.com

    近期,需要将项目从pc端的应用扩展到移动端. 当然移动框架的第一选择必然是bootstrap,但是bootstrap作为移动端明显过于死板,而且作为国外的产品,对于国内的应用明显水土不服.框架里总有那 ...

  9. 郑捷《机器学习算法原理与编程实践》学习笔记(第四章 推荐系统原理)(二)kmeans

    (上接第二章) 4.3.1 KMeans 算法流程 算法的过程如下: (1)从N个数据文档随机选取K个文档作为质心 (2)对剩余的每个文档测量其到每个质心的距离,并把它归到最近的质心的类 (3)重新计 ...

  10. Webstorm官方最新版本for Mac版本 不用注册码/破坏原文件

    首先,说明下我自己安装的时候看到网上无外乎两种方法: 下载别人封装好的安装包,把JetbrainsCrack.jar复制到/Applications/WebStorm.app/Contents/bin ...