Hi!
Another question about my GitHub Markdown bundle (which I’d like to propose become official when it’s good enough).
The underscore handling in GitHub Flavoured Markdown (https://help.github.com/articles/github-flavored-markdown/#multiple-undersco...) basically means I need to disable/override all of the existing underscore handling in the GitHub Markdown bundle. Is that possible somehow?
Thanks!
Mike McQuaid http://mikemcquaid.com
On 11 Jan 2016, at 13:45, Mike McQuaid wrote:
Another question about my GitHub Markdown bundle (which I’d like to propose become official when it’s good enough).
We’ve had a bunch of requests for fenced code blocks, so it would certainly be nice with an “official” GitHub Flavored Markdown bundle.
The underscore handling in GitHub Flavoured Markdown (https://help.github.com/articles/github-flavored-markdown/#multiple-undersco...) basically means I need to disable/override all of the existing underscore handling in the GitHub Markdown bundle. Is that possible somehow?
When you inject using the `L:` prefix then your rules run before the root grammar’s.
So while you can’t disable the rules, you can inject your rules before the default rules, and then match whatever they would match, so that they never see it.
For the underscore handling, one solution could be to make a rule that matches something like this: `_(?=\w)(?<=\w_)` (this regexp will match underscores with word characters on both sides, but not make the word characters part of the actual match).
Name that match something like `meta.interword-underscore.ghf-markdown` and since your injected rule now “eats” the underscore, the default rule will not see it, and should not go into emphasis mode for this interword underscore.