Optional/mandatory whitespace in ยง5.5 Advanced line types

On Sat, Sep 12, 2020 at 07:46:12PM -0700, Nathan Galt wrote:
> I noticed that the spec has three different advanced line types and 
three different whitespace handling verbiages for each.
> 
> Heading lines: Start with 1?3 ?#?, then optional whitespace.
> List items: Start with ?* ? (note the space!)
> Quote lines: Start with ?>? 
> 
> Shouldn?t these three have the same whitespace rules, with the same phrasing?

I'm inclined to agree.

> Here?s my argument for ?mandatory whitespace for all? ([\t ]+):
> 
> - It lets authors write ?#3. I like eggs.? without accidentally getting 
that line parsed as if it were a heading (we don?t have backslash escapes 
like Markdown does)
> - It?s better for some emoticons that, um, might be out there that start with > or *
> - ?#Steak? looks like a hashtag, and I could see some fraction of 
authors writing ?#blah? _meaning_ for it to be a tag
> - We shouldn?t be worried about backcompat at v0.14.2. I don?t have much 
gemini text, but I?m the sort who would reformat his own non-conformant 
documents to match something like this.

Let's also consider the other way these three cases could have the same
whitespace rules, which is to make that whitespace always optional
rather than always required.

Pros of all-optional whitespace:
- Parsing is one step simpler than requiring at least one whitespace
  character.
- Parsing is compatible with existing Gemtext. (I also think this is not
  that big of a deal, but let's list it.)

Cons:
- At the beginning of an intended plain text line, some common forms of
  expression like "*Foo*", "#Foo", and ">_<" would be interpreted as
  list items, headings, or quotations.

?and that's all I've got. Having thought through it, I think mandatory
whitespace sounds like a better choice.

---

Previous in thread (2 of 6): ๐Ÿ—ฃ๏ธ Alexis (flexibeast (a) gmail.com)

Next in thread (4 of 6): ๐Ÿ—ฃ๏ธ Sandra Snan (sandra.snan (a) idiomdrottning.org)

View entire thread.