Org-Mode 中的高级时间跟踪

Org-Mode 中的高级时间跟踪

Org-Mode 中是否有任何可用的高级时间跟踪机制?我“上班打卡”和“下班打卡”我的任务,但我想知道是否有可用的高级报告(除了时钟表):

  • 显示一个月内我每天工作了多少
  • 绘制工作时间
  • 汇总工作日志,按我处理的所有任务(已完成 / 待办)列出(例如,1 号我 10-12 点做了任务 A,13-15 点做了任务 C,等等)

答案1

您可以使用股票议程命令完成大部分需要做的事情:

v R 或短 R (org-agenda-clockreport-mode)

切换 Clockreport 模式。在 Clockreport 模式下,每日/每周议程将始终显示一个表格,其中包含当前议程视图所涵盖的时间跨度和文件范围的计时时间。可以使用变量 org-agenda-start-with-clockreport-mode 在新议程缓冲区中设置此模式的初始设置。通过在切换此模式时使用前缀参数(即 Cu R),时钟表将不会显示议程过滤 1 隐藏的条目的贡献。另请参阅变量 org-clock-report-include-clocking-task。

vl 或短 l (org-agenda-log-mode)

切换日志模式。在日志模式下,在日志开启时标记为 DONE 的条目(变量 org-log-done)会显示在议程中,当天已记录的条目也是如此。您可以使用变量 org-agenda-log-mode-items 配置应包含在日志模式中的条目类型。使用 Cu 前缀调用时,显示所有可能的日志条目,包括状态更改。使用两个前缀参数 Cu Cu 调用时,仅显示日志信息,不显示其他信息。v L 等同于 Cu v l。

这两个命令的组合让我得到了相当好的结果。

您需要确保变量org-agenda-files包含存储工作或事件的所有文件或目录。

这里剩下要做的就是添加自定义议程视图,为C-c a C您提供 30 天的视图,并使用某种 ASCII 绘图仪根据时钟表绘制您的工作时间。

答案2

您是否知道议程观点

看起来议程满足了您的所有(或大部分)要求。

答案3

M-x describe-variable org-agenda-files并检查包含时钟条目的文件是否包含在此列表中。如果您使用多个文件,并且它们位于同一目录中,则此值可以指向该目录。

M-x org-agenda然后选择a Agenda for current week or day笔记:我对此还不太熟悉,不知道如何在正确的日期范围内打开议程)。请参阅手册10.2 议程调度器了解更多信息。

现在使用b(org-agenda-earlier) 和f(org-agenda-later) 来浏览每周视图。

你会得到类似

Week-agenda (W20):
Monday     13 May 2019 W20
  Timesheet:   - 
  Timesheet:  Daily Overview
  Timesheet:   - 
  Timesheet:  Daily Overview
Tuesday    14 May 2019
Wednesday  15 May 2019
Thursday   16 May 2019
Friday     17 May 2019
Saturday   18 May 2019
Sunday     19 May 2019

对我来说,星期一有一些摘要内容,但其他日子没有。该值Timesheet将是时钟条目的类别(请参阅10.4.1 类别),如果#+CATEGORY: <your category here>议程文件中未指定,则默认为文件名。

然后正如 bright-star 指出的那样使用v按键运行org-agenda-view-mode-dispatch 并选择其中一个选项。

v c[c]lockcheck我展示了我所有计时数据的每日报告,包括计时间隙。

例如:

Week-agenda (W20):
Monday     13 May 2019 W20
  Timesheet:   8:30-12:00 Clocked:   (3:30) Task 1
 Clocking gap: 90 minutes
  Timesheet:  13:30-17:30 Clocked:   (4:00) Task 1
Tuesday    14 May 2019
  Timesheet:   8:45-11:30 Clocked:   (2:45) Task 1
  Timesheet:  11:30-13:30 Clocked:   (2:00) Task 2
 Clocking gap: 60 minutes
  Timesheet:  14:30-17:15 Clocked:   (2:45) Task 1
Wednesday  15 May 2019
  Timesheet:   8:45-13:00 Clocked:   (4:15) Task 1
 Clocking gap: 45 minutes
  Timesheet:  13:45-17:00 Clocked:   (3:15) Task 1
Thursday   16 May 2019
  Timesheet:   8:45-12:00 Clocked:   (3:15) Task 2
 Clocking gap: 105 minutes
  Timesheet:  13:45-17:15 Clocked:   (3:30) Task 2
Friday     17 May 2019
  Timesheet:   8:30-12:00 Clocked:   (3:30) Task 1
 Clocking gap: 30 minutes
  Timesheet:  12:30-16:00 Clocked:   (3:30) Task 1
Saturday   18 May 2019
Sunday     19 May 2019

如果您想要摘要,请使用v Rfor clock[R]eport

例如:

| File              | Headline                               | Time       |         |
|-------------------+----------------------------------------+------------+---------|
|                   | ALL *Total time*                       | *1d 12:15* |         |
|-------------------+----------------------------------------+------------+---------|
|    timeclocks.org | *File time*                            | *1d 12:15* |         |
|                   | Parent 1                               | 8:45       |         |
|                   | \_  Task 2                             |            |    8:45 |
|                   | Parent 3                               | 1d 3:30    |         |
|                   | \_  Task 1                             |            | 1d 3:30 |

相关内容