我在iTerm2中有一个奇怪的问题,在终端vim(非gui)和曝光的配色方案。首先,我将iTerm2设置为使用深色曝光配色方案。
我也使用solarized用于vim。我的.vimrc
中有以下几行set background=dark
colorscheme solarized
在终端中,配色方案看起来不正确:
供参考,这是它在MacVim(gui vim)下的外观
在iTerm或我的.vimrc中需要更改什么才能在我的控制台vim中正确显示颜色?
答案 0 :(得分:115)
要检查的几件事情:
在iTerm2中,在偏好设置中 - >个人资料 - >终端,在“终端仿真”下,您将“报告终端类型:”设置为xterm-256color。
在.vimrc中,您还可以设置一些选项以确保它使用256种颜色:
set background=dark
" solarized options
let g:solarized_visibility = "high"
let g:solarized_contrast = "high"
colorscheme solarized
其中一个应该可以工作,但首先是#1。
但是,如果您在Snow Leopard上使用默认的内置vim,它将无法正常工作,因为它不支持256色。我相信Lion中的内置版本。
修改:根据对此答案的多条评论,我已从上述let g:solarized_termcolors = 256
示例中删除了.vimrc
行。对某些人来说,这似乎是一个问题。另一个人说添加行let g:solarized_termcolors = 16
修复了彩色显示问题。你自己的里程可能会有所不同。
第二次编辑:如果您已将曝光的调色板加载到iTerm2中,则必须let g:solarized_termcolors=16
。只有let g:solarized_termcolors=256
如果您不使用曝光调色板作为您的iTerm2颜色预设。
答案 1 :(得分:87)
以上答案对我不起作用。
我在OS X 10.7.4上使用iTerm2和vim 7.3。
如果上述解决方案也不适合您,请尝试使用
syntax on
set background=dark
let g:solarized_termtrans = 1
colorscheme solarized
更新:据Jim Stewart说,这也适用于Kitty。
答案 2 :(得分:12)
https://github.com/altercation/solarized/tree/master/iterm2-colors-solarized
下载Solarized包(https://github.com/altercation/solarized)并按照说明操作:
打开iTerm 2,打开首选项,单击首选项工具栏中的“配置文件”(以前称为地址,以前的书签)图标,然后选择“颜色”选项卡。单击“加载预设”并选择“导入...”。选择Solarized Light或Dark主题文件。
您现在已将Solarized色彩预设加载到iTerm 2中,但是 尚未应用它们。要应用它们,只需选择一个现有的 从左侧的配置文件列表窗口中的配置文件,或创建一个新的 轮廓。然后从中选择Solarized Dark或Solarized Light预设 “加载预设”下拉。
====================================
或者:
cd ~/.vim/bundle
git clone git://github.com/altercation/vim-colors-solarized.git
修改.vimrc
黑暗主题:
syntax enable
set background=dark
colorscheme solarized
光
syntax enable
set background=light
colorscheme solarized
答案 3 :(得分:10)
这在iTerm 2和终端的OS X 10.9.1中对我有用。我犯的一个错误是在termtrans和termcolors设置之前放置colorscheme声明(我需要这两个才能使它工作)。正如其他人所说,我将终端类型设置为xterm-256color
if !has("gui_running")
let g:solarized_termtrans=1
let g:solarized_termcolors=256
endif
colorscheme solarized
set background=dark
答案 4 :(得分:6)
来自创作者:http://ethanschoonover.com/solarized/vim-colors-solarized
终端用户的重要提示:
如果您要在终端模式下使用Solarized(即不是像gvim或macvim这样的GUI版本),请考虑将终端仿真器的colorscheme设置为使用Solarized调色板。我已经在Solarized主页上提供了官方Solarized下载的一些流行的终端模拟器和Xdefaults的调色板。如果你在没有这些颜色的情况下使用Solarized,则需要告知Solarized将其colorscheme降级为与有限的256终端调色板兼容的设置(而使用终端的16 ansi颜色值,您可以为Solarized设置正确的特定值调色板)。
如果您使用自定义终端颜色,solarized.vim应该为您开箱即用。如果您使用的是支持256色并且不想使用自定义Solarized终端颜色的终端仿真器,则需要使用降级的256色方案。为此,只需在colorschem曝光线之前添加以下行:
let g:solarized_termcolors=256
同样,我建议您手动或通过可导入的众多终端方案之一将终端颜色更改为Solarized值。
答案 5 :(得分:6)
我在OSX 10.11.6,iTerm2 Build 3.0.12上遇到了同样的问题。
这是我对它的修复。
答案 6 :(得分:4)
colorscheme solarized
行这应该将iTerm2中的vim颜色设置为与gui编辑器中的颜色完全相同。
答案 7 :(得分:1)
解决此问题的一种简单方法是:
颜色dir on vim-color-solarized存在一个名为' solarozed.vim'
的arquive打开此文件并搜索:
exe"让s:bg_back =' " .s:vmode。" bg =" .s:back。"'"
替换为:
exe"让s:bg_back =' " .s:vmode。" bg =" .s:none。"'"
答案 8 :(得分:0)
我尝试了以前的所有建议。我刚刚将exp userid=me/mypass@dbname tables=me.TABLE_A,me.TABLE_B query=\"WHERE ROWID IN (SELECT T.ROW_ID FROM EXP_ROW_ID T)\"
添加到.vimrc并修复了它。我不需要创建set t_Co=256
别名或更改我的配置文件。
答案 9 :(得分:0)
对于任何像我一样的问题,我安装了iterm2 solarized color profile。将vim-color-solarized安装到vim软件包并按照说明进行操作是不必要的,并且不兼容。上面的屏幕截图中有一些有趣的突出显示问题。
获得的经验:不要两者兼顾。
答案 10 :(得分:0)
以前的答案都没有对我有用。显然我不见了:
set termguicolors