Emacs Init: Setup Font

By Xah Lee. Date: . Last updated: .

This page shows you how to set font for emacs in init file.

Set Font to Init via Graphical User Interface Menu

Chose the menu:

  1. menu [Options ▸ Set Default Font…]
  2. menu [Options ▸ Save Options].

font setting is saved to the Emacs Init File in the custom-set-variables section. [see Emacs Init: M-x customize]

emacs font size menu 2021-03-18
emacs font size menu 2021-03-18
emacs font size dialog 2021-03-18
emacs font size dialog 2021-03-18

Manually Set Font in Init File

put this in your Emacs Init File:

;; set default font
(cond
 ((eq system-type 'windows-nt)
  (when (member "Consolas" (font-family-list))
    (set-frame-font "Consolas" t t)))
 ((eq system-type 'darwin) ; macOS
  (when (member "Menlo" (font-family-list))
    (set-frame-font "Menlo" t t)))
 ((eq system-type 'gnu/linux)
  (when (member "DejaVu Sans Mono" (font-family-list))
    (set-frame-font "DejaVu Sans Mono" t t))))

You can add a font size, e.g. replace

"Consolas"

to

"Consolas-14"

List available fonts

(print (font-family-list))

[see Evaluate Emacs Lisp Code]

Check if a font exist

;; returns true if Symbola exists
(member "Symbola" (font-family-list))

[see Emacs: Evaluate Elisp Code]

How to install font

Restart emacs. Emacs should see it.

Reference

Emacs, font setup