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


3

私が持っている(set-face-attribute 'default nil :height 100)私は少し大きすぎるデフォルトのフォントサイズを見つけるために私のinit.elに。ただし、emacsがロードされても実行されません。

私は持っていないinit.elc私の代表更新されたバージョンではありませんファイルをinit.el、私は私の残りの部分は知ってinit.el実行されています。

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

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


あなたinit.elはそれを上書きしていませんが、それはまだ効果がないかもしれません。おそらくset-face-attributeバッファごとのプロパティですか?(これはすべてメモリからです)。後で実行されるフックにコマンドを入れてみてください。
アレクシス

2
コードは正しいです。初期化ファイルでそれだけを使用してみて、他のすべてのコードとパッケージを削除してください。それが機能する場合(つまり、を除く空白のinitでset-face-attribute . . .)、他の設定で他の何かと競合しています。すでに他の可能性を模索していset-face-attributeて、何も思いつかず、カラーテーマを無効にしている場合は、競合が見つかるまで残りの設定をゆっくりと再度有効にする必要があります。また、などのフォント仕様のフレーム設定も探してくださいdefault-frame-alist
ローリスト

回答:


3

私の設定ファイルからいくつかのチョッピングビットの後、私はそれが原因であることがわかった(add-to-list 'default-frame-alist '(font . "DejaVu Sans Mono-12"))

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

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


1
1.適切な場合は、独自の回答を受け入れる必要があります。2. 初期化ファイルでLispを使っていじるのではなく、カスタマイズdefault-frame-alistM-x customize-option)しませんか?これには理由があります。
ドリュー

まだ意図したとおりに機能していないようです。私はまだ答えを編集するために戻っていませんでした。elispに関しては、customizeを使用することを好みます。どちらのオプションも有効であると思います。elispアプローチを好むと思います。
イカ

0

これは古いスレッドですが、私は同じ問題を抱えていて、それを修正することができました。あなたもそうだったようですが、他のどこにも見つからなかったので、私の解決策を提供したいと思いました。

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

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

そしてそれは働いた。提案に対するOPのコメントのアレクシスへの小道具。


これにより、最初のスクラッチバッファーのフォントサイズが正しくなりませんか?
ラドンロズバラ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.