* re-search and org-link
@ 2009-01-21 14:17 Christopher Suckling
2009-01-22 6:46 ` Carsten Dominik
0 siblings, 1 reply; 3+ messages in thread
From: Christopher Suckling @ 2009-01-21 14:17 UTC (permalink / raw)
To: emacs-orgmode
I currently use the following hook to achieve the level of detail I
like from a sparse tree:
(add-hook 'org-occur-hook
(lambda ()
(goto-char (point-max))
(while
(re-search-backward regexp nil t)
(show-subtree)
(org-cycle)
(org-cycle))))
I combine this hook with
(setq org-show-following-heading nil)
(setq org-show-entry-below t)
This works great unless regexp is within a fontified org-link. Then
Emacs hangs and I get the OS X spinning beach-ball.
There is a very easy workaround as re-search-backward has no problem
with an org-link if font-locking is turned off for the buffer:
(add-hook 'org-occur-hook
(lambda ()
(goto-char (point-max))
(font-lock-mode)
(while
(re-search-backward regexp nil t)
(show-subtree)
(org-cycle)
(org-cycle))
(font-lock-mode)))
Practically, I'm content with my solution, but I thought I'd mention
it should the bug lie within the org-link code and bite anyone else in
other situations.
OS X 10.5.6, Emacs 23.0.60.1 (NS), Org-mode 6.18c
Best wishes,
Christopher
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: re-search and org-link
2009-01-21 14:17 re-search and org-link Christopher Suckling
@ 2009-01-22 6:46 ` Carsten Dominik
2009-01-22 18:58 ` Christopher Suckling
0 siblings, 1 reply; 3+ messages in thread
From: Carsten Dominik @ 2009-01-22 6:46 UTC (permalink / raw)
To: Christopher Suckling; +Cc: emacs-orgmode
Hi Christopher,
turning font-lock off and on does seem to help, but it is a pretty big
cannon.
The reason hy your hook runs into problem is: When the match is in
text marked by an "intangible" property (like the link part of a link
that
also has a description), then the command loop moves the cursor you of
this location. Apparently this happens here. A more direct solution
might
be to move to the beginning of the line before continuing the search,
like this:
(add-hook 'org-occur-hook
(lambda ()
(goto-char (point-max))
(while
(re-search-backward regexp nil t)
(show-subtree)
(org-cycle)
(org-cycle)
(beginning-of-line 1))))
Or even better:
(add-hook 'org-occur-hook
(lambda ()
(goto-char (point-max))
(while
(re-search-backward regexp nil t)
(org-back-to-heading) ;; in case match was deeper in entry
(show-subtree)
(org-cycle)
(org-cycle)
(beginning-of-line 1))))
HTH
- Carsten
On Jan 21, 2009, at 3:17 PM, Christopher Suckling wrote:
> I currently use the following hook to achieve the level of detail I
> like from a sparse tree:
>
> (add-hook 'org-occur-hook
> (lambda ()
> (goto-char (point-max))
> (while
> (re-search-backward regexp nil t)
> (show-subtree)
> (org-cycle)
> (org-cycle))))
>
> I combine this hook with
>
> (setq org-show-following-heading nil)
> (setq org-show-entry-below t)
>
> This works great unless regexp is within a fontified org-link. Then
> Emacs hangs and I get the OS X spinning beach-ball.
>
> There is a very easy workaround as re-search-backward has no problem
> with an org-link if font-locking is turned off for the buffer:
>
> (add-hook 'org-occur-hook
> (lambda ()
> (goto-char (point-max))
> (font-lock-mode)
> (while
> (re-search-backward regexp nil t)
> (show-subtree)
> (org-cycle)
> (org-cycle))
> (font-lock-mode)))
>
> Practically, I'm content with my solution, but I thought I'd mention
> it should the bug lie within the org-link code and bite anyone else
> in other situations.
>
> OS X 10.5.6, Emacs 23.0.60.1 (NS), Org-mode 6.18c
>
> Best wishes,
>
> Christopher
>
>
>
>
>
> _______________________________________________
> 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
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: re-search and org-link
2009-01-22 6:46 ` Carsten Dominik
@ 2009-01-22 18:58 ` Christopher Suckling
0 siblings, 0 replies; 3+ messages in thread
From: Christopher Suckling @ 2009-01-22 18:58 UTC (permalink / raw)
To: Carsten Dominik; +Cc: emacs-orgmode, Christopher Suckling
On 22 Jan 2009, at 06:46, Carsten Dominik wrote:
> The reason hy your hook runs into problem is:
Organisation, publication and now programming lessons. Is there
anything org-mode^H^H^H Carsten can't do?
Many thanks,
Christopher
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-01-22 18:58 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-01-21 14:17 re-search and org-link Christopher Suckling
2009-01-22 6:46 ` Carsten Dominik
2009-01-22 18:58 ` Christopher Suckling
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).