web-dev-qa-db-ja.com

バッファの残りの部分が実行されているのに、init.elでemacsが実行されていない(set-face-attribute ...)のはなぜですか?

デフォルトのフォントサイズが少し大きすぎるので、init.elに(set-face-attribute 'default nil :height 100)があります。ただし、emacsがロードされている場合は実行されません。

init.elcの代表的な更新バージョンではないinit.elファイルがなく、残りのinit.elが実行されていることを知っています。

それを上書きする可能性のある他の(set-face-attribute ...)セックスはありません。

Emacsをロードして自分で実行した後、init.elに戻ると、プロパティが正しく設定されます(つまり、すべてのバッファー(新しいフレームではない)に対して永続的に)

4
Squidly

設定ファイルから少し切り取った後、それが(add-to-list 'default-frame-alist '(font . "DejaVu Sans Mono-12"))によるものであることがわかりました。

以前に割引した理由は、initファイルの最後で(set-face-attribute 'default nil :height 100)を実行したためです。

解決策は、default-frame-alist(add-to-list 'default-frame-alist '(font . "DejaVu Sans Mono-12") '(height . 100))に変更するsexpを変更し、face-attributeを直接変更するsexpを削除することです。

4
Squidly

これは古いスレッドですが、同じ問題が発生し、なんとか修正できました。あなたもそうだったようですが、他のどこにも見つからなかったので、私のソリューションに貢献したいと思いました。

〜/ .emacs.d /init.elに次の行を追加しました。

(add-hook 'find-file-hook (lambda () (set-face-attribute 'default nil :height 105)))

そしてそれはうまくいった。提案のためのOPのコメントのalexisへの小道具。

0
preskitt91