mirror of
https://github.com/writefreely/writefreely
synced 2024-11-24 17:43:05 +00:00
Fix #124 according to the snippet by @mrvdb
I changed the sh alias to shell instead of bash. The additions to the `highlight(nodes)` function look redundant. It works for me without them but maybe they cover an edge case I cannot think about?
This commit is contained in:
parent
86a128483b
commit
c2d7c2c8b7
1 changed files with 19 additions and 1 deletions
|
@ -9,6 +9,22 @@
|
||||||
// Set langs to the langs that are included by default (for now: 'common set' on CDN)
|
// Set langs to the langs that are included by default (for now: 'common set' on CDN)
|
||||||
var langs = [];
|
var langs = [];
|
||||||
|
|
||||||
|
// Custom aliasmap
|
||||||
|
var aliasmap = {
|
||||||
|
"elisp" : "lisp",
|
||||||
|
"emacs-lisp" : "lisp",
|
||||||
|
"c" : "cpp",
|
||||||
|
"cc" : "cpp",
|
||||||
|
"h" : "cpp",
|
||||||
|
"c++" : "cpp",
|
||||||
|
"h++" : "cpp",
|
||||||
|
"hpp" : "cpp",
|
||||||
|
"hh" : "cpp",
|
||||||
|
"hxx" : "cpp",
|
||||||
|
"cxx" : "cpp",
|
||||||
|
"sh" : "shell"
|
||||||
|
};
|
||||||
|
|
||||||
// Given a set of nodes, run highlighting on them
|
// Given a set of nodes, run highlighting on them
|
||||||
function highlight(nodes) {
|
function highlight(nodes) {
|
||||||
for (i=0; i < nodes.length; i++) {
|
for (i=0; i < nodes.length; i++) {
|
||||||
|
@ -22,7 +38,7 @@
|
||||||
var sc = document.createElement('script');
|
var sc = document.createElement('script');
|
||||||
sc.src = uri;
|
sc.src = uri;
|
||||||
sc.async = false; // critical?
|
sc.async = false; // critical?
|
||||||
// Set callback on last script
|
// Set callback on last script
|
||||||
if (uris.indexOf(uri) == uris.length-1) {
|
if (uris.indexOf(uri) == uris.length-1) {
|
||||||
// Set callback regardless
|
// Set callback regardless
|
||||||
// so we're sure it will run if last element had error
|
// so we're sure it will run if last element had error
|
||||||
|
@ -46,6 +62,8 @@
|
||||||
// Check what we need to load
|
// Check what we need to load
|
||||||
for (i=0; i < lb.length; i++) {
|
for (i=0; i < lb.length; i++) {
|
||||||
lang = lb[i].className.replace('language-','');
|
lang = lb[i].className.replace('language-','');
|
||||||
|
// Support the aliases specified above
|
||||||
|
if (aliasmap[lang]) lang = aliasmap[lang];
|
||||||
lurl = hlbaseUri + "highlightjs/" + lang + ".min.js";
|
lurl = hlbaseUri + "highlightjs/" + lang + ".min.js";
|
||||||
if (!(langs.includes(lang) || jss.includes(lurl))) {
|
if (!(langs.includes(lang) || jss.includes(lurl))) {
|
||||||
jss.push(lurl);
|
jss.push(lurl);
|
||||||
|
|
Loading…
Reference in a new issue