fix: font fallback to Menlo when JetBrains Mono missing; revert aggressive GUI key hacks

This commit is contained in:
2026-02-22 15:18:13 +01:00
parent 0e13b8e988
commit 196ebacd47

View File

@@ -13,9 +13,14 @@
;;; ============================================================ ;;; ============================================================
(setq doom-theme 'modus-vivendi-deuteranopia (setq doom-theme 'modus-vivendi-deuteranopia
doom-font (font-spec :family "JetBrains Mono" :size 14)
doom-variable-pitch-font nil) doom-variable-pitch-font nil)
;; Font: JetBrains Mono preferred; fallback to Menlo (always on macOS)
;; Install: brew install --cask font-jetbrains-mono
(setq doom-font (if (find-font (font-spec :name "JetBrains Mono"))
(font-spec :family "JetBrains Mono" :size 14)
(font-spec :family "Menlo" :size 14)))
(setq display-line-numbers-type t) (setq display-line-numbers-type t)
@@ -95,26 +100,6 @@
mac-option-modifier 'meta mac-option-modifier 'meta
mac-right-option-modifier 'none)) mac-right-option-modifier 'none))
;; Fix C: SPC as leader key in GUI Emacs
;; In GUI mode, general-override-mode may not be active, so evil's default
;; SPC binding (evil-forward-char) takes precedence over Doom's leader key.
;; Force-enable general-override-mode and re-apply SPC → doom-leader-map.
(after! (evil general)
(general-override-mode +1))
(defun my/fix-gui-leader-key (&optional _frame)
"Bind SPC to `doom-leader-map' in evil normal/motion states.
Called for the initial GUI frame and any subsequent frames."
(when (and (display-graphic-p)
(boundp 'doom-leader-map)
(boundp 'evil-normal-state-map))
(define-key evil-normal-state-map (kbd "SPC") doom-leader-map)
(define-key evil-motion-state-map (kbd "SPC") doom-leader-map)))
;; Apply on every new GUI frame (covers emacsclient -c too)
(add-hook 'after-make-frame-functions #'my/fix-gui-leader-key)
;; Apply for the initial frame after Doom finishes init
(add-hook 'doom-after-init-hook #'my/fix-gui-leader-key)
;;; ============================================================ ;;; ============================================================