Простое добавление set-default-font в ваш .emacs не сработает для нескольких кадров - каждый новый кадр вернется к старому значению по умолчанию. Настройка работает с несколькими кадрами, но мне так и не удалось заставить ее работать должным образом на разных платформах (и на разных платформах разные настройки шрифта даже для одного и того же шрифта).
Так! Это то, что у меня есть в моем .emacs. Он работает в linux, win32 и cygwin и работает с несколькими фреймами (и, следовательно, с клиентом emacs).
(defconst win32p (eq system-type 'windows-nt) "Are we running on a Windows system?")
(defconst cygwinp (eq system-type 'cygwin) "Are we running on Cygwin?")
(defconst linuxp (or (eq system-type 'gnu/linux) (eq system-type 'linux)) "Are we running on Linux?")
;;font setups
(defvar vsc-little-font "" "*My lovely little font")
(when linuxp
(setq vsc-little-font "ProggyTinyTT-8"))
(when cygwinp
(setq vsc-little-font "ProggyTinyTT-16"))
(when win32p
(setq vsc-little-font "-outline-ProggyTinyTT-normal-r-normal-normal-16-120-96-96-c-*-iso8859-1"))
(add-to-list 'default-frame-alist (cons 'font vsc-little-font))
(add-to-list 'initial-frame-alist (cons 'font vsc-little-font))