The Relentless March of Markdown
This is a modal window.
The media could not be loaded, either because the server or network failed or because the format is not supported.
Formal Metadata
Title |
| |
Subtitle |
| |
Title of Series | ||
Number of Parts | 542 | |
Author | ||
License | CC Attribution 2.0 Belgium: You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor. | |
Identifiers | 10.5446/61708 (DOI) | |
Publisher | ||
Release Date | ||
Language |
Content Metadata
Subject Area | ||
Genre | ||
Abstract |
|
FOSDEM 2023520 / 542
2
5
10
14
15
16
22
24
27
29
31
36
43
48
56
63
74
78
83
87
89
95
96
99
104
106
107
117
119
121
122
125
126
128
130
132
134
135
136
141
143
146
148
152
155
157
159
161
165
166
168
170
173
176
180
181
185
191
194
196
197
198
199
206
207
209
210
211
212
216
219
220
227
228
229
231
232
233
236
250
252
256
258
260
263
264
267
271
273
275
276
278
282
286
292
293
298
299
300
302
312
316
321
322
324
339
341
342
343
344
351
352
354
355
356
357
359
369
370
372
373
376
378
379
380
382
383
387
390
394
395
401
405
406
410
411
413
415
416
421
426
430
437
438
440
441
443
444
445
446
448
449
450
451
458
464
468
472
475
476
479
481
493
494
498
499
502
509
513
516
517
520
522
524
525
531
534
535
537
538
541
00:00
Collaborative softwareWikiContent management systemSoftware developerMarkup languageSocial classFinitary relationRight angleInclusion mapStandard deviationPersonal digital assistantDivergenceDefault (computer science)Instance (computer science)Function (mathematics)Link (knot theory)Projective planeWikiStack (abstract data type)Multiplication signQuicksortHypermediaStandard deviationPoisson-KlammerSuite (music)Square numberDifferent (Kate Ryan album)Demo (music)BitMathematicsText editorPlug-in (computing)CodeElectronic mailing listDefault (computer science)Scripting languageClient (computing)Point (geometry)FacebookSoftwareComputer iconCodeSoftware developerComputer animation
07:43
Local GroupCollaborative softwareWikiSoftware developerFormal languageProcess (computing)Read-only memoryData conversionBitQuicksortLibrary (computing)Cartesian coordinate systemResultantPhysical systemTable (information)Core dumpElectronic mailing listComputer virusRevision controlImplementationInterface (computing)Musical ensembleLatent heatComputer iconLink (knot theory)Web pageMereologyAlpha (investment)Computer animation
15:21
Electronic meeting systemLocal GroupComputer animationProgram flowchart
Transcript: English(auto-generated)
00:12
Okay. Hello, I'm Johnny Bradley.
00:28
I work on the Tiki project as a developer and have done for about 20 years, I think. But I'm not going to do the usual, this is the new stuff in Tiki 25 talk because there's a lot of it,
00:43
and I thought I would concentrate on something more collaborative. So this is about markdown. I'm assuming everyone knows what markdown is and uses it. If not, we can work it out afterwards.
01:03
Yeah, it's a microphone, but only for online people. Yeah, sorry, I'll try and project. In the old days, we had BB code starting off, which was like HTML with square brackets and the media wiki obviously everywhere.
01:23
Then I found Tiki had its own syntax. It uses little quote marks instead of asterisks, that kind of thing. And each time you change to a different platform, you have to look up in the cheat sheets, how do I do underline, is it underscores, is it asterisks, whatever.
01:41
And more and more in the last few years, we've been finding markdown has appeared. More and more, mainly from GitHub and GitLab. And the best thing would be if there was just one, one syntax to rule them all. And in the very olden days, early noughties,
02:04
there was a project called WikiCreole, which XWiki, TikiWiki was nearly involved with. We didn't implement it, but XWiki, I believe, did. Right, it's still there. Okay, cool.
02:21
TiddlyWiki, which I always liked the name. XWiki, lots of other friends. But the project stalled, it didn't quite make it. I think apparently because media wiki just had too much stuff that they couldn't migrate to a different syntax.
02:41
So it'll ground to a halt. There was about the same time, there was the PHP pair. Classes, which you could do an interchange with, yeah, WikiCreole to MediaWiki to Tiki. We still use that even though it's not supported anymore.
03:01
Oh yeah, so we need another standard. And Jean-Marc insisted that I should put this cartoon in. Wasn't in the original script. So let's have one more standard. Here comes Markdown.
03:20
And this was the reason for the title of this talk, is I just had this idea of Markdown taking over the world. A bit like Godzilla destroying a city. Markdown was started in 2004. It was basically a Perl script, I believe.
03:43
And over the years, more and more people implemented different versions of it. And it became a bunch of different standards. So then CommonMark project was initiated about 10 years ago. And that seemed to be the best of breed.
04:03
It's a Creative Commons definition of how it should work with a test suite. And basically that seems to be the standard adopted by most people. But obviously it doesn't do everything.
04:20
So many people extended it, mainly GitHub. So GitHub flavored Markdown seems to be the generic standard for most places. And that is now used by GitHub, GitLab, Stack Overflow, People Without Logos, Nextcloud, we just heard.
04:42
Were there early on. Discord icon broken, Bugzilla. And now even the proprietary softwares like Facebook and WhatsApp, Telegram, Signal, and so on are using it. And so we thought Tiki should use it as well. So in Tiki 25, we've adopted Markdown.
05:03
We've always had our own syntax. So that carries on working. And now its default is off, but you can enable it. And it's a little bit alpha, but improving. And the next release, hopefully it will become the default syntax.
05:20
And then at some point in the future, Tiki syntax will become read only and will be Markdown like the rest of the world, we assume. And of course we need our own flavor of it. One thing was a little surprise to me that you can't do centered text in Markdown. That is outside of the scope of it.
05:41
But all our clients will want to do centered text. So we use, misleadingly in Tiki, these are called plugins, but you don't have to plug them in. They're just in there. They're more like WordPress short codes, I guess. So yeah, you want to center something, you want to do it in a box, formatting tools,
06:02
user lists and so on. I think there's about 250 plugins in Tiki. Which will carry on working, but in Markdown scope. We also use CK Editor for our existing WYSIWYG offering.
06:24
We decided to review that, partly because the licensing changes of CK Editor, five or six is it, seems to be a little more challenging. So we went for Toast UI, which is a native Markdown WYSIWYG editor.
06:43
Seems very promising. Again, 25.0, it's a little alpha, but does the job. That's about it. I'm really under time, aren't I? So yeah, you can find out more about our Markdown there.
07:02
Tiki 25, which I could go on to, we have a lot of new stuff in there. You can play with it on demo.tiki.org and a recap of everything on our Wiki page. I just wanted to say thanks to Mark Laporte,
07:21
who was a Tiki leader for a long time and is still looking after us and he's sort of spearheaded this initiative. Victor, who did a lot of the backend coding. Moba group, who initiated the whole thing
07:42
because they wanted better WYSIWYG. And some mysterious third anonymous benefactor. That's about it. Are there any questions?
08:04
So Mark Laporte said that you are most welcome. And we have, I believe, 16 minutes for questions. 16 minutes, yeah. I should have done more slides.
08:20
Yes. I was just wondering, can you translate from one Tiki supported language into Markdown itself? Yes, yep. We have, yeah. So the question was, can we convert from Tiki Markdown into Markdown, Tiki syntax into Markdown and back again?
08:41
Yes, we can. The more you do it, the more the page will go weird because there are some things that are supported in different ways in the different languages. But yeah, each Wiki page has a little cog icon. You get a little dialogue saying, do you want it in WYSIWYG or plain editor? And do you want it in Tiki or Markdown syntax?
09:02
And it's surprising, we weren't expecting that for Tiki 25. We're quite pleased that's working already. Again, that will improve. Yes, sir. I looked at common Mark specification and basically lacks things which are used
09:22
from PHP Markdown extra like tables, definition list. Is there any current Markdown which implements those? Yes, GitHub flavored Markdown. Sorry, yeah, repeat the question, repeat the question. So specifically you're asking about tables
09:43
and other features, whether those are supported in Markdown, they're not in the core common Mark specification, but GitHub flavored Markdown adds tables and a bunch of other things.
10:02
There's some things that GitHub do like references to other commits and pull requests and so on, we don't use. Again, Tiki flavored Markdown has our plugin system. So there's another 250. So you can do search results. You can build quite complicated applications.
10:23
We're still working out what's missing. So I guess we'll get feedback over the next few months as to what people want to do and still can't. Yes, please go. First one remark, if people are interested, we have a converter in XUIKI.
10:40
XUIKI rendering supports many, many syntaxes and is able to convert from one to another, including from HTML. So if you can convert something to HTML, you could actually convert it to any of the syntaxes that XUIKI rendering supports, including Markdown, Common Markdown, GitLab 3.0, and many other, like Tiki, et cetera. And I have a question on the,
11:02
did you have a problem for the WYSIWYG with the allowance to do inline HTML in Markdown to make WYSIWYG go back and forth to come back to the Markdown syntax? Yes, in the alpha, sorry, yeah. Did we have a problem
11:20
converting from one syntax to the other where you get little stray bits of HTML creeping into the WYSIWYG markup, which we obviously sanitize afterwards? I think we've nailed all those, yes. There were some challenges with that in the alpha stages, and I kept on finding that a bold Markdown tag
11:43
would then suddenly appear as little HTML bold tags. Part of that, I think, is Toast does some of that. Again, it's the initial release, and it's still marked as experimental, so yeah.
12:00
I found, I don't know, yeah, I found Toast community to be a little bit sort of read-only. I haven't found much of a chat. If anyone knows where to talk to the Toast developers better, then I would like to do that, and I did the Toast implementation.
12:20
But yes, it's something we're watching out for. Yes, Shammat. The nice thing with CommonMap is that there is a advert, a public specification with this and all that, which is great stuff.
12:41
Is that living? Is it possible that there will be a version two? Because we can't believe there's only people wanting to add older cases and things. Yeah, the question was, is there gonna be a CommonMark version two?
13:01
I don't know. Anyone else got any ideas? It seems to be, it's designed to be very complete, and it's designed to be very simple, so possibly not. I guess we have to wait and see. As an aside, I found out that MIDI, you know, the music interface system,
13:22
that is still version 1.0, and that started in the 80s, so maybe it doesn't need upgrading. Hello.
13:43
There's an HTML from Markdown, basically from Markdown. I was wondering if you have any advice on how to go about it, what tools you can find yourself. Depends which language you're writing it in. Oh yeah. Sorry. Yeah. Are there any tools and libraries you're asking
14:04
to convert Markdown to HTML? Yes, there's a lot. We're using the PHP League, CommonMark, because we're PHP application, which does most of the Markdown to HTML conversion,
14:21
and I believe the HTML back to Markdown, because again, we go via HTML when we're doing conversion process. Which language are you in? I think we're better. They're bound to be, surely. I don't know the Python world that well,
14:44
so I'm guessing there'd be a link on, probably on the CommonMark website, commonmark.org. Should have a list of all of the libraries and implementations. That's excellent. That's all.
15:01
Okay. So, spend the rest of the half hour as you wish. Unless there's any more questions, I'll leave it to it. Thank you. Thank you.