[Orgmode] deleting hidden parts of sparse trees

2008-07-07 Thread Dan Davison
I'd like to be able to create a 'pruned' tree -- I am thinking of an
operation that is similar to sparse tree creation, but which results
in the deletion (not just folding) of all subtrees that contain no
matching entries.

I don't think this currently exists as such (?), but it is possible to do
what I want by (1) creating a sparse tree, and (2) org-export-visible,
selecting the 'keep-buffer' option. So that's good. However, I don't
know how to do it programmatically, because org-export-visible has
interactive keyboard input. (Or am I just exposing my ignorance
here??)  I've looked at the code, and what occurs to me is to hack out
the middle bit of org-export-visible as a separate function, say
org-prune-invisible or something. I sort of tried. It, err, didn't
work. Anyone think this would be worth doing? (The functionality, if
not via my suggested route)

Dan


___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] org-publish

2008-07-07 Thread Rick Moynihan


I have similar settings but I still do not get any output.  Any
ideas what I can check or what other debug information can I
provide?

Any thoughts appreciated.



Just the other day I ran into this problem with org-publish, and it took 
me quite a while to realise that I needed to create an org publish 
timestamp directory for it to work properly.


Is there a reason why this directory wasn't being created automatically? 
 Once I created the directory by hand it worked perfectly.


R.






___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] org-publish

2008-07-07 Thread Carsten Dominik


On Jul 7, 2008, at 7:24 AM, Rick Moynihan wrote:



I have similar settings but I still do not get any output.  Any
ideas what I can check or what other debug information can I
provide?

Any thoughts appreciated.



Just the other day I ran into this problem with org-publish, and it  
took me quite a while to realise that I needed to create an org  
publish timestamp directory for it to work properly.


Is there a reason why this directory wasn't being created  
automatically?  Once I created the directory by hand it worked  
perfectly.


This bug has been fixed by now.

- Carsten



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] org-publish

2008-07-07 Thread Carsten Dominik


On Jul 5, 2008, at 8:42 AM, Richard G Riley wrote:


Carsten Dominik [EMAIL PROTECTED] writes:


On Jul 4, 2008, at 8:28 AM, Richard G Riley wrote:



I would like to suggest that

C-c C-e P  Publish the project containing the current file. also
publishes any projects which contain that project. e.g I have a
container project

(cv
 :components (cv-html cv-raw)
 )

This would mean one doesn't have to manually select org-publish and
then
enter cv to publish the entire project. One can do it using hot  
keys

from any file within cv-html or cv-raw.


But if you have changed only a file in a sub project, what is the  
need

for publishing the container?

- Carsten


But what if I have changed more than one file? Which (in my case is
typical). Since the timestamps are now working better there is no real
transfer overhead.


A subproject may be part of several containers.

With the time stamps now properly working, you can also make it a habit
to simply publish everything with `C-c C-e A'.

- Carsten



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] C-c C-o on link to [gnus:gmane.comp.compilers.free-pascal.general#****** open a new Emacs frame (window)

2008-07-07 Thread Carsten Dominik


On Jul 6, 2008, at 11:56 AM, Csányi Pál wrote:


Hello!

I have a link that are pointed to a gnus: article.

When I do C-c C-o to open that link, a new Emacs session in a new
Frame being opened, but I have already opened a Gnus session in
Emacs.

Can I, and if can, how to setup so, so this link shall to be opened in
the same Emacs frame but in another buffer?

Any advices will be appreciated!


Take a look at the variable org-link-frame-setup and substitute the  
value

gnus-other-frame with a function that does what you want.  I don't know
which function that would be, but probably there is one that does what
you want.

- Carsten

___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] C-c C-o on link to [gnus:gmane.comp.compilers.free-pascal.general#****** open a new Emacs frame (window)

2008-07-07 Thread Richard G Riley
Carsten Dominik [EMAIL PROTECTED] writes:

 On Jul 6, 2008, at 11:56 AM, Csányi Pál wrote:

 Hello!

 I have a link that are pointed to a gnus: article.

 When I do C-c C-o to open that link, a new Emacs session in a new
 Frame being opened, but I have already opened a Gnus session in
 Emacs.

 Can I, and if can, how to setup so, so this link shall to be opened in
 the same Emacs frame but in another buffer?

 Any advices will be appreciated!

 Take a look at the variable org-link-frame-setup and substitute the
 value
 gnus-other-frame with a function that does what you want.  I don't know
 which function that would be, but probably there is one that does what
 you want.


Gnus does the job.


___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] deleting hidden parts of sparse trees

2008-07-07 Thread Carsten Dominik


On Jul 7, 2008, at 1:55 AM, Dan Davison wrote:


I'd like to be able to create a 'pruned' tree -- I am thinking of an
operation that is similar to sparse tree creation, but which results
in the deletion (not just folding) of all subtrees that contain no
matching entries.

I don't think this currently exists as such (?),


No, it does not.


but it is possible to do
what I want by (1) creating a sparse tree, and (2) org-export-visible,
selecting the 'keep-buffer' option.


That is a possibility, but for your task a much more direct way would be
to iterate directly over the overlays in the buffer and to delete text
accordingly.

(defun outline-delete-invisible ()
  Delete all text covert by overlays with `invisible' property  
`outline'.

  (interactive)
  (let ((ovls (overlays-in (point-min) (point-max))) o)
(while (setq o (pop ovls))
  (and (eq (overlay-get o 'invisible) 'outline))
  (delete-region (overlay-start o) (overlay-end o)


Do I need to mention that this will be a dangerous operation, deleting
lots of invisible text?  You might find out only ater it is too late
to recover.

HTH

- Carsten



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


Re: [Orgmode] deleting hidden parts of sparse trees

2008-07-07 Thread Carsten Dominik


On Jul 7, 2008, at 9:44 AM, Carsten Dominik wrote:


(defun outline-delete-invisible ()
 Delete all text covert by overlays with `invisible' property  
