tools: add direct anchors for error codes

This adds direct anchors for the error codes in errors.html.
For example, previously the anchor for ERR_ASSERTION
is #errors_err_assertion, now there is also #ERR_ASSERTION.

PR-URL: https://github.com/nodejs/node/pull/16779
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Yuta Hiroto <hello@about-hiroppy.com>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
This commit is contained in:
Joyee Cheung 2017-11-06 01:36:50 +08:00 committed by Rich Trott
parent 3ee524b14c
commit c3d26e801a

View File

@ -472,6 +472,9 @@ function getSection(lexed) {
return '';
}
function getMark(anchor) {
return `<span><a class="mark" href="#${anchor}" id="${anchor}">#</a></span>`;
}
function buildToc(lexed, filename, cb) {
var toc = [];
@ -499,12 +502,15 @@ function buildToc(lexed, filename, cb) {
depth = tok.depth;
const realFilename = path.basename(realFilenames[0], '.md');
const id = getId(`${realFilename}_${tok.text.trim()}`);
const apiName = tok.text.trim();
const id = getId(`${realFilename}_${apiName}`);
toc.push(new Array((depth - 1) * 2 + 1).join(' ') +
`* <span class="stability_${tok.stability}">` +
`<a href="#${id}">${tok.text}</a></span>`);
tok.text += `<span><a class="mark" href="#${id}"` +
`id="${id}">#</a></span>`;
tok.text += getMark(id);
if (realFilename === 'errors' && apiName.startsWith('ERR_')) {
tok.text += getMark(apiName);
}
});
toc = marked.parse(toc.join('\n'));