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. VB调用存储过程 - CreateParameter 方法

    这次又转为VB6了.......  (┬_┬) ---------------------------------------------------------------------------- ...

  2. 提高你css技能的css开发技巧(转载)

    一.resize实现图片对比 resize的语法如下: resize:none | both | horizontal | vertical 案例效果如下图 (鼠标移到左下角白色区域,往右侧拖动,实现 ...

  3. AWT布局管理器

    布局管理器 容器内可以存放各种组件,而组件的位置和大小是由容器内的布局管理器来决定的.在AWT中为我们提供了以下5种布局管理器: ①   FlowLayout 流式布局管理器 ②   BorderLa ...

  4. 第四组 12月8号sprint会议

    会议时间:12月8号,16:30会议地点:蛙鸣湖旁小树林 会议进程:   1.首先对到场人员进行点名   2.对程序主要功能进行讨论,每人都可以自由发言,然后分配每个成员的任务,并决定实现第一个功能: ...

  5. python——请求服务器(http请求和https请求)

    一.http请求 1.http请求方式:get和post get一般用于获取/查询资源信息,在浏览器中直接输入url+请求参数点击enter之后连接成功服务器就能获取到的内容,post请求一般用于更新 ...

  6. SQL 分页

    sql = "SELECT TOP 10000 * " + " FROM(SELECT ROW_NUMBER() OVER(ORDER BY DataArticleID) ...

  7. Fortran 笔记

    1.将字符串写入文本 open(,File=trim("e:\XRIVER_LOG.txt"), ACCESS = 'APPEND')!ACCESS = 'APPEND' 在文本末 ...

  8. MyEclipse配置Tomcat开发JavaWeb程序JSP以及Servlet

    1.安装准备 1).下载安装MyEclipse2014,这已经是最新版本. 2).下载Tomcat 官网:http://tomcat.apache.org/ 我们选择8.0: http://tomca ...

  9. HTML页面弹出自定义对话框带遮蔽罩(使用JavaScript)

    转载:http://blog.sina.com.cn/s/blog_610f47c50100ohe4.html 原理其实很简单:首先绘制弹出的自定义对话框,将其使用display:none隐藏,因为设 ...

  10. shell编程之运算符

    declare声明变量类型 declare    [+ / -] [选项]  变量名 - :给变量设定类型属性 + :取消变量的类型属性 -a :将变量声明为数组型 -i :将变量声明为整数型 -x ...