Explorar el Código

org-sort: Call org-sort-* functions non-interactively

* lisp/org.el (org-sort): Use funcall instead of org-call-with-arg,
and make WITH-CASE an optional argument.
* lisp/org-table.el (org-table-sort-lines): Make WITH-CASE an optional
argument.
Kyle Meyer hace 8 años
padre
commit
c1addc8252
Se han modificado 2 ficheros con 6 adiciones y 7 borrados
  1. 1 1
      lisp/org-table.el
  2. 5 6
      lisp/org.el

+ 1 - 1
lisp/org-table.el

@@ -1639,7 +1639,7 @@ In particular, this does handle wide and invisible characters."
 			      dline -1 dline))))
 
 ;;;###autoload
-(defun org-table-sort-lines (with-case &optional sorting-type getkey-func compare-func)
+(defun org-table-sort-lines (&optional with-case sorting-type getkey-func compare-func)
   "Sort table lines according to the column at point.
 
 The position of point indicates the column to be used for

+ 5 - 6
lisp/org.el

@@ -8845,15 +8845,14 @@ with the original repeater."
 
 ;;; Outline Sorting
 
-(defun org-sort (with-case)
+(defun org-sort (&optional with-case)
   "Call `org-sort-entries', `org-table-sort-lines' or `org-sort-list'.
 Optional argument WITH-CASE means sort case-sensitively."
   (interactive "P")
-  (cond
-   ((org-at-table-p) (org-call-with-arg 'org-table-sort-lines with-case))
-   ((org-at-item-p) (org-call-with-arg 'org-sort-list with-case))
-   (t
-    (org-call-with-arg 'org-sort-entries with-case))))
+  (funcall (cond ((org-at-table-p) #'org-table-sort-lines)
+		 ((org-at-item-p) #'org-sort-list)
+		 (t #'org-sort-entries))
+	   with-case))
 
 (defun org-sort-remove-invisible (s)
   "Remove invisible part of links and emphasis markers from string S."