如何在emacs org-mode中自动切换非活动时间戳

时间:2014-12-30 07:46:26

标签: logging emacs timestamp org-mode

我想用活动时间戳记录我的待办事项列表。 我在我的组织文件下面添加了。

#+TODO: TODO(t!) START(!) | DONE(d!) CANCELED(c!)
#+STARTUP: logdrawer 

我先添加了todo。

** TODO Write Org config file
   :LOGBOOK:
   - State "TODO"       from ""           [2014-12-30 화 15:30]
   :END:

这会插入非活动时间戳。所以这不是议程观点。(是的,我可以看到它 模式。但这不是我想要的方式)。 我发现org-log-note-headings变量。我将非活动时间戳更改为在状态行处于活动状态(%t - >%T)。

(setq org-log-note-headings '((done . "CLOSING NOTE %t")
(state . "State %-12s from %-12S %T")
(note . "Note taken on %t")
(reschedule . "Rescheduled from %S on %t")
(delschedule . "Not scheduled, was %S on %t")
(redeadline . "New deadline from %S on %t")
(deldeadline . "Removed deadline, was %S on %t")
(refile . "Refiled on %t")
(clock-out . "")))

这会在状态更改时插入活动时间戳。

** DONE write org config file
:LOGBOOK:
- State "DONE"       from "STARTED"    <2014-12-30 화 15:57>
- State "STARTED"    from "TODO"       <2014-12-30 화 15:56>
- State "TODO"       from ""           <2014-12-30 화 15:55>
:END:

但我希望活动时间戳只有当前状态。当我第一阶段 状态“todo”是活动时间戳,第二阶段状态“STARTED”是活动时间戳 状态“todo”是非活动时间戳,第三阶段状态“DONE”是活动状态 “已开始”无效。

** DONE write org config file :LOGBOOK: - State "DONE" from "STARTED" <2014-12-30 화 15:57> - State "STARTED" from "TODO" [2014-12-30 화 15:56] - State "TODO" from "" [2014-12-30 화 15:55] :END:

你认为这不是正确的方法吗?这简化了我的待办事项清单, 议程观点...... 我找到了org-toggle-timestamp-type函数。这之间切换 不活动的活动时间戳。但我必须手动执行此操作 每当todo状态改变。 如何自动化?

0 个答案:

没有答案