On 31 jan. 2013, at 14:32, Bastien <b...@altern.org> wrote: > Hi Carsten, > > thanks a lot for the very clear explanations. > > Carsten Dominik <carsten.domi...@gmail.com> writes: > >> The difference is only the repeated concatenation operation, and not the >> recompilation. I always thought that this would work differently, and that >> is why a lot of regexps get constructed and then stored in variables or >> constants. Of course this is also a good practice for readable and >> maintainable code, but the impact on efficiency is not as big as I used to >> think. So when I saw Christoher's initial patch, I thought a function to >> create >> org-ooutline-regexp-bol would be a large burden in speed - but it now seems >> that it would only be a minor impact. > > That was my assumption too... hence my reaction to Christopher's > patch. > > It now makes sense -- I'll ask for confirmation on the emacs-devel as > suggested by Christopher. > >> Still, I think making a local variable in buffers with >> org-struct-mode is also a good way to get the functionality >> Christopher wants. > > Mh... here I'm not sure to understand what you suggest. > Isn't the whole point of Christopher's patch to rely on > a buffer local value of org-outline-regexp? I surely miss > something.
Not really, I am not particulrly clear here. Christopher proposes to do this: ;; Local Variables: ;; eval: (orgstruct-mode 1) ;; org-outline-regexp: ";;; \\*+" ;; org-heading-regexp: "^;;; \\(\\*+\\)\\(.+\\)$" ;; End: I was just thinking, if you are setting up two local variables, you could set up three and include org-outline-regexp-bol as well. Or, you could just set up `org-outline-regexp', and make the function org-struct-mode set up the other two as additional local variables. This would simplify things. In fact, I think this would make for a more compact and better patch, Christopher, what do you think? - Carsten