是否有一种方法可以在Vim中获得所有已安装的配色方案的列表?这样就可以很容易地选择一个,而不需要查看.vim目录。
.vim
类型
:colorscheme,然后空间,接着选项卡。
:colorscheme
或者如彼得所说,
:colorscheme,然后空间,接着CTRLd
该命令的简短版本是:colo,所以你可以在前面的两个命令中使用它,而不是使用“长格式”。
:colo
如果你用+menu编译了你的vim,你可以用console-menu的:help跟随菜单。从那里,你可以导航到Edit.Color\ Scheme以获得与在gvim中相同的列表。
+menu
console-menu
:help
Edit.Color\ Scheme
gvim
另一种方法是使用一个很酷的脚本ScrollColors,它可以在你用j/k滚动方案时预览配色方案。
j/k
你可以在/usr/share/vim/vimNN/colors下面看到配色方案的列表(其中NN是版本,例如,vim 7.4的vim74)。
/usr/share/vim/vimNN/colors
NN
vim74
这是解释在这里。
在我通过ssh使用的linux服务器上,选项卡打印^I, CTRLd打印^D。
^I
^D
真的很让人困惑。
此外,Backspace在插入模式时失败了,这让人难以记住——尽管Delete也发生了同样的事情。
治愈方法——
在SSH监视器中选择“Edit/Settings”。
a.选择“配置文件设置/颜色”
b.检查“启用ANSI颜色”
c.标准文本颜色可能OK
colorscheme违约
If &term == "xterm"
设置t_kb = ^ H
fixdel
endif < / p >
注意:^H必须输入ctrl-V ctrl-H。听起来很奇怪,但这似乎很管用。
如果你愿意安装一个插件,我推荐https://github.com/vim-scripts/CycleColor。
循环使用所有已安装的配色方案。很好地选择一个配色方案。
试一试
set wildmenu set wildmode=list:full set wildcharm=<C-z> let mapleader=',' nnoremap <leader>c :colorscheme <C-z><S-Tab>
在~/.vimrc中。
~/.vimrc
前两行使可能的匹配显示为列表。你可以用其中之一,也可以两者都用。
第四行将leader设为,,而不是默认的\。
,
\
最后一行允许你简单地输入,c来获得一个列表和一个改变配色方案的提示。
,c
第三行有效地允许__abc0出现在关键映射中。
(当然,所有这些策略都是我最近从网上学到的。)
下面是我编写的一个小函数,用于尝试$VIMRUNTIME/colors目录中的所有配色方案。
将下面的函数添加到vimrc中,然后打开源文件并从命令调用该函数。
function! DisplayColorSchemes() let currDir = getcwd() exec "cd $VIMRUNTIME/colors" for myCol in split(glob("*"), '\n') if myCol =~ '\.vim' let mycol = substitute(myCol, '\.vim', '', '') exec "colorscheme " . mycol exec "redraw!" echo "colorscheme = ". myCol sleep 2 endif endfor exec "cd " . currDir endfunction
看着我的系统菜单。vim(寻找“配色方案子菜单”)和@chappar的答案,我想出了以下函数:
" Returns the list of available color schemes function! GetColorSchemes() return uniq(sort(map( \ globpath(&runtimepath, "colors/*.vim", 0, 1), \ 'fnamemodify(v:val, ":t:r")' \))) endfunction
它的功能如下:
然后使用这个函数,我这样做:
let s:schemes = GetColorSchemes() if index(s:schemes, 'solarized') >= 0 colorscheme solarized elseif index(s:schemes, 'darkblue') >= 0 colorscheme darkblue endif
这意味着我更喜欢“太阳能”和“深蓝色”方案;如果没有,什么都不做。
只是为了方便参考,因为我看到有很多人在搜索这个话题,他们太懒了…对不起,很忙,要自己检查(包括我)。下面是Vim 7.4的默认配色方案:
blue.vim darkblue.vim, delek.vim desert.vim elflord.vim evening.vim industry.vim koehler.vim morning.vim murphy.vim pablo.vim peachpuff.vim ron.vim shine.vim slate.vim torte.vim zellner.vim
另一种更简单的方法是在编辑文件时- tabe ~/.vim/colors/ ENTER 将在vim窗口的新选项卡中打开所有主题。< / p >
tabe ~/.vim/colors/
你可以使用- CTRL + W + W 输入返回到你正在编辑的文件
CTRL + W + W
注意:只有当你当前的$USER在你的主目录中有一个.vim/colors目录时,以上才有效 (我有70+主题)
$USER
.vim/colors
[user@host ~]$ ls -l ~/。Vim /colors | wc -l 72
[user@host ~]$ ls -l ~/。Vim /colors | wc -l
72
我知道我回答这个问题有点晚了,但正确答案似乎是
看到:help getcompletion():
:help getcompletion():
:echo getcompletion('', 'color')
你可以把它赋值给一个变量:
:let foo = getcompletion('', 'color')
或者在表达式寄存器中使用:
:put=getcompletion('', 'color')
这不是我的答案,这个解决方案是由reddit上的这帖子中的u / romainl提供的。