diff --git a/config.el b/config.el index 35cfe2c..79970d1 100644 --- a/config.el +++ b/config.el @@ -410,6 +410,13 @@ (setq gc-cons-threshold (* 100 1024 1024) ;; 100 MB gc-cons-percentage 0.6) +;; GCMH — Doom's GC manager. Zvýšit idle delay (default 15s, ale gcmh ho mění) +;; gcmh-idle-delay ovlivňuje jak často se spouští GC v idle → redisplay → Zoom jump +(after! gcmh + (setq gcmh-idle-delay 'auto ;; nebo konkrétní číslo, např. 60 + gcmh-auto-idle-delay-factor 20 ;; default 10, zvýšeno pro méně GC + gcmh-high-cons-threshold (* 200 1024 1024))) ;; 200MB → GC se spustí méně často + (add-hook 'focus-out-hook #'garbage-collect) (setq doom-modeline-refresh-rate 5.0) ;; zvýšeno — méně redraws pro macOS Zoom @@ -445,6 +452,12 @@ (add-hook 'after-make-frame-functions (lambda (_f) (send-string-to-terminal "\e[?12l")))) +;; Inhibit redisplay during idle — radikální řešení pro Zoom jumping +;; Potlačí Emacs redisplay pokud se nic nezměnilo +(setq redisplay-dont-pause t) ;; dokončit redisplay najednou, ne po částech +(setq jit-lock-defer-time 0.5) ;; odložit fontifikaci (způsobuje redisplay) +(setq fast-but-imprecise-scrolling t) ;; méně redraws při scrollu + ;; Auto-revert: zvýšit interval, vypnout VC info check (setq auto-revert-interval 30) (setq auto-revert-check-vc-info nil)