Skip to content

Commit

Permalink
fix: as have now prefixed relative URL links, ensure "user-content-" …
Browse files Browse the repository at this point in the history
…anchors exist for any non-prefixing environments
  • Loading branch information
brettz9 committed Jan 4, 2022
1 parent 23c777e commit 27ba7ef
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 4 deletions.
6 changes: 4 additions & 2 deletions src/gitdown.js
Expand Up @@ -321,7 +321,9 @@ Gitdown.nestHeadingIds = (inputMarkdown) => {

// <code>test</code>

return '<a name="⊂⊂⊂H:' + articles.length + '⊃⊃⊃"></a>\n' + _.repeat('#', normalizedLevel) + ' ' + normalizedName;
return `<a name="user-content-⊂⊂⊂H:${articles.length}⊃⊃⊃"></a>
<a name="⊂⊂⊂H:${articles.length}⊃⊃⊃"></a>
${_.repeat('#', normalizedLevel)} ${normalizedName}`;
});

outputMarkdown = outputMarkdown.replace(/^⊂⊂⊂C:(\d+)⊃⊃⊃/gm, () => {
Expand All @@ -331,7 +333,7 @@ Gitdown.nestHeadingIds = (inputMarkdown) => {
const tree = contents.nestIds(MarkdownContents.tree(articles));

Gitdown.nestHeadingIds.iterateTree(tree, (index, article) => {
outputMarkdown = outputMarkdown.replace('⊂⊂⊂H:' + index + '⊃⊃⊃', article.id);
outputMarkdown = outputMarkdown.replace(new RegExp('⊂⊂⊂H:' + index + '⊃⊃⊃', 'g'), article.id);
});

return outputMarkdown;
Expand Down
12 changes: 10 additions & 2 deletions tests/gitdown.js
Expand Up @@ -31,10 +31,18 @@ describe('Gitdown', () => {

describe('.nestHeadingIds()', () => {
it('replaces heading markup with HTML', () => {
expect(Gitdown.nestHeadingIds('# Foo\n# Bar')).to.equal('<a name="foo"></a>\n# Foo\n<a name="bar"></a>\n# Bar');
expect(
Gitdown.nestHeadingIds('# Foo\n# Bar'),
).to.equal(
'<a name="user-content-foo"></a>\n<a name="foo"></a>\n# Foo\n<a name="user-content-bar"></a>\n<a name="bar"></a>\n# Bar',
);
});
it('nests heading ids', () => {
expect(Gitdown.nestHeadingIds('# Foo\n## Bar')).to.equal('<a name="foo"></a>\n# Foo\n<a name="foo-bar"></a>\n## Bar');
expect(
Gitdown.nestHeadingIds('# Foo\n## Bar'),
).to.equal(
'<a name="user-content-foo"></a>\n<a name="foo"></a>\n# Foo\n<a name="user-content-foo-bar"></a>\n<a name="foo-bar"></a>\n## Bar',
);
});
});
describe('.nestHeadingIds.iterateTree()', () => {
Expand Down

0 comments on commit 27ba7ef

Please sign in to comment.