重复任务中的++,+,.+的区别

 DEADLINE: <2019-04-05 08:00 Fri +1h>
 DEADLINE: <2019-04-05 08:00 Fri ++1h>
 DEADLINE: <2019-04-05 08:00 Fri .+1h>

这几个区别是啥?文档没懂,上面 mark DONE后变化是怎么样的

当前日期为 2023-12-07

  1. +1d

单纯的在所设置时间的基础上再加一天。

;; before
* TODO test1
DEADLINE: <2023-12-01 Fri +1d>

;; after
* TODO test1
DEADLINE: <2023-12-02 Sat +1d>
  1. ++1d

如果预定日期比当前时间早,则以当前时间为基础,再加一天,如果预定日期比当前时间晚,则和 +1d 一样的行为

;; before
* TODO test2
DEADLINE: <2023-12-01 Fri ++1d>

;; after
* TODO test2
DEADLINE: <2023-12-08 Fri ++1d>

;; before
* TODO test2
DEADLINE: <2023-12-08 Fri ++1d>

;; after
* TODO test2
DEADLINE: <2023-12-09 Sat ++1d>
  1. .+1d

如果预定日期比当前时间早,则和 ++1d 一样的效果,如果预定日期比当前时间晚,则不变动。

;; before
* TODO test3
DEADLINE: <2023-12-01 Fri .+1d>

;; after
* TODO test3
DEADLINE: <2023-12-08 Fri .+1d>

;; before
* TODO test3
DEADLINE: <2023-12-08 Fri .+1d>

;; after
* TODO test3
DEADLINE: <2023-12-08 Fri .+1d>
1 个赞

从使用场景来说,++ 适合换电池这种只在意间隔时间而不在意完成时间的任务,.+ 则适用于对完成时间有明确要求的任务。

1 个赞

可不可以理解为+1d是repeat from assigned date, ++1d,或者.+1d都是repeat from completion.

而++,和.+区别是算不算上今天