我正在使用org-mode来安排任务。
是否有一种直接的方式来安排在每个月的第一个星期六发生的任务?
答案 0 :(得分:12)
org-float
现已过时(请参阅this commit)。从现在开始,您必须使用diary-float
代替org-float
。
(对不起噪音:这不值得一个完整的答案,但是现在我没有足够的“声誉”来评论。)
答案 1 :(得分:7)
组织模式有很好的文档,使用它。
(info "(org) Deadlines and scheduling")
您可以在计划和截止日期中使用带有转发器的时间戳 条目。组织模式将根据此发布早期和晚期警告 假设时间戳表示最近的实例 中继器。然而,使用日记性别条目,如`< %%(diary-float t 42)>”在安排和截止日期时间戳是有限的。组织模式 不太了解每个sexp函数的内部问题 早期和晚期警告。但是,它会在每天显示该项目 sexp条目匹配的位置。
* My Task
<%%(diary-float t 6 1)>
答案 2 :(得分:5)
在日程安排和截止日期时间戳中使用sexp是有限的,如信息所述
Org模式对每个sexp函数的内部问题都知之甚少 早期和晚期警告。
我编写了一个elisp代码来自动更改时间戳,使用它,您需要做的就是设置属性。
elisp代码为here
将(load "/path/to/next-spec-day")
添加到您的dot emacs文件中。
设置TODO任务的NEXT-SPEC-DEADLINE
和/或NEXT-SPEC-SCHEDULED
属性,如下所示:
* test
:PROPERTIES:
:NEXT-SPEC-SCHEDULED: (org-float t 6 1)
:END:
NEXT-SPEC-SCHEDULED的值是如果non-nil
是该月的第一个星期六,则性别将返回date
然后,当您更改该任务的TODO状态时,时间戳将自动更改(包括警告设置的提前期)。它变为:
* TODO test
SCHEDULED: <2013-01-05 Sat>
:PROPERTIES:
:NEXT-SPEC-SCHEDULED: (org-float t 6 1)
:END: