Render the Code view on the server (minus syntax highlighting) (#2942)

* render code view server side

* remove debug print

* fix multiline selection bug

* change string concatenation to bytes.Buffer for efficiency

* Fix newlines added by previous for hljs

* fix selection highlighting

* make css changes in .less
This commit is contained in:
Rory McNamara 2016-08-09 20:35:20 +01:00 committed by 无闻
parent 9e8a8867ea
commit c8b45ecc27
5 changed files with 24 additions and 20 deletions

View file

@ -1316,6 +1316,8 @@ footer .ui.language .menu {
.repository.file.list #file-content .code-view .lines-num .hljs li,
.repository.file.list #file-content .code-view .lines-code .hljs li {
padding-left: 5px;
display: inline-block;
width: 100%;
}
.repository.file.list #file-content .code-view .lines-num pre li.active,
.repository.file.list #file-content .code-view .lines-code pre li.active,

View file

@ -1088,7 +1088,7 @@ $(window).load(function () {
b = c;
}
var classes = [];
for (i = a; i <= b; i++) {
for (var i = a; i <= b; i++) {
classes.push('.L' + i);
}
$list.filter(classes.join(',')).addClass('active');
@ -1102,22 +1102,6 @@ $(window).load(function () {
// Code view.
if ($('.code-view .linenums').length > 0) {
var $block = $('.code-view .linenums');
var lines = $block.html().split("\n");
$block.html('');
var $num_list = $('.code-view .lines-num');
// Building blocks.
var $toappendblock = [];
var $toappendnum_list = [];
for (var i = 0; i < lines.length; i++) {
$toappendblock.push('<li class="L' + (i + 1) + '" rel="L' + (i + 1) + '">' + lines[i] + '</li>');
$toappendnum_list.push('<span id="L' + (i + 1) + '">' + (i + 1) + '</span>');
}
$block.append($toappendblock.join(''));
$num_list.append($toappendnum_list.join(''));
$(document).on('click', '.lines-num span', function (e) {
var $select = $(this);
var $list = $select.parent().siblings('.lines-code').find('ol.linenums > li');

View file

@ -251,6 +251,8 @@
padding: 0 !important;
li {
padding-left: 5px;
display: inline-block;
width: 100%;
&.active {
background: #ffffdd;
}