Open pbackus opened 3 years ago
Hi! Thanks for filing this, and especially for the list of examples. I already had a plan to address this issue but forgot to implement it :)
On the D forums, it is exacerbated by the fact that posts cannot be edited, which means that the mangled formatting can never be fixed.
I will implement an edit window at some point, but for now, we have a better tool at our disposal for such problems - lint rules. Here is an implementation of one which checks for this circumstance:
https://github.com/CyberShadow/DFeed/commit/64b24d09d0e1af74de36ded09c73c8e7d82fd6d9
It's currently live on https://beta.forum.dlang.org/ .
In general, I expect that there will be a period of time for people to get used to the introduction of Markdown formatting, after which we will see less misformatted posts.
The lint rule looks good, although it is more of a mitigation than a fix.
In general, I expect that there will be a period of time for people to get used to the introduction of Markdown formatting, after which we will see less misformatted posts.
I don't share your optimism. This kind of mistake is made regularly on forums that have had Markdown formatting for many years, mostly by new users who have not had time to get used to the formatting conventions.
The lint rule looks good, although it is more of a mitigation than a fix.
Thinking about this some more, I think I agree with you.
If the user doesn't know what Markdown is and what it does, then they'll probably leave the checkbox off. Those who will take advantage of it will know to turn it on.
So, maybe something like the following:
false
.
true
.false
.I deployed the lint rule to forum.dlang.org.
Is there a reason the setting needs to be hidden? Giving it a checkbox on the Settings page would be much better for transparency and discoverability.
In replies, default checkbox state continues to be same as parent (to avoid mangling formatting in quoted text).
This is still going to lead to new users mangling code by accident. The checkbox should always be unchecked unless the user actively opts in to using Markdown.
Is there a reason the setting needs to be hidden? Giving it a checkbox on the Settings page would be much better for transparency and discoverability.
Because it would be 100% redundant. Any way this goes, the user will be presented with the choice to change the (hidden or not) setting before they submit a post.
This is still going to lead to new users mangling code by accident. The checkbox should always be unchecked unless the user actively opts in to using Markdown.
Hmm, I suspect you're right once again. I was thinking about posts which are much more readable after rendering than before (e.g. when using tables but not aligning the columns horizontally), but for those cases we can always add more lint rules + fixers, as it's something we want anyway, i.e. ensure posts are readable by user agents which cannot render Markdown.
In any case, I suggest that before further changes we observe how things progress with the lint rule added today in place.
That one's not even indented correctly in the source.
I got a false positive from the lint rule on this post: https://forum.dlang.org/post/xvdwkjhgnihjwqrcwuig@forum.dlang.org
Thanks!
Several recent examples from the Learn forum:
This is a well-known problem that affects any programming forum that uses Markdown (e.g., reddit). On the D forums, it is exacerbated by the fact that posts cannot be edited, which means that the mangled formatting can never be fixed.
The solution is to never enable Markdown formatting by default—not even in replies to Markdown-formatted messages. While this will sometimes result in loss of correct Markdown formatting, Markdown is designed to gracefully degrade when viewed as plain text, so the loss should not render any messages unreadable.