diff options
| -rw-r--r-- | lib/writers/markdown-writer.js | 4 | ||||
| -rw-r--r-- | tests/writers/markdown-writer.tests.js | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/writers/markdown-writer.js b/lib/writers/markdown-writer.js index b4fbb8e..77bae94 100644 --- a/lib/writers/markdown-writer.js +++ b/lib/writers/markdown-writer.js @@ -129,6 +129,10 @@ function markdownWriter() { list.count = 0; } } + + if (attributes.id) { + fragments.push('<a id="' + attributes.id + '"></a>'); + } } function close(tagName) { diff --git a/tests/writers/markdown-writer.tests.js b/tests/writers/markdown-writer.tests.js index a755423..e13046a 100644 --- a/tests/writers/markdown-writer.tests.js +++ b/tests/writers/markdown-writer.tests.js @@ -76,6 +76,14 @@ describe('markdown-writer', function() { writer.close("a"); return assert.equal(writer.asString(), "[Hello]()"); }); + + test('elements with IDs have anchor tags with IDs appended to start of markdown element', function() { + var writer = mdWriter.writer(); + writer.open("h1", {id: "start"}); + writer.text("Hello"); + writer.close("p"); + return assert.equal(writer.asString(), '# <a id="start"></a>Hello\n\n'); + }); test('can generate images', function() { var writer = mdWriter.writer(); |
