Orgで繰り返しタスクをより詳細に制御するにはどうすればよいですか?


12

私はorg-mode最近探検を始め、それが大好きです。しかし、タスクを毎日繰り返すように設定した場合、週末を除外するにはどうすればよいですかなど、繰り返しタスクをより詳細に制御できる方法を知りたいのですが?

また、休日モードなどのオプションがあり、電源を入れると離れる時間を要求し、すべての繰り返しタスク(離陸時にスケジュールされているタスクがある場合)が自動的に再スケジュールされます休日の終了後の次の予定日。

回答:


2

私の解決策:

  1. 「winter」、「weekends」、「schoolnights」などのタグ項目

  2. これらの各タグにに関連付けられたスピードキーがあることを確認してくださいorg-tag-alist

  3. それがある場合を示しています各タグの述語を書くません現在:not-winter-p(北半球では4月と11月の間に非nilを返す)、 、weekdaypnot-schoolnight-pなど

  4. それをすべて独自のアジェンダコマンドにまとめます。

(あぁ!次のコードが適切にフォーマットされているように表示するために、ここに番号の付いていないリストのテキストを配置する必要があることがわかりました)

(defun ph/agenda ()
  "Display my agenda."
  (interactive)
  (org-agenda-list)
  (cl-loop
    for (predicate . speed-key)
    in
    '((weekendp . ?\[)
      (winterp . ?\])
      (not-schoolday-p . ?\{)
      (not-schoolnight-p . ?\}))
    when (funcall predicate)
    do (org-agenda-filter-by-tag nil speed-key 'exclude)))

0

日記の日付を使用できます。毎月第1、第3、第5金曜日に発生するイベントがあります。

* Music Jam
   <%%(diary-float t 5 1)>
   <%%(diary-float t 5 3)> 
   <%%(diary-float t 5 5)>

他の日記機能もあります。diary-float、diary-remind、diary-cyclicなど。詳細については、こちらをご覧ください。

      M-x info RET org RET m Agenda  

日記を検索すると、あなたはそれを見つけるでしょう。(Cs日記)


私は考えることがボックスの可能な外ではありません。すべてのアジェンダファイルを反復処理し、すべての見出しを反復処理する必要があります。スケジュール情報がある場合は、アイテムを再スケジュールします。また、すべてを同じ日に再スケジュールすると、混雑する日になる可能性があるため、それに対処することもできます。
-GergelyPolonkai
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.