gpt4 book ai didi

vim - 如何在 Vim 中正确扩展高亮组?

转载 作者:行者123 更新时间:2023-12-01 23:35:15 25 4
gpt4 key购买 nike

我想创建一个名为 Italic 的组完全一样Normal但文字为斜体。我的 Normal组是
设置

Normal   ctermfg=251 ctermbg=234 guifg=#cccccc guibg=#242424
我的问题是:
  • 正确的做法是添加 term=italic设置如下?
    hi Italic term=italic ctermfg=251 ctermbg=234 guifg=#cccccc guibg=#242424
  • 我想以通用方式进行,即定义 Italic这样的
    该设置适用于所有配色方案(以上仅适用于
    对于我目前的配色方案)。有办法实现吗?就像是
    hi Italic extends Normal term=italic 
  • 最佳答案

    要解决此问题,您可以通过脚本创建突出显示组。这
    下面的函数采用三个字符串参数:要基于的组的名称
    突出显示、要创建的组的名称以及包含附加信息的字符串
    突出显示属性(或要覆盖的属性)。

    function! ExtendHighlight(base, group, add)
    redir => basehi
    sil! exe 'highlight' a:base
    redir END
    let grphi = split(basehi, '\n')[0]
    let grphi = substitute(grphi, '^'.a:base.'\s\+xxx', '', '')
    sil exe 'highlight' a:group grphi a:add
    endfunction

    因此,调用
    :call ExtendHighlight('Normal', 'Italic', 'term=italic')

    创建一个名为 Italic 的新组扩展 Normal突出显示 term=italic属性字符串。

    请注意,自定义突出显示组在配色方案上保持不变
    交换。要纠正此行为,您可以在当前
    配色方案的变化。
    :autocmd ColorScheme * call ExtendHighlight('Normal', 'Italic', 'term=italic')

    关于vim - 如何在 Vim 中正确扩展高亮组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5172323/

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