diff --git a/pagure/static/vendor/highlightjs-line-numbers/INFO b/pagure/static/vendor/highlightjs-line-numbers/INFO index 5828028..0835a91 100644 --- a/pagure/static/vendor/highlightjs-line-numbers/INFO +++ b/pagure/static/vendor/highlightjs-line-numbers/INFO @@ -6,4 +6,4 @@ Downstream repo: https://pagure.io/pagure-highlightjs-line-numbers.js It adds some additional classes and links on the line numbers to get some stuff in Pagure working and disables inline style tag injection to avoid CSP errors -This files version comes from this commit: https://pagure.io/pagure-highlightjs-line-numbers.js/c/28702694fea765b90c53690db63b545b2aa0d8b0 +This files version comes from this commit: https://pagure.io/pagure-highlightjs-line-numbers.js/c/8670cf96d705da31343133785630c2fea7faed67 diff --git a/pagure/static/vendor/highlightjs-line-numbers/highlightjs-line-numbers.min.js b/pagure/static/vendor/highlightjs-line-numbers/highlightjs-line-numbers.min.js index cf5c61f..19b3323 100644 --- a/pagure/static/vendor/highlightjs-line-numbers/highlightjs-line-numbers.min.js +++ b/pagure/static/vendor/highlightjs-line-numbers/highlightjs-line-numbers.min.js @@ -1 +1 @@ -!function(n,t){"use strict";function e(e){"interactive"===t.readyState||"complete"===t.readyState?r(e):n.addEventListener("DOMContentLoaded",function(){r(e)})}function r(e){try{var r=t.querySelectorAll("code.hljs");for(var l in r)r.hasOwnProperty(l)&&i(r[l],e)}catch(o){n.console.error("LineNumbers error: ",o)}}function i(n,t){if("object"==typeof n){t=t||{singleLine:!1};var e=t.singleLine?0:1;h(function(){o(n),n.innerHTML=l(n.innerHTML,e)})}}function l(n,t){var e=a(n);if(""===e[e.length-1].trim()&&e.pop(),e.length>t){for(var r="",i=0,l=e.length;i
{6}
',[v,f,m,p,g,i+1,e[i].length>0?e[i]:" "]);return u('{1}
',[d,r])}return n}function o(n){var t=n.childNodes;for(var e in t)if(t.hasOwnProperty(e)){var r=t[e];c(r.textContent)>0&&(r.childNodes.length>0?o(r):s(r.parentNode))}}function s(n){var t=n.className;if(/hljs-/.test(t)){for(var e=a(n.innerHTML),r=0,i="";r0?e[r]:" ";i+=u('{1}\n',[t,l])}n.innerHTML=i.trim()}}function a(n){return 0===n.length?[]:n.split(j)}function c(n){return(n.trim().match(j)||[]).length}function h(t){n.setTimeout(t,0)}function u(n,t){return n.replace(/\{(\d+)\}/g,function(n,e){return t[e]?t[e]:n})}var d="hljs-ln",f="hljs-ln-line notblue text-muted",g="hljs-ln-code pl-2",v="hljs-ln-numbers bg-light text-right pr-2 pl-2 border-right mr-3",m="hljs-ln-n",p="data-line-number",j=/\r\n|\r|\n/g;n.hljs?(n.hljs.initLineNumbersOnLoad=e,n.hljs.lineNumbersBlock=i):n.console.error("highlight.js not detected!")}(window,document); \ No newline at end of file +!function(n,e){"use strict";function t(t){"interactive"===e.readyState||"complete"===e.readyState?r(t):n.addEventListener("DOMContentLoaded",function(){r(t)})}function r(t){try{var r=e.querySelectorAll("code.hljs");for(var i in r)r.hasOwnProperty(i)&&l(r[i],t)}catch(o){n.console.error("LineNumbers error: ",o)}}function l(n,e){if("object"==typeof n){e=e||{singleLine:!1};var t=e.singleLine?0:1;o(n),n.innerHTML=i(n.innerHTML,t)}}function i(n,e){var t=a(n);if(""===t[t.length-1].trim()&&t.pop(),t.length>e){for(var r="",l=0,i=t.length;l
{6}
',[g,u,v,m,f,l+1,t[l].length>0?t[l]:" "]);return h('{1}
',[d,r])}return n}function o(n){var e=n.childNodes;for(var t in e)if(e.hasOwnProperty(t)){var r=e[t];c(r.textContent)>0&&(r.childNodes.length>0?o(r):s(r.parentNode))}}function s(n){var e=n.className;if(/hljs-/.test(e)){for(var t=a(n.innerHTML),r=0,l="";r0?t[r]:" ";l+=h('{1}\n',[e,i])}n.innerHTML=l.trim()}}function a(n){return 0===n.length?[]:n.split(p)}function c(n){return(n.trim().match(p)||[]).length}function h(n,e){return n.replace(/\{(\d+)\}/g,function(n,t){return e[t]?e[t]:n})}var d="hljs-ln",u="hljs-ln-line notblue text-muted",f="hljs-ln-code pl-2",g="hljs-ln-numbers bg-light text-right pr-2 pl-2 border-right mr-3",v="hljs-ln-n",m="data-line-number",p=/\r\n|\r|\n/g;n.hljs?(n.hljs.initLineNumbersOnLoad=t,n.hljs.lineNumbersBlock=l):n.console.error("highlight.js not detected!")}(window,document); \ No newline at end of file diff --git a/pagure/templates/file.html b/pagure/templates/file.html index d778c76..0281dc3 100644 --- a/pagure/templates/file.html +++ b/pagure/templates/file.html @@ -272,6 +272,12 @@ No content found in this repository $('pre.syntaxhighlightblock code').each(function(i, block) { hljs.highlightBlock(block); hljs.lineNumbersBlock(block); + var cls = "highlighted-line"; + var lines = location.hash.substr(2).split('-').map(function (x) { return parseInt(x, 10) }); + $("#_" + lines[0]).get(0).scrollIntoView(); + for (var i = lines[lines.length - 1]; i >= lines[0]; i--) { + $('#_' + i).parent().parent().addClass(cls); + } }) });