【问题标题】:Use OS X Terminal's colors for Vim, but specify which types get which colorVim 使用 OS X 终端的颜色,但指定哪些类型获得哪种颜色
【发布时间】:2018-02-17 20:56:20
【问题描述】:
我真的很喜欢我目前拥有的 OS X 终端配色方案,并希望将其保留给 vim。但是,我对我的颜色非常挑剔(类定义必须是紫色,数字必须是绿色等)。有没有办法访问终端当前的颜色方案,但重新分配哪些颜色与哪些类型?
我试图为 Vim 找到与我在 OS X 中使用的相同的配色方案,但由于某种原因,结果永远不会完全正确,即使这两个文件来自同一个存储库。 Vim 总是看起来有点暗。
【问题讨论】:
标签:
macos
vim
terminal
color-scheme
【解决方案1】:
您必须编写自己的配色方案,仅使用 ctermfg 和 ctermbg 的颜色名称:
" bar.vim -- Vim color scheme.
" Author: foo (foo@foo.foo)
" Webpage: http://www.example.com
" Description: Lorem ipsum dolor sit amet.
hi clear
if exists("syntax_on")
syntax reset
endif
let colors_name = "bar"
hi Normal ctermbg=white ctermfg=darkgray cterm=NONE
set background=dark
hi NonText ctermbg=white ctermfg=darkgray cterm=NONE
...
有关可接受的颜色名称,请参阅:help cterm-colors,有关可用的高亮组,请参阅:help highlight-groups。
【解决方案2】:
前段时间我创建了a minimal colorscheme,它使用与终端相同的前景色和背景色(所以你只需要像你说的那样为类定义、数字等添加一些突出显示规则 em>)。
你可以先将以下代码放入~/.vim/colors/xxiane-colorscheme-stackexchange.vim:
set background=light
hi clear
if (exists('syntax_on'))
syntax reset
endif
let g:colors_name = 'xxiane-colorscheme-stackexchange'
hi Normal NONE
hi! link Constant Normal
hi! link Identifier Normal
hi! link PreProc Normal
hi! link Special Normal
hi! link Statement Normal
hi! link String Normal
hi! link Type Normal
hi Comment ctermfg=243 guifg=#737373
hi ColorColumn ctermbg=254 guibg=#e4e4e4
hi CursorLine ctermfg=NONE guifg=NONE ctermbg=NONE guibg=NONE cterm=NONE term=NONE
hi CursorLineNr ctermfg=7 ctermbg=4 cterm=bold term=bold
hi Folded ctermbg=NONE guibg=NONE
hi LineNr ctermfg=7
hi Error ctermfg=1 ctermbg=NONE guibg=NONE
hi MatchParen ctermfg=4 ctermbg=NONE guibg=NONE
hi Pmenu ctermfg=16 guifg=Black ctermbg=254 guibg=#e4e4e4
hi PmenuSel ctermfg=231 guifg=#ffffff ctermbg=4
hi Search ctermfg=13 ctermbg=NONE guibg=NONE
hi TabLineFill ctermbg=15 cterm=NONE term=NONE
hi TabLineSel cterm=bold term=bold
hi Title ctermfg=NONE guifg=NONE ctermbg=NONE guibg=NONE cterm=bold term=bold
hi Todo ctermfg=NONE guifg=NONE ctermbg=NONE guibg=NONE cterm=bold term=bold
hi Visual ctermfg=16 guifg=Black ctermbg=11
hi SpecialKey ctermfg=8 cterm=NONE term=NONE
并根据自己的喜好进行修改。这里有一些提示可以使它更容易: