[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] [bug] org-cycle changed behavior in orgstruct-mode

From: Nicolas Goaziou
Subject: Re: [O] [bug] org-cycle changed behavior in orgstruct-mode
Date: Sun, 30 Aug 2015 21:56:02 +0200

Rasmus <address@hidden> writes:

> But are the slowdowns associated with outline.el functions anything that
> will realistically be felt in normal usage?

They are noticeable under certain circumstances. I implemented
`org-show-children' because `show-children' was /reported/ as slow.

Generally speaking, outline doesn't cope well with dense sub-trees. As
an example, consider `org-forward-heading-same-level'. Using outline, we
need to move to next headline, check its level, compare with original,
rinse and repeat, possibly many times, until we find a match. However,
we could simply do

  (re-search-forward some-appropriate-regexp nil t)

and be done with it since we can turn level into a regexp.

> IMO the biggest advantage of orgstruct is that it has more sensible
> keybindings than outline.  Of course it's also nice with lists and tables
> (assuming they are not in orgstruct++; don't remember)...

Table is orgtbl-mode, not orgstruct-mode. 

List handling is a real concern however, because we cannot use the
parser (there is no context to know about) but still have to analyze

> Adding advice to orgstruct, which is a mess anyway, won't make it any
> worse than it is...


> I'm all for advising if that's easier or if we want to add workarounds in
> more places.  For my problem, the proposed one line patch fixes it,
> though.

Indeed. But it only solves `org-show-children'. I have the feeling that
we will encounter a similar issue with another base function like this
one later, tho.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]