emacs: 他のテーマを読み込んでも背景色は変わりません。

emacs: 他のテーマを読み込んでも背景色は変わりません。

私はGUI Emacsを使用しています。どのカスタムテーマをロードしても、背景色は変わりません。これはおそらく重要ではないでしょう。ただし、別のテーマを読み込むと、常に次のメッセージが表示されます。

message [sml] sml/theme set to automatic

ミニバッファから。おそらく関連する省略は次のとおりです。

(require 'powerline)
     .
     .
     .
(setq sml/theme 'powerline)
(sml/setup)

私はSolarized-lightのわずかに変更されたバージョンをテーマにしています。私の.emacsファイルには次のものがあります。

(load-theme 'my-solarized-light 1)
;; (set-background-color "#fffff0")   ;; not necessary because theme was customized

solarized-lightとの唯一の違いmy-solarized-lightは、背景色を#FDF6E3の代わりに#FFFFF0に設定したことです。一つの問題は、私が何をしたか覚えていないということです。

私のファイルの上部付近には次の.emacsものcustom-set-variablesがあります。

'(custom-enabled-themes (quote (my-solarized-light)))

「テーマの読み込み」が正しく機能するようにするにはどうすればよいですか?

答え1

私も同じ問題があります。

私の.spacemacsファイルにdescribe-face値が設定されるいくつかのフォント設定を修正しました。custom-set-faces

(custom-set-faces
 ;; custom-set-faces was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
 '(org-table ((t (:background "black" :foreground "#586e75" :weight bold)))))

これはすべてのテーマに背景色を適用するようです。このカスタマイズを削除してspacemacsを再起動すると、問題が解決しました。

答え2

有効にして使用した場合セッションの保存、ファイルのコピー.emacs.d/.emacs.desktopもそこに保管されているようです。background-colorそれを取り除くことは私にとって解決策でした。

注:emacsセッションで有効になっ.emacs.desktopている間にemacs内のファイルを変更すると、emacsが外部で変更されたため、(desktop-save-mode 1)emacsを終了したときに更新するかどうかを尋ねられます。.emacs.desktop今回は「いいえ」と言いたいです。これは、emacsが独自のメモリ内コピーで更新し、background-color変数を削除したい項目に設定することもできるためです。

(最初の投稿ですのでご了承ください。))

答え3

Mac OSでemacs 27を使用して同じ問題が発生しました。ここの別の答えのように、私はM-x customize-face default(「デフォルトの顔設定」のため)まだ何らかの理由でこのバージョンでは動作しません)実際に背景と前景を設定します。隣のチェックボックスをオフにしましたが、テーマが再び正しく機能し始めました。

関連情報