Skip to content

Instantly share code, notes, and snippets.

@hanh090
Forked from gotofritz/gitlab-markdown-toc.js
Created December 13, 2017 03:05
Show Gist options
  • Save hanh090/d20b85ef1b9b4b63db06cd6459667a5a to your computer and use it in GitHub Desktop.
Save hanh090/d20b85ef1b9b4b63db06cd6459667a5a to your computer and use it in GitHub Desktop.
creates a gitlab markdown table of contents for a README.md page
// quick and dirty snippet to creates a gitlab markdown table of contents for a README.md page
// preview gitlab page and paste in browser console
var str = "";
$('.file-content')
.find('h1, h2, h3, h4, h5, h6, h7')
.each((i, node) => {
// node.tagName is H1 H2...
let indent = Number(node.tagName[1]) - 1;
// markdown mested lists are
// - xxx
// - yyy etc
let tabs = ' '.substr(0, 3 * indent);
let linkName = node.textContent.trim();
let linkAnchor = node.querySelector('a').id;
str += `\n${tabs}- [${linkName}](#${linkAnchor})`;
});
console.log(str);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment