emacs - 计算组织模式表中的时间范围

标签 emacs org-mode org-table

给定一个包含时间范围列的表格,例如:

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

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

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

第二列填充

 Time difference inserted

每一行。

最好从两个不同的列(例如,开始日期结束日期)生成相同的结果,而不是创建一列时间范围那两个。

最佳答案

如果您将日期范围分为两列,则可以进行简单的减法并返回天数:

| <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 接受的唯一可选参数是一个标志,用于指示将结果插入到当前缓冲区中,这是您不希望看到的。

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

关于emacs - 计算组织模式表中的时间范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33291580/

相关文章:

emacs - Elisp:使用包含空格的路径调用 start-process

emacs - 使用emacs,如何交换2个窗口的位置

emacs - emacs 是否高亮显示超过 80 个字符?

emacs - 如何在 Emacs 启动时显示 Org-mode 议程?

emacs - 有条件地计算组织模式电子表格中列中的元素

emacs - 如何从组织模式表的列中导出以逗号分隔的值列表

image-processing - 如何在组织模式下为不同的导出使用不同的图像格式?

emacs - 如何在组织模式下转义斜杠?

emacs - 组织电子表格的表格公式