- Commit
- a0cbcefe82a6bff0a9b44550e22244d6d5d727c0
- Parent
- 3b3c5c9502252a2ce13a7daffa80da2709d586e1
- Author
- John MacFarlane <jgm@berkeley.edu>
- Date
A few changes to JS so its xml matches cmark's.
Always add '' as title property if title is not defined.
My personal build of CMark ✏️
A few changes to JS so its xml matches cmark's.
Always add '' as title property if title is not defined.
2 files changed, 7 insertions, 3 deletions
Status | File Name | N° Changes | Insertions | Deletions |
Modified | js/lib/inlines.js | 6 | 4 | 2 |
Modified | js/lib/xml.js | 4 | 3 | 1 |
diff --git a/js/lib/inlines.js b/js/lib/inlines.js @@ -232,6 +232,7 @@ var parseAutolink = function(block) { dest = m.slice(1, -1); node = new Node('Link'); node.destination = 'mailto:' + encodeURI(unescape(dest)); + node.title = ''; node.appendChild(text(dest)); block.appendChild(node); return true; @@ -239,6 +240,7 @@ var parseAutolink = function(block) { dest = m.slice(1, -1); node = new Node('Link'); node.destination = encodeURI(unescape(dest)); + node.title = ''; node.appendChild(text(dest)); block.appendChild(node); return true; @@ -599,7 +601,7 @@ var parseCloseBracket = function(block) { this.spnl() && // make sure there's a space before the title: (reWhitespaceChar.test(this.subject.charAt(this.pos - 1)) && - (title = this.parseLinkTitle() || '') || true) && + (title = this.parseLinkTitle()) || true) && this.spnl() && this.subject.charAt(this.pos) === ')') { this.pos += 1; @@ -635,7 +637,7 @@ var parseCloseBracket = function(block) { if (matched) { var node = new Node(is_image ? 'Image' : 'Link'); node.destination = dest; - node.title = title; + node.title = title || ''; var tmp, next; tmp = opener.node.next;
diff --git a/js/lib/xml.js b/js/lib/xml.js @@ -111,7 +111,9 @@ var renderNodes = function(block) { } break; case 'CodeBlock': - attrs.push(['info', node.info]); + if (node.info) { + attrs.push(['info', node.info]); + } break; case 'Header': attrs.push(['level', String(node.level)]);