По общему признанию, это проблема первого мира, но я немного придирчив к внешнему виду дисплей, и меня действительно раздражает, когда какой-то режим устанавливает новый размер шрифта, семейство, полужирный / курсив и т. д. Я бы хотел поставить (set-frame-font "Menlo-10")
в верхней части моего .emacs, а затем заставить emacs никогда не изменять какие-либо аспекты этого шрифта по умолчанию, кроме цвета.
Я могу добиться желаемого эффекта, сделав что-то вроде этого:
(mapc (lambda (face)
(set-face-attribute face nil
:family "Menlo"
;; something like (cdr (assoc 'font (frame-parameters)) would be better
;; for the :family, but it didn't immediately work
:width 'normal
:height 1.0
:weight 'normal
:underline nil
:slant 'normal))
(remove 'default (face-list)))
но это сработает только после того, как я загрузил новый буфер, в котором были созданы лица с блокировкой шрифтов, которые нужно изменить, и это ужасный взлом, несмотря ни на что . Я подозреваю, что в блокировке шрифтов просто нет возможности игнорировать некоторые части того, что запрашивает режим, но я подумал, что спрошу.
Кроме того, AUCTeX, безусловно, является худшим нарушителем, поэтому, если есть альтернативный параметр AUCTeX, который не позволяет ему запрашивать изменения в семье, размере и т. Д. В первую очередь, это, по крайней мере, сделает проблему менее раздражающей. .
В настоящее время я использую последнюю версию Emacs 24, взятую из HEAD.