浏览代码

Checkboxes: Make C-u C-c C-c C-c set the box to "[-]"

Requested by Chris Randle.
Carsten Dominik 16 年之前
父节点
当前提交
ae5b0f5c44
共有 2 个文件被更改,包括 7 次插入2 次删除
  1. 3 0
      lisp/ChangeLog
  2. 4 2
      lisp/org-list.el

+ 3 - 0
lisp/ChangeLog

@@ -1,5 +1,8 @@
 2009-02-15  Carsten Dominik  <carsten.dominik@gmail.com>
 
+	* org-list.el (org-toggle-checkbox): Make double prefix set the
+	checkbox to "[-]".
+
 	* org.el (org-add-log-setup): Fix positioning when
 	`org-log-states-order-reversed' is nil.
 

+ 4 - 2
lisp/org-list.el

@@ -251,6 +251,7 @@ Return t when things worked, nil when we are not in an item."
 (defun org-toggle-checkbox (&optional toggle-presence)
   "Toggle the checkbox in the current line.
 With prefix arg TOGGLE-PRESENCE, add or remove checkboxes.
+With double prefix, set checkbox to [-].
 When there is an active region, toggle status or presence of the checkbox
 in the first line, and make every item in the region have the same
 status or presence, respectively.
@@ -266,13 +267,14 @@ text below the heading."
 	(setq beg (point) end (save-excursion (outline-next-heading) (point))))
        ((org-at-item-checkbox-p)
 	(let ((pos (point)))
-	  (if toggle-presence
+	  (if (equal toggle-presence '(4))
 	      (progn
 		(replace-match "")
 		(goto-char (match-beginning 0))
 		(just-one-space))
 	    (replace-match
-	     (cond ((member (match-string 0) '("[ ]" "[-]")) "[X]")
+	     (cond ((equal toggle-presence '(16)) "[-]")
+		   ((member (match-string 0) '("[ ]" "[-]")) "[X]")
 		   (t "[ ]"))
 	     t t))
 	  (goto-char pos))