| Index: lib/src/prism/plugins/remove-initial-line-feed/prism-remove-initial-line-feed.js
|
| diff --git a/lib/src/prism/plugins/remove-initial-line-feed/prism-remove-initial-line-feed.js b/lib/src/prism/plugins/remove-initial-line-feed/prism-remove-initial-line-feed.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..4d9a66933df940ac9ee6c787d9c5f168e6fcdeb5
|
| --- /dev/null
|
| +++ b/lib/src/prism/plugins/remove-initial-line-feed/prism-remove-initial-line-feed.js
|
| @@ -0,0 +1,21 @@
|
| +(function() {
|
| +
|
| +if (typeof self === 'undefined' || !self.Prism || !self.document) {
|
| + return;
|
| +}
|
| +
|
| +Prism.hooks.add('before-highlight', function (env) {
|
| + if (env.code) {
|
| + var pre = env.element.parentNode;
|
| + var clsReg = /\s*\bkeep-initial-line-feed\b\s*/;
|
| + if (
|
| + pre && pre.nodeName.toLowerCase() === 'pre' &&
|
| + // Apply only if nor the <pre> or the <code> have the class
|
| + (!clsReg.test(pre.className) && !clsReg.test(env.element.className))
|
| + ) {
|
| + env.code = env.code.replace(/^(?:\r?\n|\r)/, '');
|
| + }
|
| + }
|
| +});
|
| +
|
| +}());
|
|
|