1、光标移动:

(1)、NG -> 移动到第N行,或者使用:N

(2)、gg -> 移动到第一行

(3)、G -> 移动到最后一行

(4)、单词移动:

  w -> 移动到下一个单词的开头

  e -> 移动到下一个单词的结尾 (注:使用小写的e和w,如果认为单词由字母,数字,下划线组成,即程序变量,否则用大写的E和W,若认为单词由blank字符分隔,即程序语句)

(5)、%匹配括号移动,包括( , { , [

(6)、#和*:匹配光标当前所在单词,#表示移动到上一个匹配单词,*表示移动到下一个匹配单词

2、复合操作:

(1)、很多命令都可以采用如下格式进行复合操作:

<start postion><command><end position>

例如0y$命令意味着:

0 -> 操作的开始位置为行头

y -> 进行拷贝操作

$ -> 操作的结束位置为行尾

再如,ye则表示从当前位置拷贝到本单词的最后一个字符,y2/foo则可以用来拷贝两个"foo"之间的字符串。

3、单行操作:

(1)、0 -> 移动到行头

(2)、$ -> 移动到行尾

(3)、^ -> 移动到本行第一个非blank字符

(4)、g_ -> 移动到本行最后一个非blank字符

(5)、fa -> 移动到下一个为a的字符处,同时可以将a改为任何其他字符

(6)、t, -> 移动到逗号前的第一个字符,同时可以将','改为任何其他字符

(7)、3fa -> 查找当前行第三个出现的a

(8)、F和T -> 移动方向和f,t相反

4、块操作: Ctrl + v (写注释很有用)

行前添加内容:"Ctrl + v" 进入块操作模式 -> 移动光标选定块大小 -> "I" 进入插入模式 -> 输入内容 -> 按ESC键使每行生效

行后添加内容:"Ctrl + v"进入块操作模式 -> 移动光标选定块大小 -> “$” 移动到行尾 -> 输入内容 -> 按ESC键使每行生效

5、自动补齐: Ctrl + p 或者 Ctrl + n

在Insert模式下,输入单词的开头,按Ctrl + p 或者 Ctrl + n 自动补齐功能出现

6、分屏操作:

(1)、使用大写的O参数来垂直分屏:(小写的o为水平分屏)

vim -O file1 file2 file3...

(2)、屏幕变大: [Ctrl + w] +

(3)、屏幕变小:[Ctrl + w] -

参考:

http://coolshell.cn/articles/5426.html

http://coolshell.cn/articles/1679.html

Vim tips的更多相关文章

  1. Vim tips——Working with external commands

    A common sequence of events when editing files is to make a change and then need to test by executin ...

  2. vim tips 集锦

    删除文件中的空行 :g/^$/d g 表示 global,全文件 ^ 是行开始,$ 是行结束 d 表示删除该 这里只能匹配到没有白空符的空行,假如要删除有空白符的空行,则使用: :g/^\s*$/d ...

  3. Ubuntu下VIM的安装及其配置——Linux篇

    一.Ubuntu系统默认内置: 实际上ubuntu默认没有安装老版本的vi,只装了vim.vi是vim.tiny(vim的最小化版本,不含 GUI,并且仅含有一小部分功能,并且默认与vi兼容.此软件包 ...

  4. Vim ide for shell development

    Source : This article is part of the ongoing Vi / Vim Tips and Tricks Series. As a Linux sysadmin or ...

  5. 最佳vim技巧

    最佳vim技巧----------------------------------------# 信息来源----------------------------------------www.vim ...

  6. 程序猿的编程神器 - vim

    一.官方文档: 当你首次安装好 Vim 之后.能够用 :help tutor 或者 :help tutor@cn 命令.进入一个30分钟的 Vim 新手教程.你也能够下载一个 Vim Document ...

  7. 15个不起眼但非常强大的 Vim 命令

    如果我的关于这个话题的最新帖子没有提醒到你的话,那我明确地说,我是一个 vim 的粉丝.所以在你们中的某些人向我扔石头之前,我先向你们展示一系列“鲜为人知的 Vim 命令”.我的意思是,一些你可能以前 ...

  8. VIM命令集

    Command Action Notes vim file +54 open file and go to line 54 any : command can be run using + on co ...

  9. Ubuntu 16.04 Vim安装及配置【转】

    转自:http://www.cnblogs.com/ace-wu/p/6273031.html 安装VIM 默认已经安装了VIM-tiny acewu@acewu-computer:~$ locate ...

随机推荐

  1. 重新想象 Windows 8 Store Apps (55) - 绑定: MVVM 模式

    [源码下载] 重新想象 Windows 8 Store Apps (55) - 绑定: MVVM 模式 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 绑定 通过 M ...

  2. Unity3D脚本语言UnityScript初探

    译者注: Unity3D中支持三种语言:JavaScript.C#.Boo,很多人不知道如何选择,通过这篇译文,我们可以搞清楚这三者语言的来龙去脉,对选择主语言有一定的借鉴意义. 首先,Unity是基 ...

  3. 使用PreparedStatement执行SQL语句时占位符(?)的用法

    1.Student数据库表 ID  name gender       2.Java代码 public static void main(String[] args) { int _id=1; Str ...

  4. Java字符串格式化String.format常用用法

    常规的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形 ...

  5. Java学习笔记之_JDBC

    JDBC简介 1.SUN公司为了简化,统一数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC 2.数据库驱动 3.JDBC全称为:JAVA DataBase Commectivity(j ...

  6. JavaScript基础10——node对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  7. Sass学习之路(1)——Sass简介

    Sass是CSS的一种预处理器语言,类似的语言还有Less,Stylus等. 那么什么是CSS预处理器? CSS 预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为 CSS 增加了一些 ...

  8. CSS 选择器汇总

    CSS 选择器 CSS 元素选择器 CSS 选择器分组 CSS 类选择器详解 CSS ID 选择器详解 CSS 属性选择器详解 CSS 后代选择器 CSS 子元素选择器 CSS 相邻兄弟选择器 CSS ...

  9. 关于制作报奖PPT的小结

    从9月26日接到制作报奖材料的任务开始,6个人(不包括审查领导和美工人员)忙活了半个多月终于交稿了,翻一下时间日志,10月1日前大概投入了13个小时,10月13日交稿又讨论修改了67个小时,总共算起来 ...

  10. Android自动更新安装后显示‘完成’‘打开’按钮

    /** * 安装apk * * @param url */ private void installApk() { File apkfile = new File(apkFilePath); if ( ...