`;
fs.writeFileSync( docRoot + '/nav.html', fileStruct );
};
function parseDocumentationMD () {
let doc = '' + fs.readFileSync( path.join( __dirname + '/../../../DOCUMENTATION.md' ) );
let lastHashtagPos = 0;
let posArray = [];
for ( let letter in doc ) {
if ( doc[letter] == '#' ) {
if ( doc.slice( parseInt( letter ), parseInt( letter ) + 3 ) === '###' || doc.slice( parseInt( letter ), parseInt( letter ) + 4 ) === '####' ) {
} else if ( doc.slice( parseInt( letter ), parseInt( letter ) + 2 ) === '##' && lastHashtagPos + 1 < parseInt( letter ) ) {
posArray.push(letter);
};
lastHashtagPos = parseInt( letter );
};
};
let titles = {};
for ( let item in posArray ) {
let titleArea = doc.slice( parseInt( posArray[item] ), parseInt( posArray[item] + 20 ) );
let title = '';
for ( let pos in titleArea ) {
if ( titleArea[pos] === '\n' ) {
title = titleArea.slice( 3, pos );
break;
};
};
let page = md2html.render( doc.slice( parseInt( posArray[parseInt( item )] ), parseInt( posArray[parseInt( item ) + 1] ) || parseInt( doc.length ) ) );
for ( let letter in page ) {
let titleTag = page.slice( parseInt( letter ), parseInt( letter ) + 4 );
if ( titleTag === '
' || titleTag === '
' || titleTag === '
' || titleTag === '
' ) {
let i = 4;
while ( page.slice( parseInt( letter ) + i, parseInt( letter ) + i + 1 ) !== '<' ) {
i += 1;
};
let heading = '' + page.slice( parseInt( letter ) + 4, parseInt( letter ) + i );
let output = '';
for ( let pos in heading ) {
let letter = heading[ pos ];
if ( letter === ' ' || letter === '.' || letter === ',' ) {
output += '-';
} else if ( letter === '(' || letter === ')' || letter === '[' || letter === ']' || letter === '|' ) {
} else {
output += letter;
};
};
titles[ output.toLowerCase() ] = title;
};
};
}
for ( let item in posArray ) {
let titleArea = doc.slice( parseInt( posArray[item] ), parseInt( posArray[item] + 20 ) );
let title = '';
for ( let pos in titleArea ) {
if ( titleArea[pos] === '\n' ) {
title = titleArea.slice( 3, pos );
break;
};
};
let page = md2html.render( doc.slice( parseInt( posArray[parseInt( item )] ), parseInt( posArray[parseInt( item ) + 1] ) || parseInt( doc.length ) ) );
for ( let letter in page ) {
let titleTag = page.slice( parseInt( letter ), parseInt( letter ) + 4 );
if ( page[letter] === '<' ) {
if ( page.slice( parseInt( letter ), parseInt( letter ) + 9 ) === '' || titleTag === '