]> git.eshelyaron.com Git - emacs.git/commitdiff
Make `todo-toggle-item-highlighting' work on multiline items (bug#27133)
authorStephen Berman <stephen.berman@gmx.net>
Mon, 29 May 2017 18:26:49 +0000 (20:26 +0200)
committerStephen Berman <stephen.berman@gmx.net>
Mon, 29 May 2017 18:26:49 +0000 (20:26 +0200)
* lisp/calendar/todo-mode.el (todo-hl-line-range): New named function,
replacing an anonymous function for the sake of `describe-variable'.
(todo-modes-set-2): Use it as buffer-local value of hl-line-range-function
and remove boundp test of this variable, so its value is available on
invoking `todo-toggle-item-highlighting'.

lisp/calendar/todo-mode.el

index 8155a4241a7e20edfc7540ed21253060c90bc9e5..7b27e7049d1c5c8230f0736cc289b5ed655ad972 100644 (file)
@@ -6583,17 +6583,19 @@ Added to `window-configuration-change-hook' in Todo mode."
     (visual-line-mode)
     (setq wrap-prefix (make-string todo-indent-to-here 32))))
 
+(defun todo-hl-line-range ()
+  "Make `todo-toggle-item-highlighting' highlight entire item."
+  (save-excursion
+    (when (todo-item-end)
+      (cons (todo-item-start)
+            (todo-item-end)))))
+
 (defun todo-modes-set-2 ()
   "Make some settings that apply to multiple Todo modes."
   (add-to-invisibility-spec 'todo)
   (setq buffer-read-only t)
   (setq-local desktop-save-buffer 'todo-desktop-save-buffer)
-  (when (boundp 'hl-line-range-function)
-    (setq-local hl-line-range-function
-               (lambda() (save-excursion
-                           (when (todo-item-end)
-                             (cons (todo-item-start)
-                                   (todo-item-end))))))))
+  (setq-local hl-line-range-function 'todo-hl-line-range))
 
 (defun todo-modes-set-3 ()
   "Make some settings that apply to multiple Todo modes."