在组织模式表中计算时间范围



给定一个表,其中有一列时间范围,例如:

|  <2015-10-02>--<2015-10-24> |
|  <2015-10-05>--<2015-10-20> |
....

如何创建显示org- evaluate -time-range结果的列?

如果我尝试这样做:#+TBLFM: $2='(org-evaluate-time-range $1)

填充第二列
 Time difference inserted

从两个不同的列(例如,start dateend date)生成相同的结果也会很好,而不是从这两个列中创建一个时间范围列。

如果您将日期范围分成两列,则使用简单的减法工作并返回天数:

| <2015-10-05>       | <2015-10-20> |        15 |
| <2013-10-02 08:30> | <2015-10-24> | 751.64583 |
#+TBLFM: $3=$2-$1

使用org-evaluate-time-range也是可能的,你会得到一个很好的格式化输出:

| <2015-10-02>--<2015-10-24>           | 22 days                    |
| <2015-10-05>--<2015-10-20>           | 15 days                    |
| <2015-10-22 Thu 21:08>--<2015-08-01> | 82 days 21 hours 8 minutes |
#+TBLFM: $2='(org-evaluate-time-range)

注意,org-evaluate-time-range接受的唯一可选参数是一个标志,表示将结果插入到当前缓冲区中,这是您不希望看到的。

现在,这个函数(不带参数)如何在计算时获得正确的时间范围对我来说是一个完全的谜;纯粹的魔法(!)

最新更新