Как мне установить шрифты в Emacs для Mac? - PullRequest
9 голосов
/ 15 ноября 2011

Я загрузил Carbon emacs 23.3.1 (x86_64-apple-darwin, NS apple-appkit-1038.35) из http://emacsformacosx.com/. По умолчанию используется Monaco, и я хотел бы изменить его на использование Inconsolata-dz. И я добавил:

(set-default-font "-apple-Inconsolata-dz-medium-normal-normal-*-10-*-*-*-m-0-iso10646-1")

в мой файл ~ / .emacs. Однако после перезагрузки все равно остается Монако. Он обнаружил, что Option-T (или, возможно, Command-T) вызывает диалоговое окно шрифтов, и если я выберу Inconsolata-dz из этого, он прекрасно работает. Но если я перезапущу, это вернется в Монако. Поэтому я попытался установить шрифт из меню, а затем перейти к Customize Faces и сохранить его, но все равно он не работает. Интересно то, что если я произвожу Mx description-font после изменения шрифта в диалоге Option-T, он говорит: -apple-Inconsolata-dz-medium-normal-normal- -10- - * - * -м-0-iso10646-1.

Похоже, Emacs по какой-то причине просто игнорирует этот шрифт. Почему, и что я могу сделать, чтобы заставить его использовать этот шрифт?

Обновление: я попробовал рекомендации Donkopotamus и Joost Diepenaat, но они также не сработали, хотя в итоге я получил шрифт Times вместо Monaco. Тем не менее, они отлично работают, если я просто использую Inconsolata (не Inconsolata-dz). Так что мне интересно, есть ли какая-то проблема со шрифтами с тире в их имени?

Update2: почему это не по теме? В закрытом сообщении говорится, что «вопросы [должны ...] каким-то образом связаны с программированием или разработкой программного обеспечения»; многие разработчики используют emacs, и правильные настройки очень важны. Две верхние записи в поиске «программных шрифтов» объединены в 150; поэтому конфиги шрифтов важны для программистов. Во всяком случае, если это не по теме, где подходящее место для публикации?

Ответы [ 4 ]

8 голосов
/ 15 ноября 2011

Я использую обычный Inconsolata.Из моего emacs.d / init.el:

(set-face-attribute 'default nil
                    :family "Inconsolata" :height (case system-type
                                                    ('gnu/linux 130)
                                                    ('darwin 145)) :weight 'normal)

Если вы работаете только в OSX, вы можете упростить это до

(set-face-attribute 'default nil
                    :family "Inconsolata" :height 145 :weight 'normal)
3 голосов
/ 16 ноября 2011

Я использую Inconsolata. В моем .emacs я просто установил шрифт по умолчанию на Inconsolata, используя

; check if we're on OSX
(when (featurep 'ns-win)
  (custom-set-faces
   '(default ((t (:height 140 :width normal :family "Inconsolata")))))
  )
2 голосов
/ 15 ноября 2011

Я видел такое поведение на Mac, и теперь я делаю это в моем файле инициализации emacs:

(set-face-attribute 'default nil :foundry "apple" :family "Anonymous_Pro")

Это хорошо работает для меня, но учтите, что я использую более новую (HEAD) версию Emacs. Вероятно, вам потребуется использовать "Inconsolata-dz" в качестве значения для :family.

Без этого новые кадры всегда будут появляться с использованием общесистемного стандартного моноширинного шрифта (Monaco), что, скорее всего, и происходит.

P.S. Ваша версия Emacs - Какао Emacs, а не Углеродный Emacs.

0 голосов
/ 15 ноября 2011

Вы уверены, что ваш .emacs читается? Например, действуют ли другие вещи там?

Предполагая, что все в порядке, я использую это в моем файле инициализации:

;; (insert "\n(set-default-font \"" (cdr (assoc 'font (frame-parameters))) "\")\n")

Обратите внимание, что это намеренно закомментировано. Теперь установите ваш шрифт, используя Command-T, затем перейдите в конец строки выше и выполните C-x C-e . Он вставит команду, чтобы установить ваш шрифт таким, какой он есть сейчас. Сохраните / выйдите / введите Emacs, и у вас должен быть ваш шрифт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...