From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sebastien Vauban" Subject: Re: [PATCH] Allow org-collector to display heading indentation Date: Sat, 31 Mar 2012 08:57:05 +0200 Message-ID: <80k421mf5q.fsf@somewhere.org> References: <4466.1333137165@alphaville> Mime-Version: 1.0 Content-Type: text/plain Return-path: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org To: emacs-orgmode-mXXj517/zsQ@public.gmane.org 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