You are reading content from Scuttlebutt
@Christian Bundy %8fnvgls5yEtz8Uzoj7jMfDynPwW0KL1FTEHoQ0AtNzs=.sha256
Re: %VG8tIpqII

Hey @cel, thanks for pinging me on this and bringing up this regression. It's a bummer that Markdown has suffered from fragmentation, but you and all make a great point that we should support the author's intention whenever possible.

Do we have any sort of count for how many messages were written in Markdown versus GFM? For example, I've always been under the impression that our messages were written in Markdown, so that's what I've written. The Daring Fireball spec is very specific about newlines, so I've followed that and ignored the message preview, but I understand that others have probably treated the message preview as canonical.

I feel a bit down that my posts written in Markdown will be go back to being renderered in GFM, but I think it's best to cater to folks who have used the message preview as canon. My intuition is that anyone geeky enough to ignore the message preview and think "that's a bug" is probably technical enough to [eventually] edit their old posts to specify that they aren't GFM, and I may be the only one.

I'm not completely clear which parts of this should be handled in ssb-markdown and which should be handled in the client, but I think the ideal forward could look something like:

  • Switch back to GitHub-flavored newlines for posts that don't specify a media type.
  • Agree on how to specify media types and variants (see RFC 7764 identifiers)
  • Add Markdown metadata when posting Markdown content (e.g. { type: 'text/markdown', variant: 'GFM' })
  • Support both GFM and CommonMark variants in ssb-markdown.

Currently we're only passing the message content to ssb-markdown, so the "which Markdown renderer do I use" would have to be handled by the client, which isn't easy or fun for anyone. I hate to say it, but at this point it seems like it would be simpler to just take user input as Markdown, render to HTML, and post that to the feed rather than assume that the clients can handle Markdown variants like GFM.

Another less-complex alternative would be to drop Markdown/CommonMark support and just use GFM across the board, but I'll admit that I'm not super excited to drop the standard in favor of GitHub's implementation. Anyway, what do you all think?

Join Scuttlebutt now