Re: [O] [PATCH] Allow org-collector to display heading indentation
2012/3/31 Sebastien Vauban : > > You may want to follow the "indent" convention used for clockview: "\__" > string. > > Have a look at (or reuse?) the function `org-clocktable-indent-string'... > Hi Sébastien, fair enough ; not that I like underscores much better but it makes sense for the indentation in both tables to be similar. I've rewritten my code in this respect. Cheers, Nicolas
Re: [O] [PATCH] Allow org-collector to display heading indentation
Hi Nicolas, Nicolas Girard wrote: > From eaf9e5f06279069ed1072425fd020d8f0442d04f Mon Sep 17 00:00:00 2001 > From: Nicolas Girard > Date: Fri, 30 Mar 2012 22:53:13 +0200 > Subject: [PATCH] Allow org-collector to display heading indentation > > --- > contrib/lisp/org-collector.el | 12 +--- > 1 files changed, 9 insertions(+), 3 deletions(-) > > diff --git a/contrib/lisp/org-collector.el b/contrib/lisp/org-collector.el > index da612e9..2476d62 100644 > --- a/contrib/lisp/org-collector.el > +++ b/contrib/lisp/org-collector.el > @@ -121,6 +121,7 @@ preceeding the dblock, then update the contents of > the dblock." > (scope (plist-get params :scope)) > (noquote (plist-get params :noquote)) > (colnames (plist-get params :colnames)) > + (indent (plist-get params :indent)) > (content-lines (org-split-string (plist-get params :content) "\n")) > id table line pos) > (save-excursion > @@ -135,7 +136,7 @@ preceeding the dblock, then update the contents of > the dblock." > (setq stringformat (if noquote "%s" "%S")) > (setq table (org-propview-to-table > (org-propview-collect cols stringformat conds match > scope inherit > - (if colnames colnames cols)) > stringformat)) > + (if colnames colnames cols) > indent) stringformat)) > (widen)) > (setq pos (point)) > (when content-lines > @@ -171,13 +172,18 @@ variables and values specified in props" >(when p (cons n p >inherit > > -(defun org-propview-collect (cols stringformat &optional conds match > scope inherit colnames) > +(defun org-propview-collect (cols stringformat &optional conds match > scope inherit colnames indent) >(interactive) >;; collect the properties from every header >(let* ((header-props > (let ((org-trust-scanner-tags t) alst) > (org-map-entries > - (quote (cons (cons "ITEM" (org-get-heading t)) > + (quote (cons (cons "ITEM" > + (let ((item (org-get-heading t)) > + (level (- (org-current-level) 1))) > + (if (and indent (> level 0)) > + (format "\\%s %s" > + (make-string level ?- ) item) > item))) You may want to follow the "indent" convention used for clockview: "\__" string. Have a look at (or reuse?) the function `org-clocktable-indent-string'... > (org-propview-get-with-inherited inherit))) >match scope))) >;; read property values Best regards, Seb -- Sebastien Vauban
Re: [O] [PATCH] Allow org-collector to display heading indentation
>From eaf9e5f06279069ed1072425fd020d8f0442d04f Mon Sep 17 00:00:00 2001 From: Nicolas Girard Date: Fri, 30 Mar 2012 22:53:13 +0200 Subject: [PATCH] Allow org-collector to display heading indentation --- contrib/lisp/org-collector.el | 12 +--- 1 files changed, 9 insertions(+), 3 deletions(-) diff --git a/contrib/lisp/org-collector.el b/contrib/lisp/org-collector.el index da612e9..2476d62 100644 --- a/contrib/lisp/org-collector.el +++ b/contrib/lisp/org-collector.el @@ -121,6 +121,7 @@ preceeding the dblock, then update the contents of the dblock." (scope (plist-get params :scope)) (noquote (plist-get params :noquote)) (colnames (plist-get params :colnames)) + (indent (plist-get params :indent)) (content-lines (org-split-string (plist-get params :content) "\n")) id table line pos) (save-excursion @@ -135,7 +136,7 @@ preceeding the dblock, then update the contents of the dblock." (setq stringformat (if noquote "%s" "%S")) (setq table (org-propview-to-table (org-propview-collect cols stringformat conds match scope inherit -(if colnames colnames cols)) stringformat)) +(if colnames colnames cols) indent) stringformat)) (widen)) (setq pos (point)) (when content-lines @@ -171,13 +172,18 @@ variables and values specified in props" (when p (cons n p inherit -(defun org-propview-collect (cols stringformat &optional conds match scope inherit colnames) +(defun org-propview-collect (cols stringformat &optional conds match scope inherit colnames indent) (interactive) ;; collect the properties from every header (let* ((header-props (let ((org-trust-scanner-tags t) alst) (org-map-entries -(quote (cons (cons "ITEM" (org-get-heading t)) +(quote (cons (cons "ITEM" + (let ((item (org-get-heading t)) + (level (- (org-current-level) 1))) + (if (and indent (> level 0)) + (format "\\%s %s" + (make-string level ?- ) item) item))) (org-propview-get-with-inherited inherit))) match scope))) ;; read property values -- 1.7.8.rc1
Re: [O] [PATCH] Allow org-collector to display heading indentation
Nicolas Girard wrote: > Hi all, > attached is a patch ... Attachments with mime type "application/octet-stream" are *not* caught by patchwork. Please resubmit the patch in a proper attachment: see http://orgmode.org/worg/org-contribute.html#sec-4-3 for details. Nick
Re: [O] [PATCH] Allow org-collector to display heading indentation
Nicolas Girard writes: > I wish the indentation to be displayed with nothing but spaces, but > they would be trimmed by org-table guts ; so that's middly satisfying, > but better than nothing :-) Then use a non-breaking space and be fully satisfied. Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Waldorf MIDI Implementation & additional documentation: http://Synth.Stromeko.net/Downloads.html#WaldorfDocs
[O] [PATCH] Allow org-collector to display heading indentation
Hi all, attached is a patch which adds a new parameter "indent" to the propview dynamic bloc, with the following behaviour: #+BEGIN_SRC org ,* Tree ,:PROPERTIES: ,:COLUMNS: %8ITEM %4prop1 %5prop2 ,:ID: tree ,:END: ,** A ,:PROPERTIES: ,:prop1: 10 ,:prop2: 20 ,:END: ,*** A1 ,:PROPERTIES: ,:prop1: 15 ,:prop2: 19 ,:END: ,*** A2 ,:PROPERTIES: ,:prop1: 20 ,:prop2: 18 ,:END: ,** B ,:PROPERTIES: ,:prop1: 25 ,:prop2: 10 ,:END: ,*** B1 ,:PROPERTIES: ,:prop1: 2 ,:prop2: 4 ,:END: ,*** B2 ,:PROPERTIES: ,:prop1: 3 ,:prop2: 5 ,:END: #+END_SRC #+BEGIN: propview :id tree :cols (ITEM prop1) :noquote t :indent t | ITEM | prop1 | |+---| | Tree | 0 | | \- A |10 | | \-- A1 |15 | | \-- A2 |20 | | \- B |25 | | \-- B1 | 2 | | \-- B2 | 3 | |+---| || | #+END I wish the indentation to be displayed with nothing but spaces, but they would be trimmed by org-table guts ; so that's middly satisfying, but better than nothing :-) Cheers, Nicolas org-collector.el.diff Description: Binary data