4

在 ubuntu 上从 CLI 启动 gitk 时出现此错误

vihaan@Trojan :~$ gitk
application-specific initialization failed: unknown color name "S_base3"
Error in startup script: unknown color name "S_base3"
    (database entry for "-background" in widget ".")
    invoked from within
"load /usr/lib/x86_64-linux-gnu/libtk8.6.so Tk"
    ("package ifneeded Tk 8.6.1" script)
    invoked from within
"package require Tk"
    (file "/usr/bin/gitk" line 10)

如何解决?

4

1 回答 1

5

这是相当棘手的,老式 X11 的东西。

您的 Xrdb 包含 gitk 主窗口的背景颜色的规范S_base3,但没有人知道如何解析该颜色名称,无论是 Tk 本身还是 Xserver,这意味着当 gitk 应用程序尝试创建顶级小部件时,您会遇到错误创建它的主窗口(它试图解析 Xrmdb 条目并执行相当于惊呼“Wat!?”的软件)。

Xrdb 是一种为 GUI 应用程序的各种属性指定默认值的方法。这些属性之一是背景颜色。在您的情况下,您可能有一个类似这样的条目:

Gitk.background: S_base3

或者可能:

*.background: S_base3

Xrdb 实际上是在 X 根窗口 ( RESOURCE_MANAGER) 的一个属性中维护的,它在所有应用程序中都是全局的。默认内容通常从您的主目录中的文件初始化(通常~/.Xresources),但它们也可以由您的桌面环境设置。找出导致问题的原因可能很棘手,因为很多程序都可以写入该属性。

xrdb程序可用于编辑资源数据库。例如,您可以使用:

xrdb -query >xprops.txt

将当前内容列出到xprops.txt. 编辑文件以获取一些合理的值,然后使用:

xrdb -load <xprops.txt

安装新值。

于 2014-08-18T08:35:51.823 回答