Захват режима орг

638
Syd Kerckhove

Я пытаюсь сделать шаблон класса для org-capture.

Что я хочу, так это легко сделать такую ​​запись:

* TODO <course>: Week <week> Lecture <number> SCHEDULED: %^T ** TODO prepare for class: <course>-<week>-<number> SCHEDULED: <two days before T> DEADLINE: <one day before T> ** TODO review class: <course>-<week>-<number> SCHEDULED: <one day after T> DEADLINE: <two days after T> 

В настоящее время у меня есть этот шаблон.

(setq org-capture-templates '( ("c" "Class" entry (file "~/sydbox/personal/workflow/class.txt") "* TODO %^: Week %^ Lecture %^\n SCHEDULED: %^T\n ** TODO prepare for %-%-%") )) 

Однако теперь я понятия не имею, как вводить даты. Дата и время курса должны быть запрошены. Я также не знаю, как повторно использовать ответ на приглашение.

2

2 ответа на вопрос

2
amitp

Template expansion allows %\1, %\2, etc. to reuse answers to a prompt, so you might try this:

("c" "Class" entry (file "~/sydbox/personal/workflow/class.txt") "* TODO %^: Week %^ Lecture %^\n SCHEDULED: %^T\n ** TODO prepare for %\\1-%\\2-%\\3") 

For entering dates, it should give you a calendar. From there you can use shift-arrow keys to select a date, or these commands.

Спасибо, но я хочу использовать любые ключи вообще. Все даты должны быть в порядке автоматически. Syd Kerckhove 10 лет назад 0
О, я вижу, я неправильно понял, извините за это. Я посмотрел на функцию `org-capture-fill-template` .. Я хотел посмотреть, будет ли работать`% (...) `, но похоже, что он оценивается перед запуском подсказок, поэтому он не может выполнить расчеты на основе даты, которую вы вводите. :( amitp 10 лет назад 0
0
Win

You could try writing a function to do the date arithmetic you want and replace placeholders in the capture template, then use org-capture-before-finalize-hook to run the function before the capture process finishes.

Похожие вопросы