`outline'.

 (interactive)
 (let ((ovls (overlays-in (point-min) (point-max))) o)
   (while (setq o (pop ovls))
 (and (eq (overlay-get o 'invisible) 'outline))
 (delete-region (overlay-start o) (overlay-end o)


Do I need to mention that this will be a dangerous operation, deleting
lots of invisible text?  You might find out only ater it is too late
to recover.



Even much more dangerous then I thought, the command shown above
actually deletes anything covered by overlays, not only outline
overlays.  Just one misplaced parenthesis..

Here is the corrected version.

(defun outline-delete-invisible ()
  Delete all text covered by overlays with `invisible' property  
`outline'.

  (interactive)
  (let ((ovls (overlays-in (point-min) (point-max))) o)
(while (setq o (pop ovls))
  (and (eq (overlay-get o 'invisible) 'outline)
   (delete-region (overlay-start o) (overlay-end o))




___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] Re: marking out-links

2008-07-07 Thread Jose A. Ortega Ruiz
Carsten Dominik [EMAIL PROTECTED] writes:


[...]


 I you rest the mouse over the link, a tooltip window will show the link.
 Additional markers in the display text would require hacking the
 function
 `org-activate-bracket-links', but I am not in favor of this proposal.
 If you dont like using the mouse, one could use an idle timer to display
 the link in the echo area when the cursor is on the link - I have done
 something like this with RefTeX, on BibTeX references.


Well, i run emacs on a terminal most of the time, so tooltips don't work
for me. As for echoing, yes, that'd work, but it's somewhat orthogonal
to the marking feature, the point of the latter being knowing the kind
of one or more links before going there. But it seems i'm the only one
finding that useful :), so i guess i'll hack something around
org-activate-bracket-links. Thanks for the tip!

Cheers,
jao
-- 
Sometimes I think we're alone in the universe, and sometimes I think we're
not. In either case, the idea is quite staggering.
 -Arthur C Clarke, writer (1917- )



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode


[Orgmode] org-agenda-list-stuck-projects and nested projects

2008-07-07 Thread Ross Patterson
One of the things I love about org-mode is that it's generally hierarchy
agnostic which is to say it doesn't care what level or depth entries are
with regards to the functionality org-mode provides with entries (TODOs,
Dates and times, tags, etc.).

Many of the projects I'd like to manage with org-mode are fairly large
and as such I'd like to make use of org-mode's heirarchical agnosticism
to factor my projects into nested projects arbitrary depth.  This is
supported very well by the rest of org-mode, just not the stuck projects
agenda view.

I find that view very valuable, but if I have a project with lots of
branches that can move in parallel and one of those branches is stuck
but another isn't stuck, then the stuck projects report doesn't reflect
this assuming that if one branch isn't stuck then the project isn't
stuck.  Since the project is very large, that means I have to inspect
the whole tree to figure out what might be stuck.  The only workaround
with the current implementation is that anytime I have a
project/sub-project/branch lower than LEVEL=2 that I need to be able to
review, then I have to break it out to a LEVEL=2 headline.  This creates
a negative feedback which will probably result in me not using the stuck
projects view and probably insufficiently reviewing my projects.

What I'd like is an agenda view like the stuck projects view but rather
than omitting any project that has any active TODO's all the way up the
hierarchy, it will only omit headlines that have active TODO's among its
immediate children.

If I start with a test.org file like so:

* Testing
** Stuck Project at Level 2
*** Sub-project at Level 3
 DONE bar
*** Sub-project 2 at Level 3

And customize org-stuck-projects to remove the LEVEL=2 restriction like
so:

(setq org-stuck-projects '(/-DONE (TODO) nil ))

And finally customize the org-tags-match-list-sublevels to allow tags
matching to descend.

Then if I open test.org and do C-c a  # I get:

List of stuck projects:
  test:   .Stuck Project at Level 2
  test:   ..Sub-project at Level 3
  test:   ..Sub-project 2 at Level 3

Then if I re-activate the bar heading by putting it in the TODO state:

* Testing
** Stuck Project at Level 2
*** Sub-project at Level 3
 TODO bar
*** Sub-project 2 at Level 3

I get an empty list:

List of stuck projects:

I'd like a list with the sub-heading that is still stuck:

List of stuck projects:
  test:   .Stuck Project at Level 2
  test:   ..Sub-project 2 at Level 3

I tried modifying the org-agenda-list-stuck-projects function by
implementing an org-agenda-skip-function that only skips the heading
and not the whole subtree:

(defun org-agenda-skip-entry-when-regexp-matches ()
  Checks if the current entry contains match for `org-agenda-skip-regexp'.
If yes, it returns the end position of this entry, causing agenda
commands to skip this entry.  This is a function that can be put
into `org-agenda-skip-function' for the duration of a command.
  (org-agenda-skip-if nil '(regexp org-agenda-skip-regexp)))

Then I replaced the org-agenda-skip-function set in
org-agenda-list-stuck-projects by replacing:

  (let* ((org-agenda-skip-function 'org-agenda-skip-subtree-when-regexp-matches)

with:

  (let* ((org-agenda-skip-function 'org-agenda-skip-entry-when-regexp-matches)

But that gets me:

List of stuck projects:
  test:   .Stuck Project at Level 2
  test:   ..Sub-project at Level 3
  test:   ...TODO bar
  test:   ..Sub-project 2 at Level 3

I'm new to the internals of org-mode.  Can anyone help me figure out
what's wrong with my attempted solution here?

Ross



___
Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode