From 4c5c2844395f6ac3fee159a63f1e710f53ae17c9 Mon Sep 17 00:00:00 2001 From: Daneel Date: Mon, 23 Feb 2026 19:03:08 +0100 Subject: [PATCH] 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) --- config.el | 56 ++++++++++++++++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 23 deletions(-) diff --git a/config.el b/config.el index d4d7649..39d097d 100644 --- a/config.el +++ b/config.el @@ -1131,60 +1131,70 @@ Otherwise: runs interactive ement-connect, then opens rooms after sync." ;;; ORG-MODERN — lepší vizuální styl org-mode ;;; ============================================================ -;; POZOR: global-org-modern-mode zapíná org-modern i v export temp bufferech -;; → rozbíjí org-latex export. Aktivujeme pouze v file-backed bufferech. -;; org-modern-table vypnuto — tabulkové overlaye mohou interferovat s exportem. +;; Pozn.: org-modern-table nil — tabulkove overlaye mohou interferovat s LaTeX exportem. +;; :hook zajisti spravny load-order; after! blok aktivuje org-modern i v uz +;; otevrenych bufferech (inbox.org otevreny pred loadem balicku). (use-package! org-modern :after org + :hook (org-mode . my/org-modern-maybe) :config (setq org-modern-star '("◉" "○" "✸" "✿") org-modern-table nil - org-modern-checkbox t) - (add-hook 'org-mode-hook - (lambda () - (when buffer-file-name - (org-modern-mode 1))))) + org-modern-checkbox t)) + +(defun my/org-modern-maybe () + "Enable org-modern-mode only in file-backed buffers (ne export temp buffery)." + (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-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. (use-package! org-fragtog :after org - :config - (add-hook 'org-mode-hook - (lambda () - (when buffer-file-name - (org-fragtog-mode 1))))) + :hook (org-mode . my/org-fragtog-maybe)) + +(defun my/org-fragtog-maybe () + "Enable org-fragtog-mode only in file-backed buffers." + (when buffer-file-name + (org-fragtog-mode 1))) ;;; ============================================================ ;;; 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 :after org-agenda :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 '((:name "Dnes" :scheduled today :deadline today) - (:name "Brzy" - :deadline (before "+3d")) - (:name "Čekám" + (:name "Cekam" :todo "WAIT") - (:name "Projekt Kyndryl" + (:name "Kyndryl" :tag ("kyndryl" "work")) (:name "ZTJ" :tag "ztj") - (:name "Ostatní" - :anything t))) - (org-super-agenda-mode)) + (:name "Ostatni" + :anything t)))) + +(after! org-super-agenda + (org-super-agenda-mode 1)) ;;; ============================================================