diff --git a/lib/markdown/highlight.js b/lib/markdown/highlight.js index ddb999a47a..8505fc6285 100644 --- a/lib/markdown/highlight.js +++ b/lib/markdown/highlight.js @@ -1,11 +1,15 @@ const chalk = require('chalk') const prism = require('prismjs') const loadLanguages = require('prismjs/components/index') +const escapeHtml = require('escape-html') // required to make embedded highlighting work... loadLanguages(['markup', 'css', 'javascript']) function wrap (code, lang) { + if (lang === 'text') { + code = escapeHtml(code) + } return `
${code}
`
}
diff --git a/package.json b/package.json
index fc199cecc6..7a988b43cb 100644
--- a/package.json
+++ b/package.json
@@ -51,6 +51,7 @@
"copy-webpack-plugin": "^4.5.1",
"css-loader": "^0.28.11",
"es6-promise": "^4.2.4",
+ "escape-html": "^1.0.3",
"file-loader": "^1.1.11",
"globby": "^8.0.1",
"html-webpack-plugin": "^3.2.0",
diff --git a/yarn.lock b/yarn.lock
index 4ba91a7de7..15442de3ef 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1578,7 +1578,7 @@ es6-promise@^4.2.4:
version "4.2.4"
resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.4.tgz#dc4221c2b16518760bd8c39a52d8f356fc00ed29"
-escape-html@~1.0.1:
+escape-html@^1.0.3, escape-html@~1.0.1:
version "1.0.3"
resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988"