vim的高亮命令太少了,只有3个……

Vim、Emacs配置和使用
回复
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45

vim的高亮命令太少了,只有3个……

#1

帖子 fanhe » 2011-01-16 0:50

高亮指定单词在追踪代码的时候是极其有用
之前我一直用自己写的函数高亮单词,后来听说有个mark.vim比较强大,支持多个高亮
用了一下mark.vim,发现有bug,原来它是用syn match实现的,但是对于本来语法文件用了default参数的高亮单词,无能为力
match 2match 3match就无视所有直接设定高亮,但是3match被用来匹配括号那些了,只能用前两个
只有两个无敌的高亮,还是觉得有点少啊

自己写几个函数,只能用两组高亮了,无法忍受mark.vim的bug啊……
有什么建议,vim的7.4能不能多增加几个match,至少6个吧
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: vim的高亮命令太少了,只有3个……

#2

帖子 lilydjwg » 2011-01-16 1:16

mark.vim 有那样的 bug?我怎么没有发现??
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45

Re: vim的高亮命令太少了,只有3个……

#3

帖子 fanhe » 2011-01-16 2:05

lilydjwg 写了:mark.vim 有那样的 bug?我怎么没有发现??
打开个sh文件,在clear啊,continue啊之类的高亮试试
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: vim的高亮命令太少了,只有3个……

#4

帖子 lilydjwg » 2011-01-16 14:31

fanhe 写了: 打开个sh文件,在clear啊,continue啊之类的高亮试试
:help matchadd() 写了: 语法高亮 (见'syntax') 采用不同的机制,无论选择的优先级如何,匹配总会否决语法的高亮。
screenshot_001.png
screenshot_001.png (5.78 KiB) 查看 1054 次
http://www.vim.org/scripts/script.php?script_id=2666
mark.vim 写了: This plugin offers the following advantages over the original:
- Much faster, all colored words can now be highlighted, no more clashes with
syntax highlighting (due to use of matchadd()).
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45

Re: vim的高亮命令太少了,只有3个……

#5

帖子 fanhe » 2011-01-16 16:09

lilydjwg 写了:
fanhe 写了: 打开个sh文件,在clear啊,continue啊之类的高亮试试
:help matchadd() 写了: 语法高亮 (见'syntax') 采用不同的机制,无论选择的优先级如何,匹配总会否决语法的高亮。
screenshot_001.png
http://www.vim.org/scripts/script.php?script_id=2666
mark.vim 写了: This plugin offers the following advantages over the original:
- Much faster, all colored words can now be highlighted, no more clashes with
syntax highlighting (due to use of matchadd()).
:em20
我用的是这个http://www.vim.org/scripts/script.php?script_id=1238
在vim.org搜索mark也是这个是第一个结果,你用的那个是往后的结果,我根本不知道
虽然我看到那个mark.vim的最后更新日期是2008年就猜到有问题了。
瞧瞧这个新的用的是什么高亮机制,虽然我把那个mark.vim改成仅支持两组高亮,用nmatch实现
头像
fanhe
帖子: 2357
注册时间: 2007-03-24 23:45

Re: vim的高亮命令太少了,只有3个……

#6

帖子 fanhe » 2011-01-16 16:18

原来是用了7.1的功能matchadd,这下就没问题了 :em05
回复