vim对多个关键字高亮

很早就有这个需求了,但是一直没有找到合适的插件,直到昨天再也按耐不住了。于是就找到了mark这个插件,简单用了几下还可以,更多的功能待以后挖掘。

下载

直接从vim的官网下载:mark.vim就行了。
但是呢,mark.vim的后爹Ingo Karkat在开发mark.vim的时候使用了他自己的一个基础库,也就是说mark.vim还依赖另一个vim,得先装那个库ingo-library

为啥说Ingo Karkat是后爹呢,据后爹的description一栏介绍,Mark的生父Yuheng Xie 已经抛弃了它。于是呢怀着八卦的心就查看了一下Mark的日志,从2009-06-07开始,Ingo Karkat开始上传了第一版Mark,一直到2019-03-24的3.1.0版本,这期间都在时不时的更新着。

再打开Yuheng Xie的Mark后看到也有时不时的更新。且最新的更新记录是2019-01-30,也并不是抛弃了啊。

算了,我好象是跑题了。

前面的都是废话。

整理一下。

我使用的是Ingo Karkat的版本Mark。

需要下载的有:

  1. Ingo-library 传送门
  2. Mark 传送门

我使用的下载方法是git clone.
即在任意目录使用git clone下来这两个插件,然后将下载下来的所有文件copy到~/.vim中就行了。这就是安装了。
下面是下载后的文件结构:

zz@zz:~/.vim/test$ ls
vim-ingo-library  vim-mark
zz@zz:~/.vim/test$ ls vim-mark/
autoload  doc  mark.manifest  plugin  README.md
zz@zz:~/.vim/test$ 
zz@zz:~/.vim/test$ 
zz@zz:~/.vim/test$ 
zz@zz:~/.vim/test$ ls vim-ingo-library/
autoload  doc  ingo-library.manifest  README.md  tests
zz@zz:~/.vim/test$ 

还有一种安装方法是下载vimball,然后用so %来安装,但是我用这种方法安装没有成功,以后再研究一下。

安装完之后就可以用了。
使用很简单,参考说名中的这一段:

USAGE
HIGHLIGHTING
<Leader>m               Mark the word under the cursor, similar to the star
                        command. The next free highlight group is used.
                        If already on a mark: Clear the mark, like
                        <Leader>n.
{Visual}<Leader>m       Mark or unmark the visual selection.
{N}<Leader>m            With {N}, mark the word under the cursor with the
                        named highlight group {N}. When that group is not
                        empty, the word is added as an alternative match, so
                        you can highlight multiple words with the same color.
                        When the word is already contained in the list of
                        alternatives, it is removed.

                        When {N} is greater than the number of defined mark
                        groups, a summary of marks is printed. Active mark
                        groups are prefixed with "*" (or "M*" when there are
                        M pattern alternatives), the default next group with
                        ">", the last used search with "/" (like :Marks
                        does). Input the mark group, accept the default with
                        <CR>, or abort with <Esc> or any other key.
                        This way, when unsure about which number represents
                        which color, just use 99<Leader>n and pick the color
                        interactively!

{Visual}[N]<Leader>m    Ditto, based on the visual selection.

[N]<Leader>r            Manually input a regular expression to mark.
{Visual}[N]<Leader>r    Ditto, based on the visual selection.

                        In accordance with the built-in star command,
                        all these mappings use 'ignorecase', but not
                        'smartcase'.

<Leader>n               Clear the mark under the cursor.
                        If not on a mark: Disable all marks, similar to
                        :nohlsearch.
                        Note: Marks that span multiple lines are not detected,
                        so the use of <Leader>n on such a mark will
                        unintentionally disable all marks! Use
                        {Visual}<Leader>r or :Mark {pattern} to clear
                        multi-line marks (or pass [N] if you happen to know
                        the group number). 

在terminal中输入<Leader>m就行了,咋输入<Leader>呢?
搜索后了解到<Leader>是一个映射,可以把它改成其他的符号,如果没改过的话默认值就是\,也就是依次敲按键\m就行了。这时光标所在的单词就会高亮,将光标移动到下一个需要高亮的字符后,再依次敲按键\m,就会自动使用另一种颜色高亮关键字。

取消高亮的方法是在关键字上依次敲按键\n,

相同颜色的关键字间跳转的命令是 按键\*, 按键*就是要Shift和数字8一起按下。

跳回上一个相同颜色的是按键\#

任意颜色间的关键字跳转命令是\/,即不管颜色,只要是被高亮了,就顺序的往下一个跳。

任意颜色跳回上一个按键是\?,也就是按完\之后,一起按下shift+/

上面的都是从文章开头向文章结尾跳,如果往回跳暂时还没有找到方法,还有更改高亮组的颜色顺序等其他功能稍后再研究。下图是多个高亮的效果:

在这里插入图片描述补充1:
修改高亮颜色组的方法:
在.vimrc里面添加:

按照mark.vim的这一段说明:

If none of the default highlightings suits you, define your own colors
in your vimrc file (or anywhere before this plugin is sourced, but
after any :colorscheme), in the following form (where N = 1…):
highlight MarkWordN ctermbg=Cyan ctermfg=Black guibg=#8CCBEA guifg=Black

对应的操作为:

111 "========================================================
112 "for mark.vim
113 "========================================================
114 highlight MarkWord1 ctermbg=Green ctermfg=White guibg=#8CCBEA guifg=Black
115 highlight MarkWord2 ctermbg=Cyan ctermfg=White guibg=#8CCBEA guifg=Black
116 highlight MarkWord3 ctermbg=Yellow ctermfg=White guibg=#8CCBEA guifg=Black
117 highlight MarkWord4 ctermbg=Red ctermfg=White guibg=#8CCBEA guifg=Black
118 highlight MarkWord5 ctermbg=Blue ctermfg=White guibg=#8CCBEA guifg=Black
119 highlight MarkWord6 ctermbg=Magenta ctermfg=White guibg=#8CCBEA guifg=Black
120 
### 回答1: Vim是一款非常强大且可定制的文本编辑器,而UVM是用于硬件验证的一种语言。要为Vim提供UVM语法高亮的支持,可以按照以下步骤进行操作。 首先,需要确保已经安装了Vim的插件管理器,例如Pathogen或Vundle。这些管理器可以帮助您轻松地安装和管理Vim插件。 接下来,在您的Vim配置文件(通常是位于~/.vimrc)中,添加以下行代码: 1. 使用插件管理器将UVM语法高亮插件下载到您的插件目录。例如,使用Pathogen插件管理器,可以将插件下载到~/.vim/bundle/目录下。如果使用Vundle插件管理器,可以将插件添加到.vimrc文件中的插件列表中。 2. 保存并关闭配置文件。 3. 重新启动Vim。 这样,当您打开包含UVM代码的文件时,Vim将会自动应用语法高亮。这意味着Vim将会使用不同的颜色和样式来区分UVM的关键字、函数、类和其他元素,使得代码更具可读性和可编辑性。 值得注意的是,如果您的UVM语法高亮插件没有及时更新,可能无法正确地适应最新的UVM语法。因此,建议定期检查并更新插件以获得最佳效果。 总之,通过安装UVM语法高亮插件,您可以在Vim中轻松编辑和查看UVM代码,从而提高开发效率和代码质量。 ### 回答2: Vim是一个功能强大的文本编辑器,提供了许多有用的功能和插件,其中包括对UVM(Universal Verification Methodology,通用验证方法学)语法的高亮支持。 UVM是一种硬件验证的标准方法学,用于验证集成电路设计的正确性。UVM语法高亮指的是在Vim中编辑UVM代码时,能够自动对UVM的关键字、函数、类和宏进行颜色区分,使代码更易读和易于理解。 要在Vim中启用UVM语法高亮,可以按照以下步骤进行操作: 1. 确保你已经安装了Vim编辑器,可以在终端中输入"vim --version"命令来检查Vim的安装情况。 2. 在终端中输入以下命令,将UVM语法文件复制到Vim的语法文件夹中(假设你的Vim安装路径为~/.vim): cp /path/to/uvm/syntax/uvm.vim ~/.vim/syntax/ 3. 然后,在Vim中打开一个UVM文件(.sv或.svh文件),输入以下命令启用UVM语法高亮: :syntax enable :set syntax=uvm 现在,当你编辑UVM代码时,Vim将会根据UVM语法文件对代码进行高亮显示,使关键字、函数和类名以及宏等元素以不同的颜色显示,从而提高代码的可读性和可视化效果。 总结起来,Vim通过启用和设置UVM语法文件,在编辑UVM代码时能够实现语法高亮的效果,使得UVM代码更加清晰和易于编写、调试。 ### 回答3: Vim和UVM都是常用的编程和验证工具,它们都支持语法高亮功能,可以使代码在编辑器中以不同颜色显示不同的关键字和标识符,更好地帮助程序员阅读和修改代码。 首先,Vim是一款强大的文本编辑器,几乎支持所有主流编程语言,包括SystemVerilog以及UVM验证框架。要在Vim中启用UVM语法高亮,可以按照以下步骤操作: 1. 确保已经安装了Vim编辑器。可以访问Vim的官方网站(https://www.vim.org/)进行下载和安装。 2. 在Vim中打开SystemVerilog或UVM验证代码文件。 3. 进入命令模式,输入以下命令:syntax enable 这将启用Vim的语法高亮功能,并根据代码的语法对关键字和标识符进行着色。 4. 如果想要自定义UVM关键字的颜色或样式,可以编辑Vim的配置文件.vimrc。 在.vimrc文件中,可以设置不同的highlight组来指定特定关键字的颜色和样式。例如,可以使用以下命令修改UVM宏的颜色: highlight uvmMacro guifg=red 这将把UVM宏的颜色设置为红色。在这里,"uvmMacro"表示highlight组的名称,"guifg"表示前景色。 需要注意的是,这些步骤需要一些基本的Vim编辑知识。如果对于Vim还不太熟悉,可以参考Vim的官方文档或在线教程,了解更多的编辑器使用技巧和命令。这样就可以在Vim中启用UVM语法高亮,提高编程和验证的效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值