Feedback on parser

Avatar

By Yannick 27 October 2015 18:28

Administrator · 1,456 comments

My god, they keep coming. And this time around, we'll not be talking about some design paradigm. No, I would like to talk about something you CAN'T see. Or at least, you're not supposed to. Todays subject: the parser.

Boards have for a long time been using BBCode. Why? Well, because these things where born in forums - hence the name Bulletin Board Code. However, as everything moves forward, so does BBCode. Right? Right?

Well, nope. And that has a good reason. BBCode on its own is pretty finished. One problem with it, however, that it is not standardized in any way. For example, Luna supports the c-tag, which is short for code, for inline code. This is something you won't find on other board software (the c-tag, not the actual functionality). Except for standardization, there is another major issue with BBCode: it's very simple to make mistakes due to its syntax. Everything has to be closed, if it gets opened and so on.

And that's why I'm currently experimentating with Markdown to replace BBCode as a whole, and I would like, once again, some feedback on that. So, behold, the thread-view showing a comment that is written in Markdown (in fact, it's our Readme.md file put in a Luna-database through a Markdown parser)*:

562fc1f26e4d5-markdownpost.png

So, let's talk parsers.

* Note that the thread view is very broken as it only can display the content of a comment and not even a single bit of meta data about the comment or user that posted it. Also, the new parser would make this sidenote a list. 🙂


You can do anything

Avatar

By Raf 27 October 2015 18:49

Member · 68 comments

Stop teasing us and give is something to work with! is this on github?

and why not just post a full screenshot? with all these pieces we can make a full mockup by now...

Avatar

By kaaleth 27 October 2015 19:03

Member · 83 comments

Why no WYSIWYG?

Avatar

By bem 27 October 2015 19:18

Member · 134 comments

Whilst I don't mind Markdown too much, I think a lot of forum users (not administrators) would like to keep BBCode as it's something that they know and are comfortable with.

To the general web user [b ]bold[/b ] makes more sense than *bold*. Likewise, [i ]Italic[/i ] makes more sense than **Italic**

Using bold and italic together would be awful for general forum users. Markdown can get very confusing, especially when you don't know it and I can't see a lot of people easily learning it.

To me, forums should always be BBCode, or WYSIWYG. BBCode is easy to extend in a way that everyone can easily use and understand, and WYSIWYG is pretty self explanatory for everyone using it. Never Markdown though, as general users just will not be able to get it or like it.

Avatar

By Yannick 27 October 2015 19:46

Administrator · 1,456 comments
Raf wrote

Stop teasing us and give is something to work with! is this on github?

and why not just post a full screenshot? with all these pieces we can make a full mockup by now...

562fd30b39465-Capture.PNG

kaaleth wrote

Why no WYSIWYG?

WYSIWYG is the idea of seeing what you write as it will be displayed but something has to provide the markup for that and that can be either Markdown, BBCode, XML or ... One does not outrule the other.

bem wrote

Whilst I don't mind Markdown too much, I think a lot of forum users (not administrators) would like to keep BBCode as it's something that they know and are comfortable with.

To the general web user [b ]bold[/b ] makes more sense than *bold*. Likewise, [i ]Italic[/i ] makes more sense than **Italic**

Using bold and italic together would be awful for general forum users. Markdown can get very confusing, especially when you don't know it and I can't see a lot of people easily learning it.

To me, forums should always be BBCode, or WYSIWYG. BBCode is easy to extend in a way that everyone can easily use and understand, and WYSIWYG is pretty self explanatory for everyone using it. Never Markdown though, as general users just will not be able to get it or like it.

I know and am also considering this argument. However, I do not think that BBCode is simpeler for users. In English BBCode might make sense, but in many other languages or lettertypes, they don't make sense at all. And as mentioned before, the fact that BBCode is so inconsistent across many implementations is another major issue. Markdown is winning popularity and is being implemented as the main language for many projects.

Further, software like Microsoft Word does support a Markdown-like syntax to automatically make something bold or strike through'ed or underlined or italic or ... and also uses * or - and numbers to automatically create a list, much like Markdown does. It's not that complicated.


You can do anything

Avatar

By bem 27 October 2015 19:56

Member · 134 comments
Yannick wrote

Further, software like Microsoft Word does support a Markdown-like syntax to automatically make something bold or strike through'ed or underlined or italic or ... and also uses * or - and numbers to automatically create a list, much like Markdown does. It's not that complicated.

The list making in Markdown is the only part that actually makes sense to me, as it is a method commonly used for creating lists by users - that is the one part of Markdown that I can agree with. Even on forums when I'm making a list I won't use the BBCode version, I use * or -.

If Markdown was used behind a WYSIWYG editor, then I'd be behind it 100%. Although the update would need to update the whole database, which could be huge, otherwise there'll be loads of BBCode showing in older posts, some from like a day before the update which will just look odd and like the forum isn't working correctly.

Avatar

By Yannick 27 October 2015 20:33

Administrator · 1,456 comments

Well, I'm am considering it. Obviously, the updater of this update will convert older comments from BBCode to Markdown. Another implementation could be that we allow admins to choose which language they would like to use, and perhaps make this only possible to change during installation (for the first versions only, I'm not sure if I'm wanting to put a feature as critical as converting from one language to another just like that in a full release, that will require extensive testing). Just that you know it, we've also experimenting with a shiny new BBCode parser. 🙂 Which, by the way, may be introduced prior to this massive update.


You can do anything

Avatar

By CaerCam 30 October 2015 09:47

Member · 54 comments

I've been thinking about this quite a lot lately. The only issue I see is that BBCode is incredibly extensible − you can put about anything between [ ] and have a custom BBCode; this implies that some forums are probably using custom BBCodes that will be killed off by the switch to Markdown. That's my main issue on my forum, which has at least two dozens of custom BBCodes that need to be ported to Markdown.

Guess the switch will be easy for more simple boards, though. Plus there's a lot of powerful Markdown parsers and WYSIWYG editor out there.

Avatar

By Yannick 30 October 2015 14:18

Administrator · 1,456 comments

For now, I've decided to go with BBCode. Just that you guys know it.


You can do anything

Avatar

By kaaleth 30 October 2015 16:50

Member · 83 comments

Awww, I don't like new last topics list. New sidebar and header looking good.