Function: todo-edit-item--diary-inclusion
todo-edit-item--diary-inclusion is a byte-compiled function defined in
todo-mode.el.gz.
Signature
(todo-edit-item--diary-inclusion &optional NONMARKING)
Documentation
Function providing diary marking facilities of todo-edit-item.
Source Code
;; Defined in /usr/src/emacs/lisp/calendar/todo-mode.el.gz
(defun todo-edit-item--diary-inclusion (&optional nonmarking)
"Function providing diary marking facilities of `todo-edit-item'."
(let ((inhibit-read-only t)
(marked (assoc (todo-current-category) todo-categories-with-marks)))
(when marked (todo--user-error-if-marked-done-item))
(catch 'stop
(save-excursion
(when marked (goto-char (point-min)))
(while (not (eobp))
(unless (and marked (not (todo-marked-item-p)))
(let* ((_beg (todo-item-start))
(lim (save-excursion (todo-item-end)))
(end (save-excursion
(or (todo-time-string-matcher lim)
(todo-date-string-matcher lim)))))
(if nonmarking
(if (looking-at (regexp-quote diary-nonmarking-symbol))
(replace-match "")
(when (looking-at (regexp-quote todo-nondiary-start))
(save-excursion
(replace-match "")
(search-forward todo-nondiary-end (1+ end) t)
(replace-match "")
(todo-update-count 'diary 1)))
(insert diary-nonmarking-symbol))
(if (looking-at (regexp-quote todo-nondiary-start))
(progn
(replace-match "")
(search-forward todo-nondiary-end (1+ end) t)
(replace-match "")
(todo-update-count 'diary 1))
(when end
(when (looking-at (regexp-quote diary-nonmarking-symbol))
(replace-match "")
(setq end (1- end))) ; Since we deleted nonmarking symbol.
(insert todo-nondiary-start)
(goto-char (1+ end))
(insert todo-nondiary-end)
(todo-update-count 'diary -1))))))
(unless marked (throw 'stop nil))
(todo-forward-item)))))
(todo-update-categories-sexp))