fix: org-modern hook+after!, fragtog named fn, super-agenda zjednodusena config

- org-modern: pouzit :hook s pojmenovanou funkci my/org-modern-maybe
  + after! blok ktery aplikuje org-modern i na uz otevrene buffery (inbox.org)
- org-fragtog: same pattern, pojmenovana fn my/org-fragtog-maybe
- org-super-agenda: odebrana skupina Brzy (before +3d nespolehliva v quoted list),
  org-super-agenda-mode presunuto do after! bloku (jistejsi load-order)
This commit is contained in:
2026-02-23 19:03:08 +01:00
parent a53d9c7986
commit 4c5c284439

View File

@@ -1131,18 +1131,27 @@ Otherwise: runs interactive ement-connect, then opens rooms after sync."
;;; ORG-MODERN — lepší vizuální styl org-mode ;;; ORG-MODERN — lepší vizuální styl org-mode
;;; ============================================================ ;;; ============================================================
;; POZOR: global-org-modern-mode zapíná org-modern i v export temp bufferech ;; Pozn.: org-modern-table nil — tabulkove overlaye mohou interferovat s LaTeX exportem.
;; → rozbíjí org-latex export. Aktivujeme pouze v file-backed bufferech. ;; :hook zajisti spravny load-order; after! blok aktivuje org-modern i v uz
;; org-modern-table vypnuto — tabulkové overlaye mohou interferovat s exportem. ;; otevrenych bufferech (inbox.org otevreny pred loadem balicku).
(use-package! org-modern (use-package! org-modern
:after org :after org
:hook (org-mode . my/org-modern-maybe)
:config :config
(setq org-modern-star '("" "" "" "") (setq org-modern-star '("" "" "" "")
org-modern-table nil org-modern-table nil
org-modern-checkbox t) org-modern-checkbox t))
(add-hook 'org-mode-hook
(lambda () (defun my/org-modern-maybe ()
"Enable org-modern-mode only in file-backed buffers (ne export temp buffery)."
(when buffer-file-name (when buffer-file-name
(org-modern-mode 1)))
;; Aktivovat i v uz otevrenych org bufferech
(after! org-modern
(dolist (buf (buffer-list))
(with-current-buffer buf
(when (and (derived-mode-p 'org-mode) buffer-file-name)
(org-modern-mode 1))))) (org-modern-mode 1)))))
@@ -1150,41 +1159,42 @@ Otherwise: runs interactive ement-connect, then opens rooms after sync."
;;; ORG-FRAGTOG — auto-render LaTeX fragmentů ;;; ORG-FRAGTOG — auto-render LaTeX fragmentů
;;; ============================================================ ;;; ============================================================
;; POZOR: org-fragtog-mode NESMÍ být v export temp bufferech (org-modern stejný problém).
;; Guard: pouze v file-backed bufferech, ne v exportních kopích. ;; Guard: pouze v file-backed bufferech, ne v exportních kopích.
(use-package! org-fragtog (use-package! org-fragtog
:after org :after org
:config :hook (org-mode . my/org-fragtog-maybe))
(add-hook 'org-mode-hook
(lambda () (defun my/org-fragtog-maybe ()
"Enable org-fragtog-mode only in file-backed buffers."
(when buffer-file-name (when buffer-file-name
(org-fragtog-mode 1))))) (org-fragtog-mode 1)))
;;; ============================================================ ;;; ============================================================
;;; ORG-SUPER-AGENDA — skupiny v agenda view ;;; ORG-SUPER-AGENDA — skupiny v agenda view
;;; ============================================================ ;;; ============================================================
;; Pozn.: :deadline (before DATE) vyzaduje absolutni datum nebo evaluaci —
;; v plain quoted listu nefunguje spolehlive. Skupina "Brzy" odebrana.
;; org-super-agenda-mode zapnut az po loadu pres after! (jistejsi nez v :config).
(use-package! org-super-agenda (use-package! org-super-agenda
:after org-agenda :after org-agenda
:config :config
;; org-read-date v backtick se vyhodnotí při startu a datum stárne.
;; Používáme statický quoted list s relativním řetězcem "+3d".
(setq org-super-agenda-groups (setq org-super-agenda-groups
'((:name "Dnes" '((:name "Dnes"
:scheduled today :scheduled today
:deadline today) :deadline today)
(:name "Brzy" (:name "Cekam"
:deadline (before "+3d"))
(:name "Čekám"
:todo "WAIT") :todo "WAIT")
(:name "Projekt Kyndryl" (:name "Kyndryl"
:tag ("kyndryl" "work")) :tag ("kyndryl" "work"))
(:name "ZTJ" (:name "ZTJ"
:tag "ztj") :tag "ztj")
(:name "Ostatní" (:name "Ostatni"
:anything t))) :anything t))))
(org-super-agenda-mode))
(after! org-super-agenda
(org-super-agenda-mode 1))
;;; ============================================================ ;;; ============================================================