Skip to content

Instantly share code, notes, and snippets.

@tol-is
Last active January 6, 2022 20:35
Show Gist options
  • Select an option

  • Save tol-is/dcf6656a4d241ca44dab9367d33b8b11 to your computer and use it in GitHub Desktop.

Select an option

Save tol-is/dcf6656a4d241ca44dab9367d33b8b11 to your computer and use it in GitHub Desktop.
Get table of contents from markdown
const getMarkdownHeadings = (source: string) =>
source
.split("\n")
.map((line) => {
const matches = line.match(/^#+[\s]+/);
return matches
? {
level: matches[0].trim().length,
heading: line.replace(matches[0], "").trim(),
}
: false;
})
.filter(Boolean);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment