# What should you have to type to GET a POST with HTTP/1.1?

• Even though we've (mostly) decided on NodeBB, let's have a poll. Just for fun.

[poll type="multiple"]

• Plain text
• (sanitized) HTML
• Markdown
• BBCode
• MediaWiki
• DocBook
• reStructuredText
• Textile
• OpenDocument XML
• OpenXML Document
• PostScript
• PDF
• Unsanitized HTML fragments
• Required speech recognition
[/poll]

• LaTeX looks fun to learn. Also, I like the current hybrid HTML/Markdown/BBCode system because I use what is most familiar to me, even if it can cause bugs...I'd like it if we could carry that over.

• Also, I like the current hybrid HTML/Markdown/BBCode system because I use what is most familiar to me, even if it can cause bugs

Community Server did very little input sanitization, to the point where you could close your post and create signature guy or just fuck up the page.

Discourse does so much input sanitization that you can't post numbered lists.

• Perhaps there's a decent middle ground? I wouldn't really mind either way, I think that signature guy was pretty funny/creative (at least originally, perhaps it would get annoying later) and I think that DiscoBugs that result from hyper-input sanitation are pretty amusing (since they only marginally affect usability).

• Discourse does so much input sanitization that you can't post numbered lists.

No, that's Markdown's fault. The problem isn't that Discourse does too much input "sanitization", it's that Discourse's parser is broken. See: MD5.

My contention is that the reason Discourse's parser is broken is due to the design decision to allow HTML, BBcode, and Markdown all at the same time. It is virtually impossible to get that right, no matter how hard they try.

Simple is better. BBCode, Markdown, or a subset of HTML, I don't care. Just pick one and only one.

• Simple is better. BBCode, Markdown, or a subset of HTML, I don't care. Just pick one and only one.

Agreed and QFT

• My contention is that the reason Discourse's parser is broken is due to the design decision to allow HTML, BBcode, and Markdown all at the same time. It is virtually impossible to get that right, no matter how hard they try.

But, I mean, does it really impact the user?

Honestly, while _*<a a** is pretty funnyis pretty funn is pretty funny I don't really know how many times I needed to actually type **_*\**<a a** before.

• LaTeX looks fun to learn.

It is, in fact, not. I learned the basics of it back in the 80s and have never used it since. (My college had a DOS text editor they wrote that used either tex or latex. So maybe I learned tex. Regardless, my first sentence stands.)

• Discourse does so much input sanitization

Yeah, now.

• My contention is that the reason Discourse's parser is broken is due to the design decision to allow HTML, BBcode, and Markdown all at the same time. It is virtually impossible to get that right, no matter how hard they tryusing regex.

Certainly mixing multiple markup languages makes it significantly hardermore difficult and provides many more opportunities for bugs. However, I think the design decision to try to do this using regex rather than a real parser is nearly as big, if not bigger, a reason for their failure.

Simple is better. BBCode, Markdown, or a subset of HTML, I don't care. Just pick one and only one.
However, if you choose Markdown, you must either restrict posts to the very limited formatting that Markdown provides, or add a second markup language. The original definition (not really a spec) of Markdown explicitly says to use HTML for any complex formatting, although I don't see why BBCode wouldn't work just as well (and be safer).

Or you could just have a WYSIWYG post editor that actually works, and what markup it sends to the server is an implementation detail that need not concern the users (although the server still has to parse it properly and sanitize it, of course, because untrusted client).

• BBCode is well explored, and has the advantage over HTML that constructs which are common in forums can be written more compactly. Markdown is a nice idea, but I think it is probably fundamentally too poor, requiring adding in a second language for any complex features.

I'm thinking some of the aforementioned parsing problems, especially mismatched tags for blocks like [quote], should be flagged by the parser on post, since they can never be handled correctly in all cases and the user can probably fix the problem if made aware of it.

A good WYSIWYG editor is a nice idea, but I have not yet seen one. Feel free to make it the default but offer the ability to edit raw instead.

• Feel free to make it the default but offer the ability to edit raw instead.

And remember the choice.

• None of those.

It should be WYSIWYG. You know, like fucking Community Server had correct and working in fucking 2008.

If you MUST use some form of markup, HTML is the obvious choice.

• Simple is better. BBCode, Markdown, or a subset of HTML, I don't care. Just pick one and only one.

You can't even fucking UNDERLINE TEXT with Markdown. It's fucking useless. (And if you type the obvious punctuation to underline, _test_, you inexplicably end up with italics. Huh? Who the fuck came up with this broken shit?)

The version here doesn't allow underlines, creating tables, any sensible types of lists (or nesting lists, IIRC), no meta-data on images (for example, resizing them-- you have to use HTML tags for that), no built-in support for spoilers (you have to use HTML, and also hope the browser implements it), etc.

Markdown's just pure weaksauce. Even if I agreed with the concept of it, I'd disagree with the fact that it doesn't have any goddamned FEATURES!

• Hey, where's Rich Text Format? Does no one remember RTF?

• or nesting lists, IIRC

• you
• may
• have
• recalled
• incorrectly

LaTeX looks fun to learn.

Sure, give it a try. I also heard PostScript to be all cool.

• Ok
1. Well
2. I guess I did
• aha there's the bug so nevermind

Point is, it's weaksauce.

I also remember it's difficult to the point of impossibility to figure out how to put content in a list that needs to be tabbed to the same depth of the list. There's no generic "indent a level" function that doesn't also turn the text into like preformatted code or some shit. (EDIT: wait maybe they've fixed that? Well whatever.)

1. This is a list containing two

paragraphs, but the second paragraph can't be tabbed to the same indent as the first

2. Fuck Discourse.

Oh I see. Hahaha.

If your LI contains a second paragraph, and you don't leave an extra space at the end of it, the next LI is considered a brand new list numbered at one. (And the second paragraph is considered preformatted.)

1. This is a list containing two

paragraphs, but the second paragraph can't be tabbed to the same indent as the first

2. Fuck Discourse.

If your LI contains a second paragraph, and you do leave an extra space at the end of it, the next LI is considered part of the previous list and numbered correctly.

Love it. So intuitive. That's what Markdown is supposed to be, right? Intuitive?

Look, this kind of bullshit ONLY happens on Markdown. Fuck it.

• * Ok

1. Well
2. I guess I did
* aha there's the bug so nevermind


Point is, it's weaksauce.

,

• PostScript

I actually do know a little PS because I think it's kind of interesting to talk to printers on such a low level. I certainly wouldn't want to use it for this, obviously.

• Markdown is what causes most of the situations, I think. BBcode + sanitized HTML for anything complex is really the way to go.

A good WYSIWYG editor would be nice, too, but not absolutely necessary. And if there is one, it needs to not inject shitty garbage HTML like most generators seem to do, and allow you to fall back to raw mode to edit it if necessary.

• and allow you to fall back to raw mode to edit it if necessary

Not doing the sanitization client-side would be a plus.

• And if there is one, it needs to not inject shitty garbage HTML like most generators seem to do,

Why? Who cares if the thing you NEVER NEED TO EVER LOOK AT is "garbage" or not, as long as it displays correctly?

The actual HTML is implementation-detail. Who cares what it looks like?

• I care because the WYSIWYG editor isn't likely to support really complex editing and I'll eventually need to edit the HTML in raw mode. And I don't want to be untangling a crock of shit when I do.

• the WYSIWYG editor isn't likely to support really complex editing

I'm inclined to say that if you need markup that complex on a Belgium forum, you're probably . Yeah, we're not a typical forum, but even here, do we ever really need formatting that complex (unless we're intentionally trying to break something)?

• do we ever really need formatting that complex

lets see...

• paragraphs
• italic
• bold
• images

... that's all i can see us needing add is some nice to haves like lists and maybe a limited size options and i think we're good to go.

Markdown would actually work fairly well for that if we picked an implemetation that doesn't shit on list numbering (okay, yes the spec says that it should. the spec is WRONG)

failing that BBCode or HTML (with a WYSIWYG editor and proper server side sanitization) would also work.

• I care because the WYSIWYG editor isn't likely to support really complex editing

It couldn't possibly be LESS powerful than Markdown.

• Setting image sizes as plain numbers without trying to use some funky resizer with the mouse... CSS... (did I mention that "sanitized HTML" should include sanitized CSS?)

• You should just type apt install phpbb

• that's all i can see us needing add is some nice to haves like lists and maybe a limited size options and i think we're good to go.

• Monospace for code (block and inline); syntax highlighting (that actually works right) is nice-to-have
• Quote formatting that is visually distinct from new text (but doesn't reformat the quoted content); ability to intentionally misquote optional

\usepackage{discourse}
\begin{document}

\section*{Re: What should you have to type to get a post with formatting?}

Why not \Latex and DiscomarkdownBBCode?

_*)**

\end{document}

• Honestly, I like @tar's forum where you choose.

Per
Post

Because why tf would you need to combine formatting in a post? Honestly now...

• it's kind of interesting to talk to printers

Disagree.

• @rc4 said:
it's kind of interesting to talk to printers

Disagree.

My mom came from a family of printers, and they were all interesting to talk to. Well, two of them were, at least; my great-grandfather died while I was still a baby, so I never really got a chance to talk to him, but from the stories I've heard and writings I've read, I'm sure he was, too.

• @rc4 said:
it's kind of interesting to talk to printers

Disagree.

+1

All my printer says is "RRRRsh RRRsh RRRsh"

That, and "Cyan Cartridge Low"

• @accalia said:
that's all i can see us needing add is some nice to haves like lists and maybe a limited size options and i think we're good to go.

• Monospace for code (block and inline); syntax highlighting (that actually works right) is nice-to-have
• Quote formatting that is visually distinct from new text (but doesn't reformat the quoted content); ability to intentionally misquote optional

i'll add those to the lists of nices to have.

• i'll add those to the lists of nices to have.

For an IT forum, code blocks that preserve the code's formatting is, I would say, so close to being a need as to make no difference. Even inline <code>-like formatting for code is more that just nice.

If you hadn't noticed, we use (and abuse) quotations a lot around here. Maybe it's not a need, strictly speaking, but not having the ability to easily quote at least the post you're directly replying to and having it be formatted in some way as a quotation would definitely be a disruptive change to the community. I might even rank that above bold and italic in importance.

• It is, in fact, not.

Agree to disagree… I use it at work where I have Perl (gasp!) scripts that data mine our Oracle based ERP and produce very pretty PDF reports for management and financial reporting. I even have a service running where people can email text files and "Jeeves" (via Perl) responds with nice PDF versions of their file.

BTW, since TEX / LaTEX is Turing Complete, you can do λ-calculus in it.

With tcolorbox and siunitx (for numeric formatting) you can even do some very nice invoices etc...

• For an IT forum, code blocks that preserve the code's formatting is, I would say, so close to being a need as to make no difference. Even inline <code>-like formatting for code is more that just nice.

Anything more than IRC provides is a nice to have if you ask me.

• Strike through for FTFY

• Strike through for FTFY

<s> and <strike> are bad. Use <del> instead.

• striking is a better fit for this forum.

• PC LOAD LETTER? What the fuck does that mean?!

• But, I mean, does it really impact the user?

Honestly, while 9dae361af79b04c9c8e7057f60cc6 is pretty funny I don't really know how many times I needed to actually type ***<a a** before.

I'd like to inform you that the original bug was found by me trying to do a very typical and totally sane thing of making a text that starts with an asterisk both bold and italic. And it didn't just turn into MD5 - it also ate the whole next sentence!

• It should be WYSIWYG. [...]

If you MUST use some form of markup, HTML is the obvious choice.

This 100%. Shoved a WYSIWYG editor on web pages before and it's ludicrously easy when store it all as HTML.

• original bug was found by me

?

And it didn't just turn into MD5 - it also ate the whole next sentence!

View my raw.

• View my raw.

FTFY

• @Lorne_Kates said:

"Cyan Cartridge Low"

It's always the Cyan one ... The Yellow one is always High ...

• The Yellow one is always High ...

• Certainly not {\i all} of it.

Looks like your connection to What the Daily WTF? was lost, please wait while we try to reconnect.