組織モードクロックテーブルのメインファイルで参照されるすべての組織ファイルを使用する簡単な方法はありますか


9

さまざまなプロジェクトに費やした時間を追跡するために、org-modeを使用しています。私は1つのメインの組織ファイルと、現在取り組んでいる2つの大きなプロジェクト用に2つあります。3つすべてがにリストされていorg-agenda-filesます。メインのorgファイルに時計テーブルを作成して設定しました

:scope agenda-with-archives

費やされた時間を要約するために、クロックテーブルのヘッダーで。これはすべて正常に動作します。

ただし、独自の組織ファイル(これらのプロジェクトに関するすべてを含むサブディレクトリにあります)でも時間を追跡しているいくつかの小さなプロジェクトもあり、それらの時間も追跡したいと思います。

もちろん、これらのファイルをorg-agenda-filesに追加することもできますが、それは.emacs、新しい小さなプロジェクトを開始するたびに更新することを意味します。もちろん、世界の終わりではありませんが、メインのorgファイルにsmall-project-org-filesへのリンクがすでにあるので(以下の例を参照)、次のように設定:scopeします。

:scope agenda-with-archives linked-org-files

理想的には(まだ使用していませんが)小規模なプロジェクトのアーカイブファイルを含めると(など:scope linked-org-files-with-archives)、

これが私のメインのorgファイルの構造の例です:

* Small project 1
  See file:~/Projects/Project 1/notes_project_1.org for more details.
* Small project 2
  See file:~/Projects/Project 2/notes_project_2.org.
** DONE Some small task I can do quickly
   CLOCK: [2014-12-05 vr 12:19]--[2014-12-05 vr 12:40] =>  0:21
   Some info on the small task.

これを達成する方法について何か考えはありますか?

回答:


6

使用できます

:scope some-function

ここで、関数some-functionは必要なファイルのリストを返します。例えば:

(defun some-function () org-agenda-files)

または

(defun some-function ()
  (append org-agenda-files
          (file-expand-wildcards "your-path/*.org")))

(defun some-function () org-agenda-files)with :scope (some-function)は私にとっては機能せず、ドキュメントにも記載されていません。まだサポートされていますか?
avv 2017

どのバージョンのorg-modeを使用していますか?エラーは発生しますか?
artscan 2017

1
Lisp error: (wrong-type-argument stringp some-function)。Orgモードバージョン9.0.7
avv

スコープ行を修正するために編集-lispエラーを修正する必要があります。
NickD

3

私もこれで問題を抱えています。

@artscanの答えは正しい方向を示しましたが、argument typeエラーを返します。括弧を削除すると、問題が解決します。

artscanの答えについてコメントしますが、評判がよくありません。

要約すると、これが私が使用するものです:

表で、を提供します:scope efls/org-files-productive。括弧はありません。ファイルの文字列を返す単純な関数を定義します。

たとえば、次のようなものを使用します。

(defun efls/org-files-productive ()
 "Return productive org files."
 '("/Users/efls/org/file1.org" "/Users/efls/org/file2.org" "/Users/efls/org/file3.org"))

もちろん、後にファイルのリストを単に入力することもできますが、:scopeその場合リストを囲む括弧必要ですscope: ("Users/efls/org/file1.org" "…")

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.