emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <n.goaziou@gmail.com>
To: Achim Gratz <Stromeko@Nexgo.DE>
Cc: emacs-orgmode@gnu.org
Subject: Re: [BUG] [ODT] Annotations break paragraphs
Date: Thu, 28 Mar 2013 15:41:01 +0100	[thread overview]
Message-ID: <87vc8by4ci.fsf@gmail.com> (raw)
In-Reply-To: <kj0nl6$bmv$1@ger.gmane.org> (Achim Gratz's message of "Thu, 28 Mar 2013 07:24:09 +0100")

Hello,

Achim Gratz <Stromeko@Nexgo.DE> writes:

>> It wouldn't allow paragraphs within the annotation.
>
> ???
>
> ----8<----
>      There is an annotation by the original author here
>      #+BEGIN_ANNOTATION
>        I never meant to break this paragraph.
>
>        But here's a second one in the annotation,
>        still not braking the outer paragraph.
>      #+END_ANNOTATION
>      in the middle of the paragraph.
> ---->8----

Then you're contradicting yourself, since you also said:

  I suggest to follow the lead of (La)TeX and determine begin and end of
  such blocks by blank lines.

In your example, the end of the "P-block" isn't at the blank line. My
comment was on that precise part of your message.

>> Anyway, every back-end has its own interpretation of what a paragraph
>> is. Some back-ends don't even know what a paragraph is. Org cannot fit
>> them all.
>
> That's why Org can't impose its much more restricted paragraph model on 
> backends with different paragraph models.

As I explained, it doesn't impose anything on back-ends: it merely
offers its reasonable view. You can always ignore its definition, as
written just below.

>> On the other hand, as the ox-odt patch somehow demonstrates, it is
>> possible for a back-end to ignore Org paragraph definition and rolls its
>> own. It requires some additional code, but I'm open to discussion about
>> implementing tools in ox.el in order to ease the process.
>
> Yes, and footnotes with paragraphs... Anyway, for me this is the main 
> sticking point with how Org syntax is defined, because it currently 
> implies Org syntax == Backend semantics, which is simply not the case 
> for most if not all backends.

You're stating the obvious. Org syntax is indeed different from back-end
semantics. Otherwise, we wouldn't need export back-ends to do the
transcoding job, would we?

> Working around this in each and every backend doesn't look appealing.

It didn't prevent dedicated people to rewrite almost all previous
back-ends and implement additional ones.

>> In any case, I think we ought to keep raw Org syntax as simple as
>> possible. The current definition of a paragraph is simple enough.
>
> The syntax wouldn't change all that much, except that blank lines would 
> need to be made tokens during parsing.

This is not only about blank lines. Remember your example:

   There is an annotation by the original author here
   #+BEGIN_ANNOTATION
     I never meant to break this paragraph.
   #+END_ANNOTATION
   in the middle of the paragraph.

There is no blank line, and, yet, it should be parsed differently than
it is actually. Therefore, it's not just about blank lines. It's about
allowing indirectly paragraphs within paragraphs.

Do not misunderstand me: I agree that the current paragraph model is
restricted. But remember we're working with plain text which should be
readable as plain text, not with a full-fledged XML-like markup. The
strength of this paragraph definition lies in its simplicity. And I am
impressed about how much is done with such a simple syntax.

IMO, this kind of syntax, i.e. mixing blocks and paragraphs, is just
ugly. It makes it impossible to read property the paragraph and
emphasizes the annotation, which is counter-productive.

A good rule of thumb is that blocks should be used as containers, never
as inlined elements.

Speaking of inlined elements, I repeat that [note:label] within the
paragraph should offer a good markup for annotations.


Regards,

-- 
Nicolas Goaziou

  reply	other threads:[~2013-03-28 14:41 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-21 21:18 [BUG] [ODT] Annotations break paragraphs Christian Moe
2013-03-25  5:59 ` Samuel Wales
2013-03-25 10:29   ` Christian Moe
2013-03-25 10:40     ` Achim Gratz
2013-03-25 15:12 ` Bastien
2013-03-25 16:12   ` Christian Moe
2013-03-25 16:17     ` Bastien
2013-03-25 16:27     ` Achim Gratz
2013-03-25 17:39       ` Christian Moe
2013-03-25 18:54         ` Bastien
2013-03-25 20:26           ` Christian Moe
2013-03-25 17:05     ` Bastien
2013-03-25 17:13       ` Achim Gratz
2013-03-25 20:10         ` Nicolas Goaziou
2013-03-25 21:12           ` Christian Moe
2013-03-25 20:00       ` Christian Moe
2013-03-25 21:56         ` Bastien
2013-03-25 22:15           ` Nicolas Goaziou
2013-03-26  6:28             ` Achim Gratz
2013-03-27 15:48               ` Nicolas Goaziou
2013-03-28  6:24                 ` Achim Gratz
2013-03-28 14:41                   ` Nicolas Goaziou [this message]
2013-03-28 19:12                     ` Achim Gratz
2013-03-28 20:58                     ` Christian Moe
2013-03-28 23:04                       ` Christian Moe
2013-03-26  9:38             ` Christian Moe
2013-03-27 22:33               ` Nicolas Goaziou
2013-03-28  8:40                 ` Christian Moe
2013-03-28  9:46                   ` Christian Moe
2013-03-25 22:36           ` Christian Moe

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=87vc8by4ci.fsf@gmail.com \
    --to=n.goaziou@gmail.com \
    --cc=Stromeko@Nexgo.DE \
    --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).