ターミナルでフレームを開いたときに、emacs が背景色を持たないようにしたいと思います。背景が半透明の端末を使用しており、背景色の文字が「透けて見える」ことはありません。TERM は「xterm-256color」に設定されています。
フレームがグラフィカルでない場合、emacs にデフォルトの背景色 (色をまったく使用しない) を使用させるにはどうすればよいですか?
編集: 私はそれを手に入れました:
(add-to-list 'custom-theme-load-path "~/.emacs.d/themes")
(load-theme 'my-awesome-theme t)
(defun on-frame-open (frame)
(if (not (display-graphic-p frame))
(set-face-background 'default "unspecified-bg" frame)))
(on-frame-open (selected-frame))
(add-hook 'after-make-frame-functions 'on-frame-open)
上記のコードを init ファイルに入れましたが、ターミナルで emacsclient を開いたときにのみバックグラウンドを抑制し、emacs 自体は抑制しません (つまり、 で呼び出されたときのみであり、 で呼び出されたemacsclient -t
ときではありませんemacs
)。余分なものを追加(unless window-system (set-face-background 'default "unspecified-bg" (selected-frame)))
しても機能せず、グラフィック フレームが混乱するだけです。
なぜこれが起こるのかについてのアイデアはありますか?