From 36061fbb07b6d8bde2ecf00734a122b72931471a Mon Sep 17 00:00:00 2001 From: iarkhanhelsky Date: Thu, 27 Oct 2016 21:55:01 +0300 Subject: [PATCH 1/2] If affected element has `firstLineNumber` attribute will use it to shift line numbers. --- src/highlightjs-line-numbers.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/highlightjs-line-numbers.js b/src/highlightjs-line-numbers.js index f68f8f2..b0bf980 100644 --- a/src/highlightjs-line-numbers.js +++ b/src/highlightjs-line-numbers.js @@ -34,12 +34,18 @@ if (typeof element !== 'object') return; var parent = element.parentNode; + // if have 'firstLineNumber' attribute and it's a positive nubmer + // start line numbering from its value. + var startFrom = element.getAttribute('firstLineNumber'); + // if startFrom is 'null' regex test will return 'false' + startFrom = (/^\d+$/.test(startFrom)) ? parseInt(startFrom) : 0; var lines = getCountLines(parent.textContent); if (lines > 1) { var l = ''; for (var i = 0; i < lines; i++) { - l += (i + 1) + '\n'; + // shifting line number as it was numbered starting from 'startFrom' + l += (startFrom + i + 1) + '\n'; } var linesPanel = document.createElement('code'); @@ -64,4 +70,4 @@ return lines; } -}(window)); \ No newline at end of file +}(window)); From 114d9818ef8a96d9b89da01f665589f3cf12b873 Mon Sep 17 00:00:00 2001 From: iarkhanhelsky Date: Thu, 27 Oct 2016 22:03:37 +0300 Subject: [PATCH 2/2] Converted spaces to tabs --- src/highlightjs-line-numbers.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/highlightjs-line-numbers.js b/src/highlightjs-line-numbers.js index b0bf980..a48e928 100644 --- a/src/highlightjs-line-numbers.js +++ b/src/highlightjs-line-numbers.js @@ -34,17 +34,17 @@ if (typeof element !== 'object') return; var parent = element.parentNode; - // if have 'firstLineNumber' attribute and it's a positive nubmer - // start line numbering from its value. - var startFrom = element.getAttribute('firstLineNumber'); - // if startFrom is 'null' regex test will return 'false' - startFrom = (/^\d+$/.test(startFrom)) ? parseInt(startFrom) : 0; + // if have 'firstLineNumber' attribute and it's a positive nubmer + // start line numbering from its value. + var startFrom = element.getAttribute('firstLineNumber'); + // if startFrom is 'null' regex test will return 'false' + startFrom = (/^\d+$/.test(startFrom)) ? parseInt(startFrom) : 0; var lines = getCountLines(parent.textContent); if (lines > 1) { var l = ''; for (var i = 0; i < lines; i++) { - // shifting line number as it was numbered starting from 'startFrom' + // shifting line number as it was numbered starting from 'startFrom' l += (startFrom + i + 1) + '\n'; }