Ошибки `org-agenda-get-day-entries` при «выборе удаленного буфера»

#emacs #org-mode

#emacs #org-режим

Вопрос:

Я пытаюсь собрать записи, которые были запланированы на прошлой неделе, аналогично тому, что делает org-agenda. После org-agenda-list я определил следующее:

 (defun weekly-status/get-week-days ()
"Return a list of days for the past week suitable for passing to `org-agenda-get-day-entries."
  (let* ((today (org-today))
         (day-list (list today)))
    (dotimes (n (1- 7) day-list)
      (push (1- (car day-list)) day-list))))

  

Однако выполнение следующего приводит к «выбору удаленного буфера»:

 ELISP> (let ((this-week-days (weekly-status/get-week-days)))
      (setq this-week-plan-items nil)
      (dolist (day this-week-days this-week-plan-items)
        (let ((date (calendar-gregorian-from-absolute day)))
          (message (format "%s" date))
          (dolist (file (org-agenda-files))
        (message (format "%s" file))
        (message (format "%s" (org-agenda-get-day-entries file date :scheduled)))))))
*** Eval error ***  Selecting deleted buffer
  

Вывод сообщения показывает:

 (4 17 2019)
/Users/dag/lib/dotfiles/dotemacs/org/work.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/career.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/gcal.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/home.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/links.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/notes.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/journal.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/ideas.org
nil
(4 18 2019)
/Users/dag/lib/dotfiles/dotemacs/org/work.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/career.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/gcal.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/home.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/links.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/notes.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/journal.org
nil
/Users/dag/lib/dotfiles/dotemacs/org/ideas.org
nil
(4 19 2019)
/Users/dag/lib/dotfiles/dotemacs/org/work.org
  

Так или иначе, на третий день все просто перестает работать. 4/19 — это первый день, когда что-либо запланировано, так что это подозрительно.

Каков правильный способ использования org-agenda-get-day-entries ? Есть идеи, что здесь происходит?

Комментарии:

1. Вы знаете, как использовать отладчик ? Я бы рекомендовал edebug .

2. Кстати, я запустил ваш код локально без проблем, поэтому я подозреваю, что что-то в вашей настройке и / или вашей истории мешает. Я бы попробовал это в новом emacs.

3. Да, это делает что-то с моей настройкой. Если я перезапущу emacs, это сработает.