commit - 51d81f1bb404513593f9196b820658dcff970ccf
commit + f500dcc20d9e88358559f3fe5adb649c3dbd8ed6
blob - 9c0c469c26143c580437d3dc49aa2883d12112d8
blob + 9f6c36495d33e6b35f7d2155742ff00895b94143
--- doom/config.el
+++ doom/config.el
:prepend t
:empty-lines 1)))
+;; org-timeblock — visual day/week grid of SCHEDULED org entries.
+;; M-x org-timeblock (multi-day grid view)
+(use-package! org-timeblock
+ :after org
+ :config
+ (setq org-timeblock-span 7 ; show a full week
+ org-timeblock-scale-options '(6 . 22) ; 6am–10pm
+ org-timeblock-display-time t
+ org-timeblock-current-time-indicator t
+ org-timeblock-show-future-repeats t ; expand +1w repeaters
+ org-timeblock-tag-colors
+ '(("itm" . org-timeblock-blue)
+ ("apc" . org-timeblock-magenta)
+ ("personal" . org-timeblock-green)))
+
+ (defun +org-timeblock-anchor-to-sunday ()
+ "Start the org-timeblock view at Sunday of the current week."
+ (let* ((today (decode-time))
+ (dow (decoded-time-weekday today)) ; 0=Sun … 6=Sat
+ (sunday (org-timeblock-time-inc 'day (- dow) today)))
+ (setq org-timeblock-daterange
+ (cons sunday
+ (org-timeblock-time-inc 'day (1- org-timeblock-span) sunday)))
+ (org-timeblock-redisplay)))
+ (add-hook 'org-timeblock-mode-hook #'+org-timeblock-anchor-to-sunday)
+
+ (map! :map org-timeblock-mode-map
+ :nm "r" #'org-timeblock-redraw-buffers))
+
+(map! :leader
+ :desc "Org timeblock" "o t" #'org-timeblock)
+
;; Open treemacs when you open a project
(after! treemacs
(treemacs-follow-mode 1)
blob - 5c138ac41617de7290fb1f218e2cd00d4f56bba2
blob + 96433580a3370f72c1ef163a03b43c0b1d6d24d2
--- doom/packages.el
+++ doom/packages.el
(package! fountain-mode)
(package! olivetti)
(package! org-caldav)
+(package! org-timeblock)
(package! khalel)
(package! catppuccin-theme)