emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Adam Porter <adam@alphapapa.net>
To: emacs-orgmode@gnu.org
Subject: Re: [RFC] Document level property drawer
Date: Sat, 05 Oct 2019 19:51:22 -0500	[thread overview]
Message-ID: <877e5i66id.fsf@alphapapa.net> (raw)
In-Reply-To: HE1PR02MB30336573AAD1DCB52AF85106DA990@HE1PR02MB3033.eurprd02.prod.outlook.com

Gustav Wikström <gustav@whil.se> writes:

>> In Org, some keywords are special, like #+CATEGORY.  For many years,
>> such keywords have had file-wide effects regardless of their placement
>> in the file.  IIUC, your proposal would change that, and that would
>> still be a major, breaking change.
>
> This seems disingenuous.

To be disingenuous means, e.g.

    Not ingenuous; wanting in noble candor or frankness; not frank or
    open; uncandid; unworthily or meanly artful.

It's not friendly to imply that of me over a difference of
interpretation of Org syntax and traditions.  I hope you meant something
else.  I wouldn't spend my time studying your proposals and offering
feedback if I didn't want what's best for Org and its users.

> In no way is this a major, breaking change.  No document you have
> today will break by the introduction of this.  The only thing changing
> is if you *actively* create a document level property drawer and
> choose to enter a property there that you already have defined in the
> same document, using a property keyword.

There is a bigger picture which you seem to be ignoring.

Org is distributed with Emacs itself.  Emacs versions are long-lived.
People use old Emacs and Org versions for years, because few people
build and install Emacs themselves, so most users use the versions
included with their OS or other distributions.

Your proposed change would introduce a major change in the way document
properties are interpreted.  This means that the same document, when
used on Emacs/Org versions before and after this change, would be
interpreted differently.  That's breaking forward-compatibility between
versions, ones which will be in the wild for years.  That decision
should not be taken lightly.

> Keywords that previously had file-wide effects will continue to have
> that. That's not removed. So you must have missunderstood something
> here.

I did not misunderstand; I am looking from a different perspective.  In
your proposal, line-based keywords can be overridden by document-level
property drawers, while they currently are applied to the entire file
regardless of any drawers.  That is a major change.

>> > If you think of the document as an outline, something Org mode is
>> > all about, it makes sense to also think of things before the first
>> > headline as "node level 0". And with that way of conceptually
>> > thinking of the document it makes perfect sense to have a property
>> > drawer fixed at the top - in the same way as it is required for all
>> > other node levels.
>> 
>> What you're proposing is actually a fundamental change to the way Org
>> documents are interpreted.  Org documents are not currently an
>> outline, just a series of elements which may include an outline.
>> Text and elements before a first heading are not part of a node,
>> they're just text and elements in the document.
>
> I don't agree here. What I'm proposing in this patch doesn't change
> the fundament of an Org mode document. I'd rather say it enhances the
> fundament! Since the outline to a large extent is the fundament! The
> following quote is from the documentation - Chapter 2, Document
> Structure:
>
>   #+begin_quote Org is an outliner.  Outlines allow a document to be
>   organized in a hierarchical structure, which, least for me, is the
>   best representation of notes and thoughts.  #+end_quote

Org is a collection of Emacs code built on top of Outline Mode, which
interprets plain-text files in a certain way.  Since the beginning, such
files have been interpreted such that content before the first heading
is not part of an outline node.  Your proposal would change that.  For
better or worse, it is a major change that has implications which you
seem to be unconcerned with.

> Thus, saying Org documents are not currently an outline again feels
> disingenuous and at this point I struggle to take your comments
> seriously.

As a fellow Org developer, I empathize with the work you have put into
your proposal and its code.  However, it would be best if you would
consider these issues impartially.

Like it or not, there is a wider "ecosystem" around Org today, and it is
growing.  Your proposal would have effects rippling downstream for years
to come, and other people would have to spend time making changes to
accommodate them.  Thus, the wider implications of your proposal should
be very carefully considered.

Org is a big, and growing, project with thousands of users.  We have a
duty to take these considerations into account, so major changes, like
your proposal, should be taken very seriously.

  reply	other threads:[~2019-10-06  0:51 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-05 18:20 [RFC] Document level property drawer Gustav Wikström
2019-10-06  0:51 ` Adam Porter [this message]
  -- strict thread matches above, loose matches on Subject: below --
2019-10-24 22:29 Gustav Wikström
2019-10-20  2:28 Gustav Wikström
2019-10-22 21:24 ` Marco Wahl
2019-10-23  8:43 ` Marco Wahl
2019-10-23  8:59   ` Gustav Wikström
2019-10-24 21:01   ` Gustav Wikström
2019-10-25 12:58     ` Marco Wahl
2019-10-23 16:08 ` Adam Porter
2019-10-06  6:02 Gustav Wikström
2019-10-06  5:35 Gustav Wikström
2019-10-02 20:29 Gustav Wikström
2019-09-30 22:09 Gustav Wikström
2019-10-03 18:31 ` Adam Porter
2019-10-04 10:38   ` Marco Wahl
2019-10-06  1:01     ` Adam Porter
2019-10-07  7:46       ` Marco Wahl
2019-09-29 10:27 Gustav Wikström
2019-09-29 19:13 ` Marco Wahl
2019-09-30 16:01 ` Adam Porter
2019-09-30 20:46   ` Marco Wahl
2019-10-01 12:38     ` Sebastian Miele
2020-01-13 21:52       ` Marco Wahl
2020-01-15  8:18         ` Sebastian Miele
2020-02-01 19:59           ` Marco Wahl
2019-10-01 13:55     ` Adam Porter
2019-10-02 10:29       ` Marco Wahl
2019-10-03 18:06         ` Adam Porter
2019-10-04 11:05           ` Marco Wahl
2019-10-06  1:05             ` Adam Porter
2019-10-06  5:10               ` Matt Price
2019-10-15 17:49 ` Gustav Wikström
2019-10-16  0:48   ` Adam Porter
2019-10-16  9:48   ` Marco Wahl

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=877e5i66id.fsf@alphapapa.net \
    --to=adam@alphapapa.net \
    --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).