玩转Vim-札记

距上篇博文已有一周有余,上次主要介绍了编辑器之神Vim的起源、安装并介绍了两种模式以及一些简单的操作。本次将继续对Vim的使用进行介绍。

登堂入室

  首先接着说移动吧:

1 0 → 数字零,到行头
2 ^ → 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)
3 $ → 到本行行尾
4 /pattern → 搜索 pattern 的字符串(如果搜索出多个匹配,可按n键到下一个)

  接下来就是一些常规的编辑的命令,通过它们你将能进行一些基本的操作,譬如复制粘贴、取消等:

1 yy → 拷贝当前行
2 p → 粘贴
3 dd → 删除当前行
4 u → 撤销上次操作
5 <C-r> → 返回撤销前一步(撤销多了可用)

  当你编辑完之后想要对文件进行一些操作你会怎么办呢?别急,接着往下看:

1 :w → 保存(不过我一般用下面那个命令)
2 :wq → 保存并退出
3 :x → 同上
4 :q → 没有进行任何改动,仅仅查看的话可用
5 :q! → 进行改动后却又不想保存改动,强制退出
6 :saveas <path/to/file> → 另存为 <path/to/file>
7 :e <path/to/file> → 不退出当前文件打开另一个一个文件(PS:可用tab键进行路径补全,若当前文件有改动,可用:e! <path/to/file> → 打开一个文件)

 当你掌握上面的指令之后,你已经算是练到登堂入室了。若想进军到登峰造极,那么请接着往下看。

登峰造极

  来到这里,说明你的好奇心还是有的,并且还是有那么点上进心的,好的,首先我们来学习下如何进行更快速的光标移动,怎么,感觉光标移动很无趣,很简单?如果你不想你的大多时间花费在光标移动的话,那么我劝你还是继续往下看吧:

1 NG → 到第 N 行 (陈皓注:注意命令中的G是大写的,另我一般使用 : N 到第N行,如 :137 到第137行)
2 gg → 到第一行。(陈皓注:相当于1G,或 :1)
3 G → 到最后一行。
4 按单词移动:
5 w → 到下一个单词的开头。
6 e → 到下一个单词的结尾。

  这样就没了吗?当然不是咯,或许你知道/pattern → 搜索 pattern 的字符串(如果搜索出多个匹配,可按n键到下一个),但是还有一个指令不用那么麻烦也可以做到哦,请看下面:

1 * 和 #:  匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词(*是下一个,#是上一个)

  那么我们接着说说如何重复一个指令:

1 . → (小数点) 可以重复上一次的命令
2 N<command> → 重复某个命令N次

  怎么样,有没有感受到Vim的强大,其实还远远不止这些,其实Vim的各种指令都是可以组合的哦,也就是下面这样:

1 <start position><command><end position>

  举几个栗子:

  dG:删除光标所在行直至文本末尾。

  ye:从当前位置拷贝直至本单词最后一个字符。

  好了,今天的内容就到此结束了,敬请期待下次的内容。

PS:本博客欢迎转发,但请注明博客地址及作者,因本人水平有限,若有不对之处,欢迎指出,谢谢~

  博客地址:http://www.cnblogs.com/voidy/

  博客新址:http://voidy.net

  <。)#)))≦

评论
 
分类: Tools
标签: 编辑器Vim

玩转Vim-札记的更多相关文章

  1. 玩转VIM之将Vim全副武装

    玩转VIM之将Vim全副武装 懒癌末期的我貌似很久没有写博客了,已经欠了多少篇在计划中的博客我已然不好意思说了.好了,言归正传,在前三篇介绍了Vim作为代码编辑器之后可能会有人说,要学习那么多指令真的 ...

  2. 玩转Vim 编辑器

    一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...

  3. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  4. 辛星跟您玩转vim第一节之vim的下载与三种模式

    首先值得一提的是,我的vim教程pdf版本号已经写完了,大家能够去下载,这里是csdn的下载地址:点此下载 ,假设左边的下载地址挂掉了,也能够自行在浏览器以下输入例如以下地址进行下载:http://d ...

  5. 辛星跟您玩转vim第二节之用vim命令移动光标

    首先值得一提的是,我的vim教程pdf版本号已经写完了,大家能够去下载.这里是csdn的下载地址:csdn下载.假设左边的下载地址挂掉了,也能够自行在浏览器以下输入例如以下地址进行下载:http:// ...

  6. 辛星跟您玩转vim第四节之操作文本内容

    首先值得一提的是.我的vim教程pdf版本号已经写完了.大家能够去下载,这里是csdn的下载地址:csdn下载,假设左边的下载地址挂掉了,也能够自行在浏览器以下输入例如以下地址进行下载:http:// ...

  7. 玩转vim编辑器

    1.vim 编辑器可以自定义配置:包含初始化命令的文件叫vimrc(h vimrc),version ---查看版本号.系统-用户配置文件所在位置. 2. 可视模式: 操作一块区域代码: 按v    ...

  8. 辛星跟您玩转vim第三节之程序猿特须要的移动方式

    前面第二节我首先值得一提的是,我的vim教程pdf版本号已经写完了.大家能够去下载,这里是csdn的下载地址:csdn下载.假设左边的下载地址挂掉了.也能够自行在浏览器以下输入例如以下地址进行下载:h ...

  9. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  10. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

随机推荐

  1. [LeetCode141]Linked List Cycle

    题目:Given a linked list, determine if it has a cycle in it. 判断一个链表是否有环 代码: /** * Definition for singl ...

  2. 多功能截图工具(WinSnap)4.5.6 绿色汉化版(附注册码)

    http://www.uzzf.com/Soft/9840.html 注册名:www.uzzf.com 注册码:FGE5ML-XD2C0G33-GCMDLRB5

  3. 开源通讯组件ec

    跨平台开源通讯组件elastic communication elastic communication是基于c#开发支持.net和mono的通讯组件(简称EC),EC的主要目的简化mono和.net ...

  4. ExtJS学习-----------Ext.Number,ExtJS对javascript中的Number的扩展

    关于ExtJS对javascript中的Number的扩展,能够參考其帮助文档,文档下载地址:http://download.csdn.net/detail/z1137730824/7748893 以 ...

  5. Windows创建的基本含义和进程的进程的内核

    过程 1 这意味着过程: 1.1   一个是在操作系统的内核对象管理处理. 的统计信息的地方. 1.2   还有一个是地址空间.它包括全部可运行模块或DL L 模块的代码和数据.它还包括动态内存分配的 ...

  6. Action、Category、Data、Extras知识具体解释

    开头 Intent作为联系各Activity之间的纽带,其作用并不仅仅仅仅限于简单的数据传递.通过其自带的属性,事实上能够方便的完毕非常多较为复杂的操作.比如直接调用拨号功能.直接自己主动调用合适的程 ...

  7. fastclick 源码阅读备份

    ;(function () { 'use strict'; //构造函数 function FastClick(layer, options) { var oldOnClick; options = ...

  8. Ehcache BigMemory: 摆脱GC困扰(转)

    问题 使用java开源项目经常需要调优jvm,以优化gc.对于gc,如果对象都是短时对象,那么jvm相对容易优化,假如碰上像solr使用自带java cache的项目,那么gc严重受限于cache,因 ...

  9. ExtJS学习笔记:定义extjs类别

    类的定义 Ext.define('Cookbook.Vehicle', { Manufacturer: 'Aston Martin', Model: 'Vanquish', getDetails: f ...

  10. 采用Flume实时采集和处理数据

    它已成功安装Flume在...的基础上.本文将总结使用Flume实时采集和处理数据,详细过程,如下面: 第一步,在$FLUME_HOME/conf文件夹下,编写Flume的配置文件,命名为flume_ ...