gpt4 book ai didi

vim - 在 gvim 中突出显示一组特定关键字

转载 作者:行者123 更新时间:2023-12-04 19:23:23 24 4
gpt4 key购买 nike

我尝试通过在 .vimrc、colorscheme 文件和 syntax.vim 中添加特定单词来突出显示它们(我一次更改一个,而不是全部更改)。

syn match mygroupwords '\c\<\(-word1\|-word2\)'            
hi def link mygroupwords colo_words12
hi colo_words12 guifg=red1 gui=bold guibg=white

但不知何故它似乎被默认的语法高亮覆盖了

我需要突出显示关键字,无论颜色方案或文件类型如何,其中包含以下单词-前任; -word1 , -word2

有什么建议吗?

最佳答案

失败尝试的解释

colorscheme 只是为预定义的高亮组 提供颜色定义;那是实际语法匹配的错误位置! ~/.vimrc 是读取的第一个配置;如果检测到文件类型并加载相应的语法脚本,这将覆盖您的语法定义。

语法扩展

如果您想要的突出显示是对现有语法的扩展,您可以将 :syntax match 命令放在 after 目录 的语法脚本中。例如,要扩展 Python 语法,将其放在 ~/.vim/after/syntax/python.vim 中。如果原始语法模糊了匹配,那可能仍然会失败;有时,这可以通过 containedin=...

解决

独立标记

如果您的突出显示与语法和文件类型无关,则有一个不同的内置机制::match(和 :2match,以及通过 的其他变体:调用 matchadd(...):

:match mygroupwords /\c\<\(-word1\|-word2\)/

这在语法高亮之上(并且独立于)。但是,它是当前窗口的本地。所以,如果你把它放到你的 .vimrc 中,它只会影响第一个窗口(但在其中查看的任何文件)。要将其全局应用于窗口拆分和标签页,您必须使用 :autocmds。完全正确地做到这一点并非易事。如果您需要这样一个完整的解决方案,请查看我的 Mark plugin ;这支持多种颜色,允许使用 :[N]Mark/{pattern}/ 进行预设(类似于 :match),并在所有窗口中突出显示。

关于vim - 在 gvim 中突出显示一组特定关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46702872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com