vim着色特定文本
我想知道(到目前为止,我还没有在谷歌上找到答案,但可能它就在我面前,我被有关亲属问题的大量信息弄糊涂了)我是否可以在vim中为文本的特定部分指定样式(即颜色) 例如,在这里,如果我写**文本**,文本将以粗体显示:text 或者我可以选择一些单词,然后给它们涂上颜色 其目的是使作为注释代码文件的文件更易于读取 谢谢 您可以使用:vim着色特定文本,vim,colors,Vim,Colors,我想知道(到目前为止,我还没有在谷歌上找到答案,但可能它就在我面前,我被有关亲属问题的大量信息弄糊涂了)我是否可以在vim中为文本的特定部分指定样式(即颜色) 例如,在这里,如果我写**文本**,文本将以粗体显示:text 或者我可以选择一些单词,然后给它们涂上颜色 其目的是使作为注释代码文件的文件更易于读取 谢谢 您可以使用: set concealcursor=n set
set concealcursor=n
set conceallevel=3
hi Asterisks NONE
hi AsteriskBold cterm=bold gui=bold
syn match Asterisks contained "**" conceal
syn match AsteriskBold "\\\@<!\*\*[^"*|]\+\*\*" contains=Asterisks
设置隐藏光标=n
设置隐藏级别=3
嗨,星号没有
hi AsteriskBold字符m=bold gui=bold
同步匹配星号包含“**”隐藏
同步匹配星号“\\\@
最后四行与$VIMRUNTIME/syntax/help.vim
中定义的隐藏条(|
)非常相似。这里我们要隐藏双星号(**
)
关于前两行,请参见:帮助隐藏光标
和:帮助隐藏级别
。接下来的两行定义突出显示组Asteriks
和AsteriskBold
。最后两行定义语法匹配模式(请参见:帮助模式
和:帮助包含
)。您可以使用:
set concealcursor=n
set conceallevel=3
hi Asterisks NONE
hi AsteriskBold cterm=bold gui=bold
syn match Asterisks contained "**" conceal
syn match AsteriskBold "\\\@<!\*\*[^"*|]\+\*\*" contains=Asterisks
设置隐藏光标=n
设置隐藏级别=3
嗨,星号没有
hi AsteriskBold字符m=bold gui=bold
同步匹配星号包含“**”隐藏
同步匹配星号“\\\@
最后四行非常类似于$VIMRUNTIME/syntax/help.vim
中定义的隐藏条(|
)。相反,这里我们想要隐藏双星号(***
)
前两行请参见帮助隐藏光标和帮助隐藏级别。接下来的两行定义了突出显示组Asteriks
和AsteriskBold
。最后两行定义了语法匹配模式(请参见:help pattern
和:help contains
)
@塞尔吉奥:所以,我已经把你的台词放在我的vimrc文件中了,thx它帮了大忙:)
我添加注释以节省像我这样的初学者的时间:
->隐藏表示隐藏字符,此处用于隐藏**,而其他命令用于转换任意一对**
->隐藏光标=n表示字符在正常模式下隐藏,但您可以在视觉模式或插入模式下看到它们(可以等于“v”或“i”或多个值,如“nv”以在正常模式和视觉模式下隐藏字符)
->隐藏级别=3表示字符将完全隐藏(设置为“0”表示未隐藏,而“1”和“2”表示用其他内容替换字符)
->hi和syn将用于转换由“**”包围的文本
->hi表示高亮显示,它指定了choosen文本的显示方式,因此星号设置为NONE,这意味着它不会被转换(我不确定是否有必要,因为它将被隐藏)
->选择星号框由字符m=bold加粗。在我的shell中,gui=bold什么也不做,所以我删除了它,并在cterm=bold之前添加了ctermfg=Green以将文本涂成绿色,并将其加粗(之前:因为它在“:help hi”中指定放在前面,以避免我不理解的问题)
->syn match星号“**”隐藏我认为这行定义了变量星号代表什么,它应该被隐藏(隐藏)
->同步匹配星号边框\\\@
最后,我还有一个问题:有时我想转换一个*字符,但我找不到如何转换正则表达式来达到这个目的??我是说
*****
不显示粗体绿色*,但它不显示任何内容
以下是我的台词:
set concealcursor=n
set conceallevel=3
hi AsteriskBold ctermfg=Green cterm=bold
syn match Asterisks contained "**" conceal
syn match AsteriskBold "\*\*[^*]\+\*\*" contains=Asterisks
thx BigMike&Sergio
@塞尔吉奥:所以,我已经把你的台词放在我的vimrc文件中了,thx它帮了大忙:)
我添加注释以节省像我这样的初学者的时间:
->隐藏表示隐藏字符,此处用于隐藏**,而其他命令用于转换任意一对**
->隐藏光标=n表示字符在正常模式下隐藏,但您可以在视觉模式或插入模式下看到它们(可以等于“v”或“i”或多个值,如“nv”以在正常模式和视觉模式下隐藏字符)
->隐藏级别=3表示字符将完全隐藏(设置为“0”表示未隐藏,而“1”和“2”表示用其他内容替换字符)
->hi和syn将用于转换由“**”包围的文本
->hi表示高亮显示,它指定了choosen文本的显示方式,因此星号设置为NONE,这意味着它不会被转换(我不确定是否有必要,因为它将被隐藏)
->选择星号框由字符m=bold加粗。在我的shell中,gui=bold什么也不做,所以我删除了它,并在cterm=bold之前添加了ctermfg=Green以将文本涂成绿色,并将其加粗(之前:因为它在“:help hi”中指定放在前面,以避免我不理解的问题)
->syn match星号“**”隐藏我认为这行定义了变量星号代表什么,它应该被隐藏(隐藏)
->