我曾经使用过 GNOME DE,但最近我换成了 Awesome WM。
我唯一的问题是无法在 Gnome-terminal 中设置平滑字体。
如果我启动 gnome-settings-daemon,终端中的所有字体都会变得平滑,但是是否可以在没有 gnome-settings-daemon 的情况下使其工作?
如果在另一个终端中字体平滑,我会更换终端。
我的 ~/.fonts.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Give all fonts light hinting and subpixel smoothing -->
<!--
<match target="font">
<edit mode="assign" name="rgba">
<const>rgb</const>
</edit>
<edit mode="assign" name="hinting">
<bool>true</bool>
</edit>
<edit mode="assign" name="hintstyle">
<const>hintslight</const>
</edit>
<edit mode="assign" name="antialias">
<bool>true</bool>
</edit>
</match>
-->
<!--
<match target="font">
<test qual="all" name="rgba"><const>unknown</const></test>
<edit name="rgba" mode="assign"><const>rgb</const></edit>
</match>
-->
<!-- Do not smooth Fixedsys -->
<match target="font">
<test name="family">
<string>FixedsysTTF</string>
</test>
<edit name="antialias">
<bool>false</bool>
</edit>
</match>
<!-- Do not smooth Tahoma 8pt and under -->
<match target="font">
<test name="family">
<string>Tahoma</string>
</test>
<test compare="less" name="size" qual="any">
<double>9</double>
</test>
<edit name="antialias">
<bool>false</bool>
</edit>
</match>
<!-- Do not smooth Times New Roman or Courier New for 12pt and under -->
<match target="font">
<test name="family">
<string>Times New Roman</string>
</test>
<test compare="less" name="size" qual="any">
<double>13</double>
</test>
<edit name="antialias">
<bool>false</bool>
</edit>
</match>
<match target="font">
<test name="family">
<string>Courier</string>
<string>Courier New</string>
<string>Courier 10 Pitch</string>
</test>
<test compare="less" name="size" qual="any">
<double>11</double>
</test>
<edit name="antialias">
<bool>false</bool>
</edit>
</match>
<!-- Do not autohint Courier New, Fixedsys, Tahoma, or Times New Roman -->
<match target="font">
<test name="family">
<string>Courier New</string>
<string>Times New Roman</string>
<string>Tahoma</string>
<string>FixedsysTTF</string>
</test>
<edit mode="assign" name="hintstyle">
<const>hintslight</const>
</edit>
<edit mode="assign" name="autohint">
<bool>false</bool>
</edit>
</match>
<match target="pattern">
<test qual="any" name="family">
<string>Bitstream Vera Sans</string>
</test>
<edit name="family" mode="assign">
<string>Arial</string>
</edit>
</match>
<match target="pattern">
<test qual="any" name="family">
<string>Helvetica</string>
</test>
<edit name="family" mode="assign">
<string>Arial</string>
</edit>
</match>
<match target="pattern">
<test qual="any" name="family">
<string>Palatino</string>
</test>
<edit name="family" mode="assign">
<string>Georgia</string>
</edit>
</match>
</fontconfig>
~/.gtkrc-2.0
include "/usr/share/themes/Human/gtk-2.0/gtkrc" gtk-can-change-accels = 1
gtk-theme-name = "Human" gtk-icon-theme-name = "Human" gtk-font-name = "Ubuntu 12"
gtk-xft-antialias = 1 gtk-xft-hinting
= 1 gtk-xft-hintstyle = "hintslight" gtk-xft-rgba = "rgb"
~/.Xresources
Xft.dpi: 96.0
Xft.hinting: true
Xft.hintstyle: hintslight
Xft.antialias: true
Xft.rgba: none
答案1
抱歉,如果这听起来有点轻率,但你可以切换到不同的终端(例如,XFCE 自带的终端)。我建议这样做的原因是,据我所知,gnome-terminal仅有的从 gnome-settings-daemon 获取其设置。
修复此问题的另一种方法可能是运行 xsettingsd:https://code.google.com/p/xsettingsd/
它应该是 gnome-settings-daemon 的替代品。我正在运行它,但由于我实际上并不运行很多 GNOME 应用程序,所以我不能肯定它是否真的有效(主要是,我很久以前就设置过它,而且,由于它实际上并不占用那么多资源,所以我就不管它了)。
答案2
您可以安装strace
并运行strance gnome-settings-daemon
。
检查输出并找出 gnome-settings-daemon 正在做什么来改变字体,用另一种编程语言创建它的一个小子集。完成!