Open gausie opened 5 years ago
I quickly made the regex ([*])(.*?\S[*]*)([*])|((?<!\S)[_])(.*?\S[_]*)([_](?!\S))
which passes:
_neat_ *start but not*end end but not*start* abso*bloody*lutely i cant *believe* that
but not
snake_case_sucks _start but not_end end but notstart
so that seems right, but I may be missing a case, and it may be inefficient. Note that the current implementation already doesn't detect escaped asterisks and underscores.
According to the commonmark spec:
However, the markdown highlighting mode does treat the second example as emphasised. In fact, in Github I have to escape the first example precisely due to this very common implementation detail.