Markdown table supports a syntax where first columns don’t start with a pipe (and last columns don’t end with one).
This is a valid table
icon | description | content |
-|-|-|
:discourse2: | **Summary** | **Discourse OpenID Connect** allows an OpenID Connect provider to be used as an authentication provider for Discourse.
:hammer_and_wrench: | **Repository Link** | <https://github.com/discourse/discourse-openid-connect>
:open_book: | **Install Guide** | [How to install plugins in Discourse](https://meta.discourse.org/t/install-plugins-in-discourse/19157)
It renders as:
icon | description | content |
---|---|---|
Summary | Discourse OpenID Connect allows an OpenID Connect provider to be used as an authentication provider for Discourse. | |
Repository Link | https://github.com/discourse/discourse-openid-connect | |
Install Guide | How to install plugins in Discourse |
Editing and saving the table (without changing data) with the table builder duplicates every row that doesn’t have a leading pipe:
If headers miss a leading pipe, editing and saving duplicates the header:
If headers and the separator miss a leading pipe, it duplicates the header and the separator:
If all rows but the header miss a leading pipe, editing and saving duplicates everything but the header
gmumsb.cloudfront.net/original/4X/8/6/9/8698915fc6b623d8f1d4495694845016fcace410.mp4
If every row miss a leading pipe, saving the table doesn’t work and generates a JS error:
Cannot read properties of null (reading 'length')
.
The default table from the topic template in plugin didn’t use leading pipes, so I modified it to add the pipes and prevent potential errors.
To sum it up:
-
table rows without leading pipes are valid markdown syntax
-
table builder doesn’t like table rows without leading pipes