Emacs org-режим планирование элемента несколько раз в день? - PullRequest
9 голосов
/ 09 января 2012

Я хочу запланировать выполнение задачи в режиме emacs org несколько раз в течение дня.

Редактировать: в качестве примера предположим, что я хочу, чтобы вы звонили жене каждые 2 часа в течение дня.

Ответы [ 2 ]

7 голосов
/ 26 февраля 2013

В соответствии с руководством по режиму Org на Повторные задачи имеется почасовой ретранслятор:

В следующем примере

** TODO Pay the rent
   DEADLINE: <2005-10-01 Sat +1m>

+1m является повторителем; предполагаемая интерпретация заключается в том, что задача имеет срок <2005-10-01> и повторяется каждый (один) месяц начиная с того времени. Вы можете использовать ежегодно, ежемесячно, еженедельно, ежедневно и ежечасно повторение файлов cookie с использованием букв y / w / m / d / h.

Вы можете использовать что-то подобное:

* TODO Call Wife
  DEADLINE: <2013-02-17 Sun 16:00 +2h>

К сожалению, я заметил, что специальные модификаторы повторителей (++ и .+) не работают должным образом для почасовых повторителей. В руководстве написано:

** TODO Call Father
   DEADLINE: <2008-02-10 Sun ++1w>
   Marking this DONE will shift the date by at least one week,
   but also by as many weeks as it takes to get this date into
   the future.  However, it stays on a Sunday, even if you called
   and marked it done on Saturday.

Исходя из этого, можно ожидать, что пометка записи с помощью почасового повторителя (например, приведенного выше) DONE "сместит время не менее чем на n часа, но также и на столько часов, сколько потребуется, чтобы получить это дата в будущее ".

Однако вот что я получил после пометки обеих записей DONE:

** TODO Call Father
   DEADLINE: <2013-03-03 Sun ++1w>
   - State "DONE"       from "TODO"       [2013-02-25 Mon 23:06]
   :PROPERTIES:
   :LAST_REPEAT: [2013-02-25 Mon 23:06]
   :END:

** TODO Call Wife
   DEADLINE: <2013-02-17 Sun 18:00 ++2h>
   - State "DONE"       from "TODO"       [2013-02-25 Mon 23:06]
   :PROPERTIES:
   :LAST_REPEAT: [2013-02-25 Mon 23:06]
   :END:

Как вы можете видеть, время во второй записи сместилось на 18:00, но дата осталась прежней.


Относительно подхода к созданию явных повторяющихся элементов может быть полезной другая функция. В руководстве написано:

Альтернативой использованию повторителя является создание нескольких копий поддерево задачи со смещенными датами в каждой копии. Команда C-c C-x c был создан для этой цели, это описано в Редактирование структуры .

Но, к сожалению, он не работает с часами.


Информация в этом посте основана на версии Org Mode 7.9.3.e.

4 голосов
/ 26 января 2012

При отсутствии ретрансляторов часового / минутного уровня, если интервал не слишком мал, вы можете добавить несколько временных меток для часов, используя другие возможности для повторяющихся элементов:

** Testentry
<2012-01-19 Do 10:00 +1w>
<2012-01-19 Do 12:00 +1w>

Полученное представление повестки дня

Thursday   19 January 2012
  Calendar:   10:00...... Testentry
  Calendar:   12:00...... Testentry

[...]

Thursday   26 January 2012
               8:00...... ----------------
  Calendar:    9:45-10:00 XXXXXXXXXXXXXX                        :OFFICE:
               10:00...... 
  Calendar:   10:00...... Testentry
              10:00...... ----------------
  Calendar:   12:00...... Testentry
[...]
...