Emacs: графический интерфейс с emacs --daemon не загружает шрифты правильно
Я установил emacs --daemon
, чтобы быстрее запускать emacs. Мне особенно нравится GUI-версия emacs, поэтому я делаю emacsclient -c
, чтобы открыть новый фрейм emacs.
Проблема в том, что я изменил свои шрифты, но эти шрифты не загружаются, если я запускаю emacsclient -c
. Однако они применяются, если я начинаю только emacs
(но это вызывает оценку всего .emacs
).
Итак: есть ли способ применения моих настроек шрифта также, если я запускаю emacs с помощью emacsclient -c
?
Ответы
Ответ 1
Короче говоря, для этого вам нужно использовать default-frame-alist
. Вот так:
(setq default-frame-alist '((font . "Inconsolata-dz-15")))
Это будет оцениваться каждый раз, когда вы запускаете новый графический фрейм в Emacs. Кроме того, вы сохраняете другие параметры, связанные с фреймом, такие как настройки для fringe
и т.д.
Ответ 2
Следующие действия, вероятно, сделают то, что вы ищете.
(add-to-list 'default-frame-alist '(font . "Inconsolata-12"))
Ответ 3
Если вы используете Emacs 23.2, изменение моноширинного шрифта в GNOME также изменит шрифт Emacs. В более раннем издании вам нужно будет сделать это:
echo "Emacs.font: Monospace-10" >> ~/.Xresources
xrdb
Замените Monospace-10 на фактический шрифт, который вы хотите использовать.
Ответ 4
emacslient
имеет опцию -F
(--frame-parameters
), которая позволяет указать шрифт вновь созданного фрейма
Пример:
emacsclient -c -F '((font . "8x16"))' some_file