如何为 org-mode 中的标题投票?
How to vote for a heading in org-mode?
我在 org-mode 议程文件中有数千个标题,并长期使用这种结构。我想设置 org-mode 使其具有投票系统。我按下一个热键,org-mode 将 +1 添加到标题,然后我可以按投票数过滤标题。
更新。我必须澄清这个问题。我可以看到如何做到这一点:
* heading
:PROPERTIES:
:VOTES: 5
:END:
1) 属性 抽屉是可搜索的 http://orgmode.org/worg/org-tutorials/advanced-searching.html,因此我可以使用比较运算符进行过滤,例如VOTES>4
.
2) 我可以使用属性 API http://orgmode.org/manual/Using-the-property-API.html 来增加和减少计数器。
这是解决方案。我在 org-mode 中将 + 添加到速度命令。您也可以将其绑定到某个键。
(defun plusone ()
"Increase the VOTES property in an org-heading by one. Create
the property if needed."
(interactive)
(org-entry-put
(point)
"VOTES"
(format "%s" (+ 1 (string-to-number
(or
(org-entry-get (point) "VOTES")
"0"))))))
(add-to-list 'org-speed-commands-user '("+" . (plusone)))
我在 org-mode 议程文件中有数千个标题,并长期使用这种结构。我想设置 org-mode 使其具有投票系统。我按下一个热键,org-mode 将 +1 添加到标题,然后我可以按投票数过滤标题。
更新。我必须澄清这个问题。我可以看到如何做到这一点:
* heading
:PROPERTIES:
:VOTES: 5
:END:
1) 属性 抽屉是可搜索的 http://orgmode.org/worg/org-tutorials/advanced-searching.html,因此我可以使用比较运算符进行过滤,例如VOTES>4
.
2) 我可以使用属性 API http://orgmode.org/manual/Using-the-property-API.html 来增加和减少计数器。
这是解决方案。我在 org-mode 中将 + 添加到速度命令。您也可以将其绑定到某个键。
(defun plusone ()
"Increase the VOTES property in an org-heading by one. Create
the property if needed."
(interactive)
(org-entry-put
(point)
"VOTES"
(format "%s" (+ 1 (string-to-number
(or
(org-entry-get (point) "VOTES")
"0"))))))
(add-to-list 'org-speed-commands-user '("+" . (plusone)))