Use NodeJS NPM package markdownlint instead of Ruby gem mdl
This commit is contained in:
47
scripts/build-index.js
Normal file
47
scripts/build-index.js
Normal file
@@ -0,0 +1,47 @@
|
||||
'use strict';
|
||||
|
||||
var glob = require("glob");
|
||||
|
||||
function parsePlatform(pagefile) {
|
||||
return pagefile.split(/\//)[1];
|
||||
}
|
||||
|
||||
function parsePagename(pagefile) {
|
||||
return pagefile.split(/\//)[2].replace(/\.md$/, '');
|
||||
}
|
||||
|
||||
function buildShortPagesIndex(files) {
|
||||
var reducer = function(index, file) {
|
||||
var os = parsePlatform(file);
|
||||
var page = parsePagename(file);
|
||||
if (index[page]) {
|
||||
index[page].push(os);
|
||||
} else {
|
||||
index[page] = [os];
|
||||
}
|
||||
return index;
|
||||
};
|
||||
|
||||
return files.reduce(reducer, {});
|
||||
}
|
||||
|
||||
function buildPagesIndex(shortIndex) {
|
||||
return Object.keys(shortIndex)
|
||||
.sort()
|
||||
.map(function(page) {
|
||||
return {
|
||||
name: page,
|
||||
platform: shortIndex[page]
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
function saveIndex(index) {
|
||||
console.log(JSON.stringify(index));
|
||||
}
|
||||
|
||||
glob("pages/**/*.md", function (er, files) {
|
||||
var shortIndex = buildShortPagesIndex(files);
|
||||
var index = buildPagesIndex(shortIndex);
|
||||
saveIndex(index);
|
||||
});
|
Reference in New Issue
Block a user