Re: [O] [PATCH] Allow org-collector to display heading indentation

2012-03-31 Thread Nicolas Girard
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

2012-03-30 Thread Sebastien Vauban
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

2012-03-30 Thread Nicolas Girard
>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

2012-03-30 Thread Nick Dokos
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

2012-03-30 Thread Achim Gratz
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

2012-03-30 Thread Nicolas Girard
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