Emacs

從 Emacs 的 .Xresources 和 .Xdefaults 載入 X 資源

  • July 26, 2015

據我所知,Emacs 必須.Xresources在啟動時載入文件並從那裡讀取字型渲染設置。但是只有當我xrdb merge先執行然後啟動 emacs 時,我才會這樣做。我想我在這裡配置錯誤。

當我的 emacs 以 systemd 服務啟動時,我剛剛添加ExecStartPre=xrdb -merge ~/.Xresources到 emacs.service 中。它實際上解決了這個問題。但我仍然想知道為什麼它不能正常工作?

此外,我的 .Xdefaults 是 .Xresources 的符號連結,我在 openSUSE 上使用 KDE。

它完全按照應有的方式工作。~/.Xresources通常在您登錄時載入。許多發行版在 X 會話啟動腳本中執行此操作。如果您不使用完整的 destkop 環境,則可能需要將其添加到您的登錄腳本中,這在您的情況下是 systemd,就像您所做的那樣。來自的資源~/.Xresources被載入到 X 伺服器並應用於顯示在該 X 伺服器上的所有程序。

您可能會混淆.Xresources~/.Xdefaults它由每個 X 客戶端應用程序在啟動時載入,然後應用於該應用程序。遠端使用 X 時,~/.Xresources文件在 X 伺服器端,而~/.Xdefaults文件在客戶端。

請注意,只有~/.Xdefaults在伺服器中沒有載入資源時才會載入 Emacs(更準確地說,如果XResourceManagerString返回NULL)。~/.Xdefaults-$HOSTNAME它也無條件載入。我不知道為什麼。

引用自:https://unix.stackexchange.com/questions/217920