web-dev-qa-db-ja.com

Org-Modeでの高度な時間追跡

Org-Modeで利用可能な高度な時間追跡メカニズムはありますか?私は自分のタスクを「クロックイン」および「クロックアウト」しますが、次のような高度なレポート(クロックテーブル以外)が利用できるかどうか疑問に思っています。

  • 1か月のショー、1日あたりの作業量
  • 労働時間をプロットします
  • すべてのタスク(完了/タスク)が作業中にリストされるように作業ログを集約します(たとえば、1日に10〜12のタスクAから、フォーム13〜15のタスクCなど)
7
Chris

ストックアジェンダコマンドを使用すると、必要なことのほとんどを実行できます。

v Rまたは短いR(org-agenda-clockreport-mode)

Clockreportモードを切り替えます。 Clockreportモードでは、日次/週次のアジェンダには、現在のアジェンダビューでカバーされている期間とファイルスコープのクロック時間の表が常に表示されます。新しいアジェンダバッファでのこのモードの初期設定は、変数org-agenda-start-with-clockreport-modeで設定できます。このモード(つまり、C-u R)を切り替えるときにプレフィックス引数を使用すると、クロックテーブルには、アジェンダフィルタリングによって非表示になっているエントリからの寄与が表示されません1。変数org-clock-report-include-clocking-taskも参照してください。

vlまたはshortl(org-agenda-log-mode)

ログブックモードを切り替えます。ログブックモードでは、ログオン中にDONEとマークされたエントリ(変数org-log-done)が、その日にクロックされたエントリと同様にアジェンダに表示されます。変数org-agenda-log-mode-itemsを使用して、ログモードに含める必要のあるエントリタイプを設定できます。 C-uプレフィックスを付けて呼び出された場合、状態の変化を含む、考えられるすべてのログブックエントリを表示します。 2つのプレフィックス引数C-uC-uを指定して呼び出された場合、ログ情報のみを表示し、それ以外は表示しません。 vLはC-uvlと同等です。

これら2つのコマンドを組み合わせると、かなり良い結果が得られました。

変数org-agenda-filesに、作業またはイベントを保存するすべてのファイルまたはディレクトリが含まれていることを確認する必要があります。

ここで行う必要があるのは、C-c a Cを使用してカスタムアジェンダビューを追加して30日間のビューを提供し、ある種のASCIIプロッターを使用してからの作業時間をプロットすることです。時計のテーブル。

4
bright-star

議題ビュー を知っていますか?

議題はすべて(またはほとんど)の要件を満たしているようです。

1

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>で指定されていない場合、デフォルトでファイルになります。名前。

次に、明るい星が指摘しているように、vキーを使用してorg-agenda-view-mode-dispatchを実行し、オプションの1つを選択します。

v c for [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 Rclock[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 |

0
Bae