【问题标题】:OSX Terminal/Vim Syntax ColorsOSX 终端/Vim 语法颜色
【发布时间】:2022-01-04 02:25:38
【问题描述】:

我最近花了很多时间检查我的 Vim 和 Tmux 配置,试图优化我的工作流程,但我遇到了一个(小而烦人的)问题,这让我很头疼。我目前正在使用 OSX,但我在使用 Windows 的终端/powershell 时遇到了同样的问题。

我的问题是我无法更改出现在默认 vim 语法突出显示中的brown 颜色,该颜色用于我编写的许多语言。我所说的颜色可以在这个 vim 中看到颜色测试:

在默认的 OSX 终端(和 powershell)中,您可以通过终端首选项设置 ANSI 颜色,但是,brown 颜色不包含在 GUI 配置选项中。这会导致一些丑陋的语法突出显示不符合我想要的配色方案:

我的问题是,更改此默认颜色最便携的方法是什么?我希望能够在我的.vimrc 中做一些事情来解决这种丑陋的颜色,所以我不必为我可能使用的任何系统重新配置颜色,但我知道这可能是不可能的。另一种方法是更改​​语法高亮颜色,但我对此的调查没有结果。

谢谢!

附录: 在 OSX 配置文件中为屏幕截图选择的颜色:

【问题讨论】:

  • 您是否尝试在 macOS 上将 Linux /usr/share/vim/vimrc 复制为您的帐户 .vimrc?

标签: bash macos vim terminal tmux


【解决方案1】:

遗憾的是,默认的 Vim 颜色方案并不像人们希望的那样整洁。在这种情况下,Brown 有点像“笼统”的名称,最终在不同的上下文中会被不同地解释。

  • 在 GUI Vim 中,Brown 指的是 X11 的 rgb.txt 中的“棕色”:#A52A2A
  • 在带有&t_Co == 256 的 TUI Vim 中,您会在“xterm 调色板”中获得#af5f00,又名130
  • 在带有&t_Co == 16&t_Co == 8 的TUI Vim 中,您会看到终端调色板的“黄色”,也就是3

从表面上看,你似乎受到了第二种情况的影响。

虽然存在大量更改所谓的“xterm 调色板”的方法,但您将很难以直接、不凌乱的方式更改特定颜色。

你能做什么……

  • :set background=dark 强制 Vim 使用不包括“棕色”的一组不同的默认颜色。
  • 选择不使用该特定颜色的内置或第三方配色方案。
  • 按照in this gist 的说明,用xterm palette 中的任何颜色覆盖Statement 高亮组。

【讨论】:

  • 覆盖突出显示组是我一直在寻找的,因为它在.vimrc 中,这意味着我不必更改我访问的每个系统的设置。随身携带.vimrc。我需要覆盖的组是Constants。对于其他环顾四周的人,此文档包含所有可用突出显示组的列表/信息:vimdoc.sourceforge.net/htmldoc/syntax.html
  • 这是Constant,而不是Constants
猜你喜欢
  • 1970-01-01
  • 2013-07-04
  • 2011-01-13
  • 1970-01-01
  • 1970-01-01
  • 2016-01-03
  • 2010-12-25
  • 2020-10-24
  • 2014-08-28
相关资源
最近更新 更多