我想使用Cc Cq在组织捕获模板缓冲区中设置标记,并且:event:
标记(如果使用它)总是首先出现(即,在任何其他标签的左侧)。我为插入:event:
的初始标记的事件设置了组织捕获模板。但是,org-set-tags
默认为prepend
个新标记到列表的开头,而不是append
它们到标记列表的末尾。
我在org-set-tags
的源代码中看到了一个使用自定义org-tags-sort-function
的选项,但我无法找到要复制/修改的任何示例。有没有人有org-tags-sort-function
与org-set-tags
一起使用的示例,以便标记:event:
之类的内容可以先自动排序(即在所有其他标记的左侧)?
答案 0 :(得分:1)
sort函数只是一次比较两个元素的函数。 org.el
defcustom
中的org-tags-sort-function
预先定义了两个函数:
(const :tag "Alphabetical" string<)
(const :tag "Reverse alphabetical" string>)
要构建自定义排序功能,您可以执行以下操作:
(defun event-first (x y)
(if (string= "event" x)
t
(if (string= "event" y)
nil
(string< x y))))
我随意选择按字母顺序对非“事件”标签进行排序,但您可以更改它。