Hi Nicolas, what has happened to this patch? Did you stop it due to my questions? That was not my intention - so if you are convinced that it works well, it might be a good solution.
- Carsten On Jul 21, 2011, at 5:14 PM, Nicolas Goaziou wrote: > Hello, > > Carsten Dominik <carsten.domi...@gmail.com> writes: > >> On 13.3.2011, at 17:21, Nicolas wrote: >> >>> I'd like to submit the following org-indent-mode patch for testing. >>> >>> >>> It implements two things: >>> >>> 1. It indents correctly text when using visual-line-mode; >>> 2. It removes the idle timer previous implementation was using, which >>> means it won't refresh indentation more often than necessary. >>> >>> Unfortunately, there is a price to pay: >>> >>> 1. Initialization will be much longer for large Org files, but I've >>> added a message to the user saying so. >>> 2. It is a bit slower, as the algorithm has more things to check. >>> >>> >>> Last point is obviously my main concern. Although not noticeable on my >>> not-so-recent laptop, I don't know how it behaves on old machines. >>> > >> Initial testing seems to show that this works well, very nice. >> >> The delay at the beginning is long, and it might be annoying >> when org pulls in a buffer just to look something up, >> without org-inhibit-startup scoped into the file loading. >> >> Maybe one could arrange for the initialization to happen just >> before the buffer is first *displayed* (I do not know if that >> is possible). >> >> Just one nitpicking: The idle timer may force updating when >> not necessary - but using after-change-functions will update after >> each character inserted. So in fact your code might be updating >> more often at least while typing - maybe not while looking at >> the buffer and jumping around. I am not a fast typist, but maybe >> fast typists will notice significant delays, in particular >> while writing inside a very long section? > > In order to circumvent the slow process at initialization, I've > implemented an asynchronous initialization. Thus, one can open the > buffer and start to write in it before initialization is complete. Once > it is done, everything else is synchronous again. > > I think it is a good compromise. It needs testing though. Thus, if > anyone is interested, I'll gladly hear his feedback. > > The branch is located at : > > git://github.com/ngz/org-mode-lists.git indent-patch-no-timer > > > Regards, > > -- > Nicolas Goaziou - Carsten