vim单词高亮的功能



vim单词高亮的功能
 
sourceInsight中有单词高亮功能。一直觉得看code的时候比较好用。
 
今天找了一下vim中是否有相关的插件。发现还真有类似的功能。
 
链接如下:  www.2cto.com  
http://www.vim.org/scripts/script.php?script_id=1238
 
总结一下相关的用法,省得以后用的时候还需要再查找资料。
 
高亮的使用方法:
 
Normal mode:
 
Vim的Normal mode中,
 
\m 用来使得光标处的单词着色
 
\n 使得原先着色的单词取消着色
 
\r  输入\r后再输入正则表达式,可以高亮匹配的相关单词
 
上例子:
 
\m 演示 -- 光标移到37行a_uri处,输入\m,画面如下:

 
可以看到所有的a_uri都显示了同一种颜色。
 
\n 演示 -- 光标移到37行a_uri处,输入\n,画面如下:


 
可以看到所有的a_uri颜色都取消了。  www.2cto.com  
 
\r 演示 -- 先输入\r,然后再输入a_.*, 显示画面如下:


 
可以看到,符合正则表达式a_.*的内容都被颜色显示了。取消\r的颜色显示,只要输入\n就可以了。
 
Virtual mode:
 Visual mode下的用法同Normal mode的一样。不再详述。
 
Command Line:
mark.vim这个插件还支持在Command line中输入正则表达式对匹配的内容显示颜色。
 
在Command line中,使用:Mark regexp 的格式来标记正则表达式匹配的内容。
 
效果同\r一样。
 
如下是:Mark a_.*的显示结果, 同\r a_.*效果一样。
 

 
再次输入:Mark a_.*取消本次的高亮。
输入:Mark Other_regexp其他正则可以同时显示不同颜色的高亮。
 
使用:Mark 来取消所有的高亮结果。  www.2cto.com  
 
注意:各个模式中显示高亮和取消高亮的功能都是可以互通使用的。
 
比如,使用\r 加上输入a_.*来高亮匹配a_.*的内容后,可以输入:Mark a_.*来取消\r的高亮效果。
 
搜索方向:
 
使用\*来获取下一个高亮显示的字,使用\#来获取上一个高亮显示的字。
 
注意: 如果有多处高亮词的情况下。\*和\#是根据记录的上一个高亮词的结果来进行搜索的。
 
比如你上一次高亮的词是AAA,另外还有高亮词BBB,
 
如果此时光标不在AAA和BBB处,那么\*指的是上一个AAA,\#指的是下一个AAA
 
如果此时光标处在BBB处,那么\*自动匹配BBB,指的是上一个BBB,\#指的是下一个BBB
 
另计:
 
经试验,mark.vim插件最多只能标注6个词组,如果超过6个词组,首先标记颜色的词组的颜色会消失。
 
下图是已经标记过了6种颜色的时候的截图:  www.2cto.com  

 
此时,如果再对46行的memset进行\m操作。则最先标记颜色的uri_parse_state颜色会被取消。
 
如下图所示:
 
 
下面的链接是对上面插件的增强:
 
http://www.vim.org/scripts/script.php?script_id=2666
 
 
作者 jibing57

相关内容

    暂无相关文章