fix: increase GCMH idle delay + reduce idle redisplay
- gcmh-auto-idle-delay-factor: 10 → 20 (less frequent idle GC) - gcmh-high-cons-threshold: 200MB (GC triggers less often) - jit-lock-defer-time: 0.5s (deferred fontification) - redisplay-dont-pause + fast-but-imprecise-scrolling
This commit is contained in:
13
config.el
13
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)
|
||||
|
||||
Reference in New Issue
Block a user