nex3
@nex3

Platforms that use Markdown-like syntax for formatting text but aren't actually compatible with Markdown. Gaze with me into the maw of madness:

_foo_*foo***foo**
Markdownitalicitalicbold
Google Chatitalicbold**unstyled**
Facebook Messengeritalicbold*bold & unstyled*
Slackitalicboldbold
Backloggdunderlineitalicbold

These aren't even consistent enough that I can reliably remember "okay I should always use this one particular syntax for italics and that at least will always work". Nothing will always work. Life is suffering. At least Cohost is an island of standards-compliance in an ocean of nightmares.


vogon
@vogon

my original philosophy behind this as someone pushing 40 was that my canonical ASCII renderings of bold, italic, and underline are *bold*, /italic/, and _underline_, which doesn't agree with any other site on the internet, so we might as well at least obey CommonMark


bcj
@bcj

Or rather, it is following a completely different lineage that predates Markdown. Google Chat is copying, among other things, MSN Messenger1 and that is 5 years older than Markdown is. Markdown allowing _italic_ or *italic* feels like it is probably specifically appeasing chat apps using _italic_ even if it favours *italic*.

Underline and italic often traditionally had the same syntactic meaning. In Copy-editing you signal that something should be italicized by underlining it and apparently some publishers still use underline to mean italic pre-typesetting.

John Gruber chose wrong and now we all have to suffer for it2


  1. I'm assuming they took it from ICQ or AIM. And that one of those two got if from an earlier predecessor. I just know MSN did it because I was trying to work out where I picked up that convention just last week.

  2. There is a decent argument to make that in text where underscores may reasonably appear within words (e.g., variables, usernames), having underscore italicize causes too many problem.


NireBryce
@NireBryce

See -- markdown isn't for chat app or even medium-Posting, really. It's for document (and documentation) writing, and it's sort of rough for Posting Ergonomics that aren't the Longpost, and great for Longer Form Stuff -- need to do a table? just make an ascii one, it will format it. Etc.

In terms of underscores and asterisks being interchangeable, it's perhaps a little nonsensical to have * and _ do the same thing, unless you also have underline. There were a few specs that included underline as 3 underscores or asterisks, in the 2010s, I think reddit being the leading one of them.

Then, it becomes clear -- What if you need to have bold, underline, and italics? How do you make that easy to edit for the post-writer? Not having to count characters, and instantly recognizable on a skim of the 'source code'?

You simply would do:

_**___This___**_ or *__***This***__*.  

You could of course do 
_____*this**_____ 
but it's way less readable.

This is also why you need to put two spaces after every linebreak on cohost -- Sometimes you want to split lines in the source, but have them be a combined line in the final post. These are concessions made for ease of re-use and editing and multiple people using the file, not reading/writing themselves.

Is that good? No. Is that bad? Not really. It's just the way things are, and maybe the context helps someone, or at least makes it easy to understand why things are the way they are, and through that, how to work around it.

Mostly CoHost just needs an IDE. No no, hear me out:

Wait why are you leaving.



You must log in to comment.

in reply to @nex3's post:

The glib answer is "because of John Gruber's whims in 2004". If I had to guess what his motivation was, though: semantic HTML was a big cause celebre at that point, and Markdown specifically produced semantic tags like <em> and <strong> rather than <span style>. There isn't a semantic underline tag (probably because the only semantic notion it communicates is "emphasis", which is already covered by <em>). So from the perspective of Markdown as specifically a gloss for HTML, rather than a syntax for expressing text formatting, it does make a degree of sense.

yeah I think you can see remnants of a very early-2000s typography of hypertext in there: there is a single concept of emphasis with three levels (italics = single emphasis; bold = double emphasis; bold-italics = triple emphasis, for emergencies only), and underlines graphically overload hyperlinks so you should avoid them altogether

Semi-related: I HATE chat apps that are like ‘oh you typed a word with *fucking stars* around it? Better do some STYLE.. no I am adding little cute stars for emphasis myself! Drives me crazy when slack does that and has fucking UI buttons right next to the text box. I want the text box to work like a text box and not do magic transformations ever. There is no good reason for a regular ass chat box to use markdown-like magic formatting

in reply to @vogon's post:

im sorry, but as a netizen of the 2000s, *verb* is for RP text. *glomps* not glomps . =text= should be bold, as its a doubling of a line, similar to how bolding was achieved on typewriters (by typing over the same letter more than once). Skeuomorphism!

unrelated, but i love that you grow up thinking "this is how the world has rules" and computers are some of the most rule following places that exist, and then you discover the nature of protocols, and nobody is speaking the same language.

It's easier for me to switch gears to e.g. wiki text because it's so different: ''italics'', '''bold'''. My problem with markdown variants is that they are ''almost'' the same, so it's harder to tell which context I'm in. Every uncommon syntax must be re-learned each time.

And don't get me started on New Reddit vs Classical Reddit.

im young and dont know what ASCII is but i use *bold*, /italic/', and _underline_ all the time because regardless of if its supported or not people instantly know what i meant reading it

edit: how do you do the code quote thing?

in reply to @NireBryce's post:

it's entirely preference, but i'm not a fan of using different numbers of the same symbol to format text, it's hard for me to keep track of visually. i'm too used to _italics_ and *bold* at this point but if i had to come up with a standard myself (ignoring bias from how markdown-ish systems work) i'd prob settle on /italics/ =bold= and _underline_, but im not a standards-maker so *shrugs*

my understanding is a big part of the problem is that the '/' symbol being used would make markdown way harder to parse, because it needs to live beside HTML, and / is the closing tag character.

= too. So what you've got left over, essentially, is 'everything not used commonly by HTML to delineate tags', which leaves you with

*
_
+
-
|
`
.

and some others I'm sure I'm forgetting. Markdown makes a lot more sense when 'it has to be parsed, alongside HTML, in the same document'. For better and for worse.

which is to say yeah i wish we had a chat standard