vim关于 引号和 括号的 高效操作-很好很强大的!

时间:2024-01-12 12:24:08

http://blog.csdn.net/bigshady/article/details/6019963

  • 对括号匹配, 进行跳转, 使用的是%. 匹配的括号, 都会被高亮显示, 但是: 根据光标的 "闪烁" 来区分当前 光标实际所在的位置!

我觉得, linux中, 如vim程序, 它的 一些命令(单字命令 满有意思 的, vim的命令, 并不是一些 完全没有 规律的 字母组合, 是有特定 含义的 甚至是很有趣的 一些符号和命令 的组合, 比如: 要记住 为什么括号间的跳转是%? 其实 这个 % 是满形象, 生动的: 在一个括号中, 从 "开头...包含内容...到结尾 " 这样的意思, 用什么符号来表达比较好: 用% : 上面的那个0表示 括号的开头, 下面的那个o表示 括号的结束, 中间的斜线 表示 括号开头和结尾 之间 的内容 分隔.... 所以 这个 % 是一种 象形 的表示! 不知道 bram 布拉姆跟我想的是不是一样的了?

  • 而对括号本身的命令是: {和}是对段落进行跳转开头/结尾, (和)是针对一个句子的开头/结尾. [[和]]则是对函数的跳转开头和结尾

  • 还可以对位置 (只是针对行, 在行中的任意位置处标记, 跳转都是到 这一行 的"开头")进行标记, 先标记位置: m a-z, 然后使用标记: '标记: 跳到前面标记的位置处, ''两个但引号, 跳回到原来的位置... 注意 标记 和跳转的 的时候 , 是在 "normal" 状态下进行的!!

其实 ,''两个单引号, 不只是对位置标记 起作用, 它其实是在当前位置和 上一位置 之间进行交替跳变 的 一个 通用操作.. 那么这个是不是比word中的 操作跟 方便呢??

http://www.linuxsong.org/2010/09/vim-quick-select-copy-delete/

  • 这个表示 , 上下左右这些 移动键 的操作, 也可以用 尖括号来表示: 如 <left>, right>, up> down>

在markdown中, 如何来表示尖括号呢? 你不能用code标签内 的写法, 因为即使是code, 在遇到尖括号的时候, 一样会解析成特殊代码, 而不是 literal 字面字符串. 有两种解决方案: 一是: 用markdown的行内的 两个反引号的方式: <left> <right>. 二是: 使用html entity: 用&加lt加分号的方法, gt的方式来表示: < left >

http://colder.blog.163.com/blog/static/17394661820124201611732/

一般vim的命令, 是在normal方式下执行的, 因为, 如果在insert方式下, 你输入 "所谓的命令字符串" , 会直接的被显示在文章 中了, 而不是作为命令来parse了

关于单引号, 双引号, 括号(大中小/ 尖括号)在noraml状态下的操作规律:

  • 这个操作命令由三个部分组成 : 操作类型(选择/删除/修改等) + i/a + 符号
  • i/a: 对符号内的内容进行操作, 使用i, 对包括符号在内的 内容进行操作 使用a
  • 操作类型包括: c表示修改, d表示删除, y表示复制yank, v(visual选择模式)表示选择

因此 , 举例来说, di{ 就表示删除大括号中的内容!

c和d的区别: d表示删除 但删除后仍然处于 normal状态, 而cc: 表示删除行同时 还会转换为 insert 状态!! c: change!

其实, 关于括号的操作也是很好理解的了: 跟其他普通的: 删除单词, 替换字母等的操作 是类似的了! dw是删除后面的一个单词, d2w, c3w, 4yy等, 举例: di{, da(, 意思也很明显: d是动词, {, ( , [, 表示对象, 表示 前面的动作 要操作的对像, 中间的i, a 类似于 d2w, c3w中的2,和3. 表示范围: 因此di{: delete inner {: ~= d2w: delete 2 word. 表示 删除 内部 { 中的内容....

ya(: yank all (: 复制全部(括号中的内容...

======================================== ==