emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Orgmode] New implementation of the Org remember process ready for c


From: Sebastian Rose
Subject: Re: [Orgmode] New implementation of the Org remember process ready for comments and testing
Date: Wed, 23 Jun 2010 01:07:00 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Carsten Dominik <address@hidden> writes:
> None of what I describe is set in stone yet - let me know if you have
> comments, change requests or other ideas.
>
> My feeling right now is that this should become the default capture
> system, and that we will keep the current org-remember in the
> distribution for quite some time, for compatibility.


* "C" as template key

  C-h v org-catpure-templates

  states:

         Do not use "C" as a key, it is reserved for customizing the
         template variable.

  I guess this is for the testing phase only?



* Reuse input

  I would like to prompt for a value and use the input in several
  places. E.g. part of the last entry in my training diary looks like
  this:


=> --->8----------------------------->8----------------------------->8---
***** DONE [2010-06-21 Mo] (run)  22761  5:52
      :PROPERTIES:
      :date:     [2010-06-21 Mo]
      :meters:   22761
      :time:     02:13:32
      :pace:     5:52
      :start:    16:00
      :type:     lgDL
      :kcal:     1525
      :rpuls:    42
      :END:

******* Weather
        ...

******* Track
        ... where ...

******* Training
        ... splits, training contents ...

******* Comment
        ... feeling, health etc...
<= ---8<-----------------------------8<-----------------------------8<---


   As you can see, I use the "distance" and the "pace" in two
   places. One in the title for better overview, one as property for
   column view. But I'd like to enter it only once.






* Separate template files

  I'd like to use Org-mode to edit templates.

  I'm trying this:

  (setq org-capture-templates
    (
     `(
        ("l" "Lauf" entry (file+headline "notes/Laufen/Training.org" "Training")
         ,(org-file-contents "~/emacs/org/capture-templates/training.org")
         :empty-lines 1))))

  But I get an error when calling `org-capture':

Debugger entered--Lisp error: (wrong-type-argument listp "* DONE %u  
(%^{Type:})  %^{Distance:}  x:xx
  :PROPERTIES:
  :date:     %u
  :meters:
  :time:
  :pace:     x:xx
  :start:
  :type:
  :kcal:     xxx
  :rpuls:
  :END: %^{meters}p %^{start}p %^{time}p %^{type}p %x^{rpuls}p
*** Wetter
    %?

*** Strecke

*** Trainingsinhalt

*** Kommentar
")
  length(("l" "Lauf" entry (file+headline "notes/Laufen/Training.org" 
"Training") . "* DONE %u  (%^{Type:})  %^{Distance:}  x:xx\n  :PROPERTIES:\n  
:date:     %u\n  :meters:\n  :time:\n  :pace:     x:xx\n  :start:\n  :type:\n  
:kcal:     xxx\n  :rpuls:\n  :END: %^{meters}p %^{start}p %^{time}p %^{type}p 
%x^{rpuls}p\n*** Wetter\n    %?\n\n*** Strecke\n\n*** Trainingsinhalt\n\n*** 
Kommentar\n"))
  (= 2 (length (car tbl)))
  (and (= 2 (length ...)) (= (length ...) 1))
  (cond ((and ... ...) (setq dkey ... ddesc ...) (pop tbl) (push dkey des-keys) 
(push dkey allowed-keys) (insert prefix "[" dkey "]" "..." "  " ddesc "..." 
"\n") (setq re ...) (while ... ...)) ((= 2 ...)) (t (insert prefix "[" ... "]" 
"     " ... "\n") (push ... allowed-keys) (pop tbl)))
  (while tbl (cond (... ... ... ... ... ... ... ...) (...) (t ... ... ...)))
  (while t (erase-buffer) (insert title "\n\n") (setq tbl table des-keys nil 
allowed-keys nil) (setq prefix (if current ... "")) (while tbl (cond ... ... 
...)) (when specials (insert 
"-------------------------------------------------------------------------------\n")
 (let ... ...)) (push "" allowed-keys) (goto-char (point-min)) (if (not ...) 
(org-fit-window-to-buffer)) (message prompt) (setq pressed (char-to-string 
...)) (while (not ...) (message "Invalid key `%s'" pressed) (sit-for 1) 
(message prompt) (setq pressed ...)) (if (equal pressed "") (error "Abort")) 
(if (assoc pressed specials) (throw ... ...)) (unless (member pressed des-keys) 
(throw ... ...)) (setq current (concat current pressed)) (setq table (mapcar 
... table)) (setq table (remove nil table)))
  (catch (quote exit) (while t (erase-buffer) (insert title "\n\n") (setq tbl 
table des-keys nil allowed-keys nil) (setq prefix ...) (while tbl ...) (when 
specials ... ...) (push "" allowed-keys) (goto-char ...) (if ... ...) (message 
prompt) (setq pressed ...) (while ... ... ... ... ...) (if ... ...) (if ... 
...) (unless ... ...) (setq current ...) (setq table ...) (setq table ...)))
  (save-window-excursion (org-switch-to-buffer-other-window "*Org Select*") 
(setq orig-table table) (catch (quote exit) (while t ... ... ... ... ... ... 
... ... ... ... ... ... ... ... ... ... ... ...)))
  (let (tbl orig-table dkey ddesc des-keys allowed-keys current prefix rtn) 
(save-window-excursion (org-switch-to-buffer-other-window "*Org Select*") (setq 
orig-table table) (catch ... ...)) (kill-buffer "*Org Select*") rtn)
  org-mks((("t" "Todo" entry (file+headline "organizer.org" "Eingang")
  "* TODO %^{Title} %^g\n  Eingang: %U\n  %a\n  %i" :empty-lines 1) ("T"
  "Termin" entry (file+headline "organizer.org" "Eingang") "* TODO %^T
  %^{Title} %^g\n  Eingang: %U\n  %a\n  %i" :empty-lines 1) ("l" "Lauf"
  entry (file+headline "notes/Laufen/Training.org" "Training") . "* DONE
  %u  (%^{Type:})  %^{Distance:}  x:xx\n  :PROPERTIES:\n  :date:
  %u\n  :meters:\n  :time:\n  :pace:     x:xx\n  :start:\n  :type:\n
  :kcal:     xxx\n  :rpuls:\n  :END: %^{meters}p %^{start}p %^{time}p
  %^{type}p %x^{rpuls}p\n*** Wetter\n    %?\n\n*** Strecke\n\n***
  Trainingsinhalt\n\n*** Kommentar\n")

  ...



Sebastian



reply via email to

[Prev in Thread] Current Thread [Next in Thread]