On Tue, May 7, 2013 at 4:54 AM, Bastien <b...@gnu.org> wrote: > Hi John, > > John Hendy <jw.he...@gmail.com> writes: > >> On Fri, Apr 26, 2013 at 1:54 AM, Bastien <b...@gnu.org> wrote: >>> Hi Jisang, >>> >>> Jisang Yoo <jisang.yoo.ac+...@gmail.com> writes: >>> >>>> 2. Place cursor at the beginning of "** bacon" and press M-RET and org >>>> creates >>>> a first-level heading. >>> >>> This should now be fixed. Thanks for reporting this, >> >> There were some same/similar/related issues as well, and I'm still not >> getting perfect results. >> >> Using a minimal config (below), if I create this in a new file >> >> * test >> ** test1 >> ** test2 >> >> and then fold on * test, I get this: >> >> * test...2 > > I do have (setq require-final-newline t) in my config, which prevents > this. What happens is this: if you don't have the config above, the > folding will get wrong and display the "2" from the end of the buffer. > >> Also, after navigating to the end of * test...2 (with it folded) and >> issuing M-RET, I get a new second level heading after ** test2. I >> would have expected a new first level headline since I did M-RET on a >> first level headline. Or is that the default behavior? > > If you are before the "..." ellipsis, you are on a first level > headline and M-RET will insert a first level headline. Otherwise you > are on a second level headline ("test2") and it will insert a second > level headline.
Ah, that now makes sense. But... just to be clear, take this case: * Headline1 - list1 - list2 Now fold it: * Headline1<cursor>... If I do M-RET at <cursor>, I get: * Headline1 * <cursor> - list1 - list2 Is that how it's supposed to work? My use case is generally to have a new headline after * Headline1 *and* it's contents, not putting contents inside the new headline. C-RET seems to behave more like I'd expect. In reading the manual, I think I was just confused on usage based on the definition of C-RET, however this in the description of M-RET is confusing: #+begin_quote If the command is used at the end of a folded subtree (i.e., behind the ellipses at the end of a headline), then a headline like the current one will be inserted after the end of the subtree. Calling this command with C-u C-u will unconditionally respect the headline's content and create a new item at the end of the parent subtree. #+end_quote It makes it seem like my original case in which the cursor is behind (after?) the ... should insert a same-level headline after the end of the current subtree (which I would assume means that headline and all contents). Am I reading that incorrectly? It doesn't really talk about the behavior if you're before the ellipsis. Thanks for clarifying, John > >> If so, I guess my only concern is the folding of the end of a headline >> if there's no hard return after it into the ellipsis of it's parent. > > Yes. Maybe M-RET could/should handle this corner-case but since > `org-insert-heading' is deserving a full rewrite, I'm not going to > try to handle this corner-case myself... let's just keep it in mind > when doing the rewrite. Thanks for spotting it, > > -- > Bastien