agend file 里一个任务和其分解如下
* 主任务
** 分解后子任务 1
** 分解后子任务 2
** 分解后子任务 3
** 分解后子任务 4
** 分解后子任务 5
** 分解后子任务 6
假设我分解任务的时候将各个子任务都刻意控制在 30 分钟左右,那么如果要使用 effort, 我需要为每个子任务都加上相同的 effort PROPERTIES
* 主任务
** 分解后子任务 1
:PROPERTIES:
:Effort: 0:30
:END:
** 分解后子任务 2
:PROPERTIES:
:Effort: 0:30
:END:
** 分解后子任务 3
:PROPERTIES:
:Effort: 0:30
:END:
** 分解后子任务 4
:PROPERTIES:
:Effort: 0:30
:END:
** 分解后子任务 5
:PROPERTIES:
:Effort: 0:30
:END:
** 分解后子任务 6
:PROPERTIES:
:Effort: 0:30
:END:
这样我在 clock in 每个子任务的时候 modeline 才会显示类似 [0:00/0:30] 的时间信息,到了 30 分钟该信息会变红,提醒我任务要超时了
我的需求是,既然已经把各个任务都分解到了同样的时间间隔,我就只需要在主任务层级或者文件层级设置一个全局的 effort 选项, 使得子任务都继承这个 effort, 这样我就不需要重复地设置相同的 effort properties 了,以此减少很多冗余行
一种期望的(无效)设置方法如下:
* 主任务
:PROPERTIES:
:Effort: 0:30
# 我希望这个选项对所有 subtree 甚至 subsubtree 都递归地设置同样的 effort
# 但这种写法只对主任务有用
:END:
** 分解后子任务 1
** 分解后子任务 2
** 分解后子任务 3
** 分解后子任务 4
** 分解后子任务 5
** 分解后子任务 6
我的最终目的实际是希望对每个任务 clock in 的时候都显示一个默认的 effort 来提醒
例如,以下例子,希望所有的分解任务在 clock in 的时候都自动显示 [0:00/0:30] 这样的计时样式,只有 分解后子任务 2
在 clock in 后显示 [0:00/0:15], 因为它单独设置了特定的 effort
* 主任务
** 分解后子任务 1
** 分解后子任务 2
:PROPERTIES:
:Effort: 0:15
:END:
** 分解后子任务 3
** 分解后子任务 4
** 分解后子任务 5
** 分解后子任务 6
因此可能不需要考虑设置全局属性的问题,也许在 clock in 函数加一个 hook 就可以?
不知是否已经有现成的实现方案,在此讨教