emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] M-RET inside the first second-level heading of the first first-l


From: Carsten Dominik
Subject: Re: [O] M-RET inside the first second-level heading of the first first-level heading
Date: Fri, 10 May 2013 08:49:19 +0200

On 7.5.2013, at 23:34, John Hendy <address@hidden> wrote:

> On Tue, May 7, 2013 at 4:54 AM, Bastien <address@hidden> wrote:
>> Hi John,
>> 
>> John Hendy <address@hidden> writes:
>> 
>>> On Fri, Apr 26, 2013 at 1:54 AM, Bastien <address@hidden> wrote:
>>>> Hi Jisang,
>>>> 
>>>> Jisang Yoo <address@hidden> 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.

Yes, this is also a bit confusing.  I think it would be desirable if it
worked as described in the manual, but this is not what is happening.
For now, I fixed the manual.

- Carsten


> 
> 
> 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
> 




reply via email to

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