Sha256: ff322c0caf88fcccb03c196d4b4faa6e367494a2b53fca612d64aea6076734df
Contents?: true
Size: 1.13 KB
Versions: 6
Compression:
Stored size: 1.13 KB
Contents
Prism.hooks.add('after-highlight', function (env) { // works only for <code> wrapped inside <pre> (not inline) var pre = env.element.parentNode; var clsReg = /\s*\bline-numbers\b\s*/; if ( !pre || !/pre/i.test(pre.nodeName) || // Abort only if nor the <pre> nor the <code> have the class (!clsReg.test(pre.className) && !clsReg.test(env.element.className)) ) { return; } if (clsReg.test(env.element.className)) { // Remove the class "line-numbers" from the <code> env.element.className = env.element.className.replace(clsReg, ''); } if (!clsReg.test(pre.className)) { // Add the class "line-numbers" to the <pre> pre.className += ' line-numbers'; } var linesNum = (1 + env.code.split('\n').length); var lineNumbersWrapper; var lines = new Array(linesNum); lines = lines.join('<span></span>'); lineNumbersWrapper = document.createElement('span'); lineNumbersWrapper.className = 'line-numbers-rows'; lineNumbersWrapper.innerHTML = lines; if (pre.hasAttribute('data-start')) { pre.style.counterReset = 'linenumber ' + (parseInt(pre.getAttribute('data-start'), 10) - 1); } env.element.appendChild(lineNumbersWrapper); });
Version data entries
6 entries across 6 versions & 2 rubygems