私が覚えている限り、Emacsは.Xresources
起動時にこのファイルをロードし、そこからフォントレンダリング設定を読む必要があります。しかし、私はxrdb merge
最初に実行してからemacsを起動したときにのみこれを行います。私の設定に問題があるようです。
私のemacsがシステムサービスとして起動したら、私はちょうどExecStartPre=xrdb -merge ~/.Xresources
emacs.serviceに追加しました。実際に問題は解決されます。しかし、なぜそれがうまく機能しないのか知りたいのですが。
また、私の.Xdefaultsは.Xresourcesへのシンボリックリンクであり、openSUSEでKDEを使用しています。
答え1
正確に動作します。~/.Xresources
通常はログイン時にロードされます。多くのディストリビューションには、Xセッション起動スクリプトの一部として含まれています。完全なdestkop環境を使用していない場合は、ログインスクリプトにそれを追加する必要があります。あなたの場合は、そうであったようにシステム化されます。のリソースは~/.Xresources
Xサーバーにロードされ、そのXサーバーに表示されているすべてのプログラムに適用されます。
起動時に各Xクライアントアプリケーションによってロードされ、そのアプリケーションに適用されるという事実のために.Xresources
混乱する可能性があります。~/.Xdefaults
X をリモートで使用する場合、~/.Xresources
ファイルは X サーバー側にあり、~/.Xdefaults
ファイルはクライアント側にあります。
~/.Xdefaults
Emacsはサーバーにロードされていない場合にのみリソースをロードします(より正確にはをXResourceManagerString
返す場合NULL
)。また、~/.Xdefaults-$HOSTNAME
無条件ロードされます。理由はわかりません。