Add basic code language normalization

This commit is contained in:
Aaron O'Mullan
2014-04-05 20:04:24 -07:00
parent 4987beec2b
commit 58bee15f37
3 changed files with 23 additions and 1 deletions
+4 -1
View File
@@ -4,6 +4,9 @@ var hljs = require('highlight.js');
var renderer = require('./renderer');
var lnormalize = require('../utils/lang').normalize;
// Synchronous highlighting with highlight.js
marked.setOptions({
highlight: function (code, lang) {
@@ -101,7 +104,7 @@ function parsePage(src, options) {
});
// Languages in code blocks
var langs = _.pluck(codeNodes, 'lang');
var langs = _.pluck(codeNodes, 'lang').map(lnormalize);
// Check that they are all the same
var validLangs = _.all(_.map(langs, function(lang) {
+3
View File
@@ -0,0 +1,3 @@
module.exports = {
lang: require('./lang'),
};
+16
View File
@@ -0,0 +1,16 @@
var MAP = {
'py': 'python',
'js': 'javascript',
'rb': 'ruby',
};
function normalize(lang) {
var lower = lang.toLowerCase();
return MAP[lower] || lower;
}
// Exports
module.exports = {
normalize: normalize,
MAP: MAP
};