stackoverflowuser Asked: 2024-10-10 07:32:21 +0800 CST2024-10-10 07:32:21 +0800 CST 2024-10-10 07:32:21 +0800 CST 如何改变终端中的某种颜色? 772 当我打开终端,转到“首选项”,然后转到“颜色”时,我可以更改大多数颜色,但有一种颜色我似乎无法更改。 它在 Java 文件中的形式如下: 我唯一一次看到这种颜色是在我用 Java、C 或 C++ 编辑文件时(我确信它也会在其他语言的文件中显示)。所有与类、对象或变量相关的关键字都以这种颜色显示(参见上面链接的图像)。 有什么方法可以找出此颜色值的存储位置并进行更改?如果重要,我会使用vim。 command-line 1 个回答 Voted Best Answer kos 2024-10-10T09:29:47+08:002024-10-10T09:29:47+08:00 如何突出显示标记vim取决于vim有效的配色方案和当前语言。 当前语言的有效配色方案可能会在很多程度上发生改变;我将描述如何针对单个用户对特定语言和默认主题的有效配色方案进行微调,因为这可能是最常见的情况。 首先,您需要确定要更改的标记属于哪个语法组;使用 打开目标语言的文件vim,将光标放在标记的任意字符上(在本例中,例如,在p/ u/ b/ ... 中public)并运行: :echo synIDattr(synIDtrans(synID(line('.'), col('.'), 1)), 'name') 这将输出当前标记的语法组的名称(在本例中为Type:)。 您还需要确定目标语言的文件类型: :set filetype? 这将输出当前文件的当前文件类型(在本例中为java:)。 接下来,您需要使用不同的颜色vim突出显示文件Type中的语法组。java 首先,创建一个目录来存储语法规则的覆盖: mkdir -p ~/.vim/after/syntax 选择与 256 色终端兼容的颜色,然后创建一个与文件类型 + 同名的文件.vim(在本例中为java.vim): vim ~/.vim/after/syntax/java.vim 最后,将这一行添加到文件中,替换196为您选择的颜色: highlight Type ctermfg=196 sub这是在Perl 中覆盖 s 名称的结果(注意foo标记如何从青色变为红色);之前: 后:
如何突出显示标记
vim
取决于vim
有效的配色方案和当前语言。当前语言的有效配色方案可能会在很多程度上发生改变;我将描述如何针对单个用户对特定语言和默认主题的有效配色方案进行微调,因为这可能是最常见的情况。
首先,您需要确定要更改的标记属于哪个语法组;使用 打开目标语言的文件
vim
,将光标放在标记的任意字符上(在本例中,例如,在p
/u
/b
/ ... 中public
)并运行:这将输出当前标记的语法组的名称(在本例中为
Type
:)。您还需要确定目标语言的文件类型:
这将输出当前文件的当前文件类型(在本例中为
java
:)。接下来,您需要使用不同的颜色
vim
突出显示文件Type
中的语法组。java
首先,创建一个目录来存储语法规则的覆盖:
选择与 256 色终端兼容的颜色,然后创建一个与文件类型 + 同名的文件
.vim
(在本例中为java.vim
):最后,将这一行添加到文件中,替换
196
为您选择的颜色:sub
这是在Perl 中覆盖 s 名称的结果(注意foo
标记如何从青色变为红色);之前:后: