If we want a proper solution, one that remains true to the spirit of Markdown, we have to return its basic principle:
The overriding design goal for Markdown’s formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions.
This implies that, from the reader’s perspective, styling of the plain text functions analogously to the corresponding styling of the rich text. Thus while a bold font weight is a good way to highlight words in rich text, wrapping text segments with
** has a similar effect in plain text:
I met **bold** error, may caused by *the usage of
Chinese punctuation is different from English.* Here
are some examples:
But this only works well for for languages like English where words are white-space delimited. It does not work for languages like Chinese for two reasons:
- Words or phrases so marked do no stand out in the plain text:
- We cannot rely on space characters to help determine whether the markup is starting or ending a highlighted segment.
We can address #1 by choosing alternatives to the asterisk
*. Unlike English, for CJK it is a disadvantage not an advantage to limit markup symbols to ASCII. While I would defer to native CJK readers on the actual symbol selection (What do CJK writers naturally use in text messages today?), here is the same using alternate
strong markup symbols:
We can solve #2 by choosing different symbols for opening and closing. So perhaps:
- The new markup symbols would be plain text alternatives to
_. They would still be rendered in bold or italics or whatever
emphasis are mapped to in the output format (e.g. HTML).
- Having separate by visually symmetrical open and close markup symbols eliminates ambiguities that even exist in space delimited languages. Such alternate markup symbols would have universal applicability.
- Symbols could be selected that gracefully degrade under legacy Markdown rendering – for example CJK readers might feel that the above alternate symbols appearing in the rendered rich text still serves the same purpose as, even if not as ideal as, italic/bold rendering.