【问题标题】:Solarized theme on Vim + Terminator + Ubuntu 11.10Vim + Terminator + Ubuntu 11.10 上的 Solarized 主题
【发布时间】:2012-02-02 07:42:29
【问题描述】:

我正在尝试在 Terminator 上为 vim 设置日光化主题,但它不起作用。 :-( 我成功地为终结器设置了solarized,但它似乎不适用于vim。这是我的 .vimrc 的样子

call pathogen#infect()
filetype plugin indent on
syntax enable
set background=dark
"set t_Co=16
"let g:solarized_termcolors=16
let g:solarized_visibility = "high"
let g:solarized_contrast = "high"
colorscheme solarized

$TERM is set to xterm

我也尝试过上面两行未注释但仍然无法正常工作。

谁能告诉我我做错了什么?

谢谢!

编辑:

【问题讨论】:

  • “它不工作”是什么意思?您是否有错误消息、故障或颜色错误?
  • 怎么错了?您正在谈论一种配色方案:一两个屏幕截图可能会有所帮助。
  • 不知道是否有在 stackoverflow 上上传屏幕截图的选项。更新了帖子。
  • 你有它应该是什么样子的截图吗?
  • 这应该在superuser.com询问

标签: vim ubuntu terminator


【解决方案1】:

正如 Ethan Schoonover 在他的 vim colorscheme readme 中指出的那样,要使配色方案首先工作,您必须配置终端调色板。

在终结器中有一个github repo,它保存着明暗方案的颜色配置。

问题是那个调色板也不对:P,正确的是一个人在同一个仓库的an issue 中发布的那个。

正确的配置如下(至少对于暗方案):

[[solarized-dark]]
  palette = "#073642:#dc322f:#859900:#b58900:#268bd2:#d33682:#2aa198:#eee8d5:#002b36:#cb4b16:#586e75:#657b83:#839496:#6c71c4:#93a1a1:#fdf6e3"
  cursor_color = "#eee8d5"
  foreground_color = "#eee8d5"
  background_color = "#002b36"

之后,您必须配置日晒颜色方案:

syntax on
set t_Co=16
set background=dark
colorscheme solarized

需要注意的几点:

  1. 通常,set t_Co=16 行不是必需的,因为大多数终端仿真器仅支持 16 种颜色(例如终止符)。但我宁愿显式而不是隐式(特别是如果您要在多台计算机之间同步文件)。

  2. set g:solarized_termcolors=16 行是默认的,所以你可以设置或不设置:它不会有任何区别。

  3. 根据我的经验,256 色版本更好(我更喜欢灰色背景而不是蓝色;但这是个人喜好:P)。与每个人的想法相反,256 配色方案实际上是“后备”,即默认的 16 色。是的,很奇怪,大多数人会认为 256 > 16。无论如何,要使用“后备”,您必须将行更改为以下内容:

    set t_Co=256
    set g:solarized_termcolors=256
    
  4. 实际上在其他 CLI 应用程序中颜色输出存在一些问题,我建议您阅读 Seebi 文章 about dircolors 和 solarized github 问题跟踪器上的 ongoing(?) discussion

【讨论】:

  • 任何图形 Vim (MacVim, gVim) 使用 1600 万种颜色,所以颜色方案可以精确地选择它需要的 16 种颜色。终端 Vim 需要使用先前选择的 16 种颜色(来自终端仿真器颜色方案)或 近似 来自 256 种颜色空间的颜色。这就是 Ethan 将其称为 degraded 颜色方案的原因。
【解决方案2】:

很确定您不需要 vim 颜色主题导入,因为您已经为终结者设置了配色方案。至少,在 大量 反复试验之后,这是我让它发挥出色的唯一方法。

这是我的 vimrc 的屏幕截图,来自 vim,在终结器中:

如你所见,我没有接听电话

colorscheme solarized

所以你可以试着把它拿出来——它似乎终于对我有用了!

ps 您的屏幕截图看起来不像是从终结器中截取的 - 当然,除非我们谈论的是不同的终结器。

【讨论】:

  • 抱歉迟到的回复。你是男人!它工作得很好。非常感谢! :-)
  • 哇哦!很高兴它起作用了:D 另请注意'call togglebg#map("") 行,让您将颜色方案翻转为反向日晒
  • 这确实有效。我在多台机器上工作并在它们之间同步 vimrc。如果我在另一台机器上删除 colorscheme 行,它就不起作用。有没有什么通用的方法可以解决终结者上的这个问题?
  • 韩河:需要更多信息,但听起来你需要在另一台机器上设置终结者配色方案。
  • 这也适用于我。需要指出的另一件事 - 我的 CSApprox 插件掩盖了正在发生的事情,并且对于 Solarized 来说是不必要的。
【解决方案3】:

尝试将其添加到您的 .vimrc 文件中

let g:solarized_termcolors=16

截图中的其余设置都很好。

【讨论】:

  • 感谢 Bosvark 的回复,我用那个试过了,在那个设置下一切看起来都是灰色的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-07
  • 1970-01-01
  • 2015-10-05
  • 2014-05-09
  • 2011-12-08
  • 2012-01-26
相关资源
最近更新 更多