diff --git a/lib/ace/mode/markdown_highlight_rules.js b/lib/ace/mode/markdown_highlight_rules.js index d3a784f4c62..d532455df26 100644 --- a/lib/ace/mode/markdown_highlight_rules.js +++ b/lib/ace/mode/markdown_highlight_rules.js @@ -35,6 +35,8 @@ var modes = require("../config").$modes; var oop = require("../lib/oop"); var lang = require("../lib/lang"); +var useragent = require("../lib/useragent"); + var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; var HtmlHighlightRules = require("./html_highlight_rules").HtmlHighlightRules; @@ -121,7 +123,8 @@ var MarkdownHighlightRules = function() { }, { include : "basic" }); - + + this.addRules({ "basic" : [{ token : "constant.language.escape", @@ -147,9 +150,9 @@ var MarkdownHighlightRules = function() { token : "string.strong", regex : "([*]{2}|[_]{2}(?=\\S))(.*?\\S[*_]*)(\\1)" }, { // emphasis * _ - token : "string.emphasis", - regex : "([*]|[_](?=\\S))(.*?\\S[*_]*)(\\1)" - }, { // + token : "string.emphasis", + regex : useragent.isIE ? "([*_])[^*_]*\\1(?=\\s|$)" : "(?<=\\s|^)([*_])[^*_]*\\1(?=\\s|$)" + }, { // highlight urls token : ["text", "url", "text"], regex : "(<)("+ "(?:https?|ftp|dict):[^'\">\\s]+"+