emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Daniel Clemente <n142857@gmail.com>
To: Org-mode Org-Mode <emacs-orgmode@gnu.org>
Subject: Re: demoting a heading inserts spaces in column-0 text
Date: Sat, 13 Dec 2014 17:28:06 +0700	[thread overview]
Message-ID: <87lhmbrgi1.wl-n142857@gmail.com> (raw)
In-Reply-To: <87388mvxgd.fsf@nicolasgoaziou.fr>

El Fri, 12 Dec 2014 19:25:25 +0100 Nicolas Goaziou va escriure:
> 
> >   Of course everything's text, but if there's no distinction between
> > drawers/headers and text, that's the problem. Those headers are metadata
> > written and managed by org and must follow some rules,
> 
> This is incorrect.
> 
> :CLOCK: or :LOGBOOK: or whatever the value of `org-clock-into-drawer'
> is, are regular drawers conveniently provided to collect clocks and
> allow to hide them away. They have no special meaning in Org, and may
> not even exist (i.e., when `org-clock-into-drawer' is nil). There is no
> reason to treat them specially.
> 
> OTOH, clocks themselves are pure metadata. They could be indented
> specifically, but since they are allowed anywhere in a section, it might
> be dangerous to do so (e.g. it could break a list). Actually, this is
> true for anything that need to appear at the very beginning of the
> section, i.e., anything but planning info and properties drawers.
>
> > […]
> This is also wrong. PROPERTIES drawer, which is metadata, has to be
> moved before anything else in the section (with the exception of
> planning info). This has nothing to do with CLOCK drawers, which are not
> even considered in the process.
> 
> >   So, I think org should detect its own syntax (:CLOCK: ... :END: etc.), and
> > do automatic changes only to its own syntax, not to text typed by the user
> > unless the user asks for it.
> 
> Again, :CLOCK:...:END: is user's decision, not Org's. So are all
> drawers, but, of course, PROPERTIES. The latter is the exception, not
> the rule.

  But these are technical details, not relevant to a non-programmer. What a new user sees with the default settings as of today is:
- he writes a new tree and some text inside
- he clocks in
- he demotes the tree (shift+right) because he wants to change the tree structure. Result: his text also is modified
  This breaks user's expectations. At least it breaks my expectations, because in a logical tree of nodes, demoting does not mean „shift contents“. And I thought org was supposed not to break my content.
  I also lose controllability because I have no way to rearrange nodes without side effects.
  
  I suggest:

1. New default for org-adapt-indentation = 'partial, which shifts every line until the first line which starts at column 0. This may not shift all drawers in complex cases where you have them in the bottom of the tree; therefore it's called partial. This is handling the most common cases. And in case you had indentation in all lines, all lines will be shifted.

2. With org-adapt-indentation = 'partial, new lines added by org (:CLOCK: drawer, CLOCK lines etc) appear at the same column as the heading, not at column 0

3. The other options stay the same: org-adapt-indentation=t means everything will be shifted, org-adapt-indentation=nil means nothing will be shifted (new text starts at column 0)



-- Daniel

  reply	other threads:[~2014-12-13 10:28 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-05 13:02 demoting a heading inserts spaces in column-0 text Daniel Clemente
2014-12-05 23:40 ` Nicolas Goaziou
2014-12-11 12:36   ` Daniel Clemente
2014-12-12 18:25     ` Nicolas Goaziou
2014-12-13 10:28       ` Daniel Clemente [this message]
2014-12-13 11:33         ` Nicolas Goaziou
2014-12-13 13:38           ` Daniel Clemente
2014-12-13 14:10             ` Nicolas Goaziou
     [not found]               ` <87iohequ70.wl-n142857@gmail.com>
2014-12-22  5:43                 ` Fwd: " Daniel Clemente
2014-12-22 11:34                   ` Nicolas Goaziou
2014-12-22 15:28                     ` Sebastien Vauban
2014-12-23  8:41                       ` Nicolas Goaziou
2015-01-09 16:02                     ` Daniel Clemente
2015-01-13 11:10                       ` Nicolas Goaziou
2015-01-16 14:29                         ` Daniel Clemente

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lhmbrgi1.wl-n142857@gmail.com \
    --to=n142857@gmail.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).