fix: removed position stuff from agenda movement - caused VoiceOver issues

This commit is contained in:
Martin Sukany
2026-03-04 14:22:16 +01:00
parent f78da08e6b
commit 61f629350c
2 changed files with 2127 additions and 23 deletions

View File

@@ -423,29 +423,6 @@ Skip for beamer exports — beamer uses adjustbox on plain tabular."
;;; ORG MODE — CUSTOM BEHAVIOR
;;; ============================================================
;; Agenda: position cursor at task name (after TODO keyword and priority)
(defun my/org-agenda-all-keywords ()
"Return list of all org todo keyword strings (without shortcut suffixes)."
(let (result)
(dolist (seq org-todo-keywords result)
(dolist (kw (cdr seq))
(unless (equal kw "|")
(push (replace-regexp-in-string "(.*" "" kw) result))))))
(defun my/org-agenda-goto-task-name (&rest _)
"Move cursor to the task name on the current org-agenda line."
(when (get-text-property (line-beginning-position) 'org-hd-marker)
(beginning-of-line)
(let* ((eol (line-end-position))
(kw-re (regexp-opt (my/org-agenda-all-keywords) 'words)))
(when (re-search-forward kw-re eol t)
(skip-chars-forward " \t")
(when (looking-at "\\[#.\\][ \t]+")
(goto-char (match-end 0)))))))
(advice-add 'org-agenda-next-line :after #'my/org-agenda-goto-task-name)
(advice-add 'org-agenda-previous-line :after #'my/org-agenda-goto-task-name)
;; Also trigger on post-command-hook in agenda buffers (catches Evil j/k,
;; super-agenda navigation, and any other motion commands)
(add-hook 'org-agenda-mode-hook