几个月前,meld
开始表现得很奇怪。常见的行几乎无法阅读,并显示为黑色背景上的深灰色文本。
奇怪的是,以 root 身份运行它就可以了(使用kdesudo meld
),尽管主题不太漂亮。
如何指定融合文本的颜色选项?
我在用着:
- 架构Linux
- KDE 4.14.3(也见于 4.14.2)
- 融合 3.12.2(也见于 3.12.1)
- gtk3 3.14.6(也见于 3.14.5)
故障排除
KDE系统设置
meld
使用 GTK3,所以我摆弄了“系统设置”>“通用外观和行为”>“应用程序外观”>“GTK”>“选择 GTK3 主题”。此更改反映在合并中,但我选择的三个选项都没有更改文本。 (可用的选项有 Default、Emacs 和oxygen-gtk;上面的屏幕截图中使用了后者。)
手动修改配置文件
我查找了其名称中的~
文件。gtk
~/.gtkrc-2.0
~/.gtkrc-2.0-kde4
~/.config/gtk-2.0
~/.config/gtk-3.0
~/.kde4/share/config/gtkrc
~/.kde4/share/config/gtkrc-2.0
gtk
有趣的是,它的名字中没有任何 with /root
。因此,我尝试删除一些~
文件,看看是否能为我的用户获得相同的效果。我认为所有gtkrc-2.0
文件都与合并无关。
首先,我删除了~/.config/gtk-3.0
,但这没有效果,当我打开 meld 时又重新创建了。
唯一的其他选项似乎是~/.kde4/share/config/gtkrc
,因此删除了它并启动了 meld ,这不受影响。但是,该文件并未重新创建,并且它包含一些可能相关的行(例如text[ACTIVE] = { 1.000, 1.000, 1.000 }
)。我不确定(丢失的)文件是否已加载。我尝试过kbuildsycoca4 ; kquitapp plasma-desktop ; sleep 2 ; kstart plasma-desktop
,但这没有效果。我需要手动重新加载 gtkrc 吗?为什么这个文件不受系统设置的影响/重写?
(另外,FWIW,我删除了~/.gtkrc-2.0-kde4
,它实际上是 的符号链接~/.gtkrc-2.0
,我还删除了目标本身,但这没有帮助。同样,我没有重新加载 gtk (我不确定这是否有必要,或者可能),并且当我尝试再次运行 meld 时,文件没有重新创建。)
可能相关的环境变量
$ export | grep -i gtk
declare -x GTK2_RC_FILES="/etc/gtk-2.0/gtkrc:/home/sparhawk/.gtkrc-2.0:/home/sparhawk/.kde4/share/config/gtkrc-2.0"
declare -x GTK_IM_MODULE="xim"
declare -x GTK_MODULES="canberra-gtk-module"
declare -x GTK_RC_FILES="/etc/gtk/gtkrc:/home/sparhawk/.gtkrc:/home/sparhawk/.kde4/share/config/gtkrc"
(披露:我之前曾在KDE 论坛,但没有找到解决方案。)
答案1
答案2
只让更新...
3.18 版本不会显示更改主题的首选项。
但是通过 dconf-editor,您可以访问 meld 配置并将 style-chema 设置为 'meld-dark' ...并且很高兴!
答案3
如果我这样做locate -b meld | grep home
,我会得到三个你没有提到的目录;
~/.gconf/apps/meld
~/.gconf/apps/gnome-settings/meld
~/.local/share/meld
刚刚的那个~/.local/share
好像是本地比较的历史记录,但是另外两个目录xml
里面有文件。我会尝试删除那些。
如果这不起作用,您可以meld
通过以下方式准确查看哪些文件读取:
strace -e trace=file meld |& grep home
查看输出应该有望产生其他需要调查的内容。
如果失败,我会尝试创建另一个用户帐户,登录并在那里运行 meld (但不执行其他操作)。如果显示正常,您可以查看那里的点文件/环境变量并将它们与您自己的帐户进行比较。请注意,您应该通过 X 登录,而不仅仅是使用su
或 ,sudo
这样您的桌面环境就有机会创建默认的点文件 - 这可能就是为什么它在以 root 身份运行时看起来很简单的原因。
如果这些都不起作用,你可以随时放弃并使用扩散反而。我自己还没有正确测试过它,但它做了一些meld
不能做的事情(虽然没有目录比较,所以不完全是替代品)。 :)
更新
要尝试追踪有问题的文件,您可以将新帐户中的点文件与旧帐户进行比较。不幸的是,它可能是新帐户中的几乎所有点文件,这就是为什么不要运行任何其他应用程序(尤其是网络浏览器)很重要,因为这会创建/更改更多。要比较文件,您可以尝试在新帐户中运行类似的操作:
find . -type f -exec cmp {} /home/your_account/{} \;
对于不同的,你可以用呃,Meld 进一步调查。如果这没有产生任何结果,那么可能有一个您想要删除的文件很难找到。您可以尝试返回strace
并比较两个帐户的输出。
答案4
用那里的那个覆盖 meld.css,你将能够使用带有深色主题的 Meldhttps://wiki.gnome.org/Apps/Meld/DarkThemes