Hello, Aankhen <aank...@gmail.com> writes:
>> --8<---------------cut here---------------start------------->8--- >> * Unmatched #+end-src bug >> >> #+end_src >> --8<---------------cut here---------------end--------------->8--- >> >> With the above simple org file, placing the cursor at the end of >> #+end_src and hitting return causes emacs to hang. >> > The =cond= is part of a =while= loop; it just keeps looping, entering > that branch and doing nothing (rather than moving point and picking up > again from there). Going by the other branches, I think the correct > thing to do is just exit the loop: I don't think exiting the loop that way is the right thing to do, as it always return nil, even though the #+end_ might be in the list. Moreover, there are other parts of the file that should also be fixed. I think there are 3 options here: 1. Effectively stop everything, but at least throw an informative error. 2. Consider the #+end_ as normal text after all, and resume the loop. 3. Consider #+end_ as normal text and message the user about his syntax problem. I'm not sure yet what's the best way to go, but I think option 2 is sufficient. Regards, -- Nicolas