Improve unicode, emoji, & symbol font support

+ Adds doom-emoji-fallback-font-families
+ Adds doom-symbol-fallback-font-families
+ Gives doom-unicode-font higher precedence (and sets it to nil by
  default, since Emacs defaults to symbola already).
+ Store custom face settings in psuedo theme, rather than crowding the
  user theme (which may be immortalized to custom-file, which we want to
  avoid).
+ Now, after-setting-font-hook is guaranteed to fire after *all* fonts
  are set, giving you a more reliable interface to add your own
  font(set) modifications.

More testing is needed to ensure the patched fonts our ligatures modules
don't conflict with this change.
This commit is contained in:
Henrik Lissner 2021-05-06 04:06:19 -04:00
parent b63441387b
commit d4dec35658
3 changed files with 56 additions and 52 deletions

View file

@ -61,6 +61,13 @@ envvar will enable this at startup.")
(define-error 'doom-private-error "Error in private config" 'doom-error)
(define-error 'doom-package-error "Error with packages" 'doom-error)
;;; Declare a psuedo theme to store faces and variables in, with no risk of it
;;; getting saved to `custom-file', or accidentally overwritten by user config.
(custom-declare-theme 'doom nil)
(enable-theme 'doom)
;; But immediately hide it, because it's not a real theme.
(setq custom-enabled-themes (remq 'doom custom-enabled-themes))
;;
;;; Directory variables