答案1
对于那些想要带有 Solarized 颜色的示例的st
人,请参阅他的要点:config.h
https://gist.github.com/gregf/5279175
答案2
除了使用 st 之外,我之前没有任何关于 st 的经验,但通过浏览源代码,我认为我已经找到了相关的部分。
我以为通过使用晒过的颜色你的意思是你想要所有使用的应用程序默认蓝色改为使用晒蓝。
您需要对 st.c 中的源代码进行一些更改,而不仅仅是 config.h。
直流电是一个全球的变量是 DC 结构的实例,每个变量dc.cols[i]
对应于要使用的颜色。
colorname中的前 16 个颜色通过函数内config.h
加载,这些颜色被插入到 内的前 16 个位置(0 到 15)。XAllocNamedcolor
xloadcols(void)
dc.col
这些对应于 ansi 转义序列颜色,更多信息请参见ANSI 转义码::颜色。
您需要在 中更改此功能xloadcols(void)
,特别是第一个 for 循环。您可以代替使用
(您可以在第二个 for 循环中看到这样的示例),这允许您指定要在每个位置插入的每种颜色的 rgb(而不是从名称加载已知的颜色) 。XAllocNamedColor
XAllocColor
对于十六进制值,请参见日光照射.vim特别是第 98 行到第 116 行,其中指定了十六进制值。
其余部分dc.cols
在 for 循环中分配,也在 中找到xloadcols(void)
,您可能不需要更改它,尽管这意味着某些应用程序可能使用这些颜色而不是您的日光颜色。
至于默认背景和前景色,这些是在 config.h 第 40 行及以下的行中设置的。
每个#define name index
定义 dc.col[index] 用于名称,例如DefaultBg
指定终端的背景颜色。
答案3
Solarized 现在可作为针对以下问题的官方补丁config.def.h
:
答案4
在 st Tip(以及 0.3 版本)中,无需编辑 st.c,只需在 config.h 中插入日光颜色即可。自从我问这个问题以来, st.c 和 config.h 似乎都发生了变化。