Like SystemiConnectFri 15 Oct 2021, 04:50
Auto Save MessagesLGforumFri 26 Feb 2021, 13:31
New tutorial questionTheCrowMon 15 Feb 2021, 08:12
Support iOS Emojis (and other platforms)LGforumSun 14 Feb 2021, 01:25
LGforum (2806)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
Mr.Easybb (1587)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
Bloodbath (745)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
Rukiafan (533)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
Dom (513)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
puppycheese (446)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
pedro (330)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
Neymar (301)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
Hitsu (281)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 
Flora (275)
Adding line numbers to code boxes Vote_lcapAdding line numbers to code boxes Voting_barAdding line numbers to code boxes Vote_rcap 


Adding line numbers to code boxes

LGforumLGforum
Status : Working to restore AWC!

Posts : 2806
Join date : 2011-10-05
Age : 30
Location : UK
Mon 02 May 2016, 09:24
Whilst making Panda, my syntax highlighter which I wrote and am now using on this board (more here: https://github.com/AvacWeb/Panda#panda-syntax-highlighter ) I realized how extremely easy it is to add line numbers to code blocks.

Do not use this code if you have a Syntax Highlighter installed on your forum for your code blocks.

Line numbering can be achieved by this small snippet:
Code:
[panda=js]$(function(){
  var codes = document.getElementsByTagName('code');
  for(var i = 0, l = codes.length; i<l; i++)  {
      codes[i].innerHTML = '<ol class="code-lines"><li>' + codes[i].innerHTML.split(/\<br\s?\/?\>/).join('</li><li>') + '</li></ol>';
  }
});
You can style it with the classname 'code-lines' (.code-lines) in the css.

The script works simply by taking the HTML inside code boxes, splitting it down into each line and re-joining it as an ordered list, which will have numbers.

Enjoy. Smile