> Hi, > > I would like Emacs to calculate the price for the travel cost > (21.90). This should be calculated as sum of the values of the property > "Price" in the elements of the tree. How do I do that in Emacs Lisp?
I found one way to do it. I defined the COLUMNS property with %Price{+}, i.e. sum numbers in column 'Price and format result with `%.2f' (always two decimals after point). After that I added the property 'Price' and, while cursor on 'Price', with `C-c C-c (`org-property-action')' and choosing option c (compute) the value of 'Price' got calculated. I added the same inline Emacs Lisp expression to the headline to include the result (21.90) in the headline. -------8<----------------8<------------- * Travel cost -- src_emacs-lisp{(org-entry-get (point) "Price")} EUR :PROPERTIES: :COLUMNS: %Price{+;%.2f} :Price: 21.90 :END: ** Train Eusirchen -- Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} EUR :PROPERTIES: :Price: 7.70 :END: ** Bus Euskirchen -- Stotzheim, src_emacs-lisp{(org-entry-get (point) "Price")} EUR :PROPERTIES: :Price: 2.40 :END: ** Taxi Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} EUR :PROPERTIES: :Price: 11.80 :END: -------8<----------------8<------------- Any ideas on how to improve that solution? Rainer Hansen <rainer.han...@gmx.net> writes: > > ---------------------------------------------- > * Travel cost -- 21.90 EUR > > ** Train Eusirchen -- Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} > EUR > :PROPERTIES: > :Price: 7.70 > :END: > ** Bus Euskirchen -- Stotzheim, src_emacs-lisp{(org-entry-get (point) > "Price")} EUR > :PROPERTIES: > :Price: 2.40 > :END: > > ** Taxi Bonn, src_emacs-lisp{(org-entry-get (point) "Price")} EUR > :PROPERTIES: > :Price: 11.80 > :END: > ---------------------------------------------- > > Thanks! > > Rainer