From 220b85d72211b3356629b9faddf8a4940f748eee Mon Sep 17 00:00:00 2001 From: Hannah Wolfe Date: Tue, 14 Jul 2015 09:55:00 +0100 Subject: [PATCH 1/8] Merge ErinDS broken stuff tests --- test/extensions/ghostgfm/markdown-magic.html | 38 ++++++++++ test/extensions/ghostgfm/markdown-magic.md | 43 +++++++++++ test/extensions/underscore/underscore.html | 78 ++++++++++++++++++++ test/extensions/underscore/underscore.md | 76 +++++++++++++++++++ 4 files changed, 235 insertions(+) create mode 100644 test/extensions/ghostgfm/markdown-magic.html create mode 100644 test/extensions/ghostgfm/markdown-magic.md create mode 100644 test/extensions/underscore/underscore.html create mode 100644 test/extensions/underscore/underscore.md diff --git a/test/extensions/ghostgfm/markdown-magic.html b/test/extensions/ghostgfm/markdown-magic.html new file mode 100644 index 0000000..cd64695 --- /dev/null +++ b/test/extensions/ghostgfm/markdown-magic.html @@ -0,0 +1,38 @@ + + +
https://ghost.org
+
+ +

https://ghost.org

+ +

Markdown Footnotes

+ +
The quick brown fox[^1] jumped over the lazy dog[^2].
+
+    [^1]: Foxes are red
+    [^2]: Dogs are usually not red
+
+ +

The quick brown fox1 jumped over the lazy dog2.

+ +

Syntax Highlighting

+ +
https://ghost.orglanguage-javascript
+
+ +

// # Notifications API + // RESTful API for creating notifications + var Promise = require('bluebird'),
+ _ = require('lodash'), + canThis = require('../permissions').canThis, + errors = require('../errors'), + utils = require('./utils'),

+ +
// Holds the persistent notifications
+    notificationsStore = [],
+    // Holds the last used id
+    notificationCounter = 0,
+    notifications;
+
+ +

```

\ No newline at end of file diff --git a/test/extensions/ghostgfm/markdown-magic.md b/test/extensions/ghostgfm/markdown-magic.md new file mode 100644 index 0000000..59153db --- /dev/null +++ b/test/extensions/ghostgfm/markdown-magic.md @@ -0,0 +1,43 @@ +### Automatic Links + +``` +https://ghost.org +``` + +https://ghost.org + +### Markdown Footnotes + +``` +The quick brown fox[^1] jumped over the lazy dog[^2]. + +[^1]: Foxes are red +[^2]: Dogs are usually not red +``` + +The quick brown fox[^1] jumped over the lazy dog[^2]. + + +### Syntax Highlighting + + ```language-javascript + [...] + ``` + +Combined with [Prism.js](http://prismjs.com/) in the Ghost theme: + +```language-javascript +// # Notifications API +// RESTful API for creating notifications +var Promise = require('bluebird'), + _ = require('lodash'), + canThis = require('../permissions').canThis, + errors = require('../errors'), + utils = require('./utils'), + + // Holds the persistent notifications + notificationsStore = [], + // Holds the last used id + notificationCounter = 0, + notifications; +``` \ No newline at end of file diff --git a/test/extensions/underscore/underscore.html b/test/extensions/underscore/underscore.html new file mode 100644 index 0000000..452a689 --- /dev/null +++ b/test/extensions/underscore/underscore.html @@ -0,0 +1,78 @@ +

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+ +

baz_bar_foo

+ +

baz_bar_foo

+ +

baz_bar_foo

+ +

baz bar foo baz_bar_foo foo bar baz and foo

+ +

foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo

+ +

foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo

+ +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+
+ +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+
+ +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+ +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+ +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+ + + +

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+ +

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+ +

foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo

+ +

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+ +

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+ +
    +
  1. foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo
  2. +
  3. foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo
  4. +
+ +
+

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+
+ + + +
+ +

http://en.wikipedia.org/wiki/Tourism_in_Germany

+ +

an example

+ +

Another example of a link

+ +

foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo

+ + + +

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+ +

foo_bar_baz foo_bar_baz_bar_foo <em>foo_bar baz_bar</em> baz_foo

+ +

http://myurl.com/foo_bar_baz_bar_foo

+ +

http://myurl.com/foo_bar_baz_bar_foo

+ +

italics.

+ +

italics .

diff --git a/test/extensions/underscore/underscore.md b/test/extensions/underscore/underscore.md new file mode 100644 index 0000000..8f5de54 --- /dev/null +++ b/test/extensions/underscore/underscore.md @@ -0,0 +1,76 @@ +foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +_baz_bar_foo_ + +__baz_bar_foo__ + +___baz_bar_foo___ + +baz bar foo _baz_bar_foo foo bar baz_ and foo + +foo\_bar\_baz foo\_bar\_baz\_bar\_foo \_foo\_bar baz\_bar\_ baz\_foo + +`foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo` + + + foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + + +```html +foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo +``` + +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+ +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+ +
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+ + + +[foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo](http://myurl.com/foo_bar_baz_bar_foo) + +foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo +----- + +### foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +1. foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo +2. foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +> foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +* foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo +* foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +------- + +http://en.wikipedia.org/wiki/Tourism_in_Germany + +[an example] [wiki] + +Another [example][wiki] of a link + +[wiki]: http://en.wikipedia.org/wiki/Tourism_in_Germany + +

foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo

+ + +foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo + +![foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo](http://myurl.com/foo_bar_baz_bar_foo) + +http://myurl.com/foo_bar_baz_bar_foo + + + +_italics_. + +_italics_ . From 5f043ca46d20eb88240c753ae7f7c7429f4ee275 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Estev=C3=A3o=20Soares=20dos=20Santos?= Date: Tue, 14 Jul 2015 20:49:04 +0100 Subject: [PATCH 2/8] fix(subParsers/codeSpans): Fix issue with code html tags not being correctly escaped --- src/subParsers/codeSpans.js | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/subParsers/codeSpans.js b/src/subParsers/codeSpans.js index 639ffa8..e0d0522 100644 --- a/src/subParsers/codeSpans.js +++ b/src/subParsers/codeSpans.js @@ -26,6 +26,14 @@ showdown.subParser('codeSpans', function (text) { 'use strict'; + //special case -> literal html code tag + text = text.replace(/(<]*?>)([^]*?)<\/code>/g, function (wholeMatch, tag, c) { + c = c.replace(/^([ \t]*)/g, ''); // leading whitespace + c = c.replace(/[ \t]*$/g, ''); // trailing whitespace + c = showdown.subParser('encodeCode')(c); + return tag + c + ''; + }); + /* text = text.replace(/ (^|[^\\]) // Character before opening ` can't be a backslash @@ -38,15 +46,14 @@ showdown.subParser('codeSpans', function (text) { (?!`) /gm, function(){...}); */ - - text = text.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm, function (wholeMatch, m1, m2, m3) { - var c = m3; - c = c.replace(/^([ \t]*)/g, ''); // leading whitespace - c = c.replace(/[ \t]*$/g, ''); // trailing whitespace - c = showdown.subParser('encodeCode')(c); - return m1 + '' + c + ''; + text = text.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm, + function (wholeMatch, m1, m2, m3) { + var c = m3; + c = c.replace(/^([ \t]*)/g, ''); // leading whitespace + c = c.replace(/[ \t]*$/g, ''); // trailing whitespace + c = showdown.subParser('encodeCode')(c); + return m1 + '' + c + ''; }); return text; - }); From 542194e916e68e157053f6ca26ea1ef9c51689a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Estev=C3=A3o=20Soares=20dos=20Santos?= Date: Tue, 14 Jul 2015 20:49:46 +0100 Subject: [PATCH 3/8] fix(subParsers/images): fix alt attribute not being escaped correctly --- src/subParsers/images.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/subParsers/images.js b/src/subParsers/images.js index 0dc6b04..8dde87b 100644 --- a/src/subParsers/images.js +++ b/src/subParsers/images.js @@ -41,6 +41,7 @@ showdown.subParser('images', function (text, options, globals) { } altText = altText.replace(/"/g, '"'); + altText = showdown.helper.escapeCharacters(altText, '*_', false); url = showdown.helper.escapeCharacters(url, '*_', false); var result = '' + altText + ' Date: Tue, 14 Jul 2015 20:51:22 +0100 Subject: [PATCH 4/8] fix(subParsers/italicsAndBold): fix underscores not being correctly parsed when used in conjunction with literalMidWordsUnderscores option --- src/subParsers/italicsAndBold.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/subParsers/italicsAndBold.js b/src/subParsers/italicsAndBold.js index 19d95e3..4a2fa4d 100644 --- a/src/subParsers/italicsAndBold.js +++ b/src/subParsers/italicsAndBold.js @@ -4,8 +4,8 @@ showdown.subParser('italicsAndBold', function (text, options) { if (options.literalMidWordUnderscores) { //underscores // Since we are consuming a \s character, we need to add it - text = text.replace(/(^|\s)__(?=\S)([^]+?)__(?=\s|$)/gm, '$1$2'); - text = text.replace(/(^|\s)_(?=\S)([^]+?)_(?=\s|$)/gm, '$1$2'); + text = text.replace(/(^|\s|>|\b)__(?=\S)([^]+?)__(?=\b|<|\s|$)/gm, '$1$2'); + text = text.replace(/(^|\s|>|\b)_(?=\S)([^]+?)_(?=\b|<|\s|$)/gm, '$1$2'); //asterisks text = text.replace(/\*\*(?=\S)([^]+?)\*\*/g, '$1'); text = text.replace(/\*(?=\S)([^]+?)\*/g, '$1'); From 5d0ec964e40bf971a69769948112bb84470ab44a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Estev=C3=A3o=20Soares=20dos=20Santos?= Date: Tue, 14 Jul 2015 20:52:56 +0100 Subject: [PATCH 5/8] test: add test for autolink literalMidWordUnderscores options used together --- test/features/autolink_and_disallow_underscores.html | 1 + test/features/autolink_and_disallow_underscores.md | 1 + 2 files changed, 2 insertions(+) create mode 100644 test/features/autolink_and_disallow_underscores.html create mode 100644 test/features/autolink_and_disallow_underscores.md diff --git a/test/features/autolink_and_disallow_underscores.html b/test/features/autolink_and_disallow_underscores.html new file mode 100644 index 0000000..69efe76 --- /dev/null +++ b/test/features/autolink_and_disallow_underscores.html @@ -0,0 +1 @@ +

http://en.wikipedia.org/wiki/Tourism_in_Germany

\ No newline at end of file diff --git a/test/features/autolink_and_disallow_underscores.md b/test/features/autolink_and_disallow_underscores.md new file mode 100644 index 0000000..799cdcf --- /dev/null +++ b/test/features/autolink_and_disallow_underscores.md @@ -0,0 +1 @@ +http://en.wikipedia.org/wiki/Tourism_in_Germany \ No newline at end of file From 534c53616a69b22cb9ca1de66628fd4dcf00114a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Estev=C3=A3o=20Soares=20dos=20Santos?= Date: Tue, 14 Jul 2015 20:53:28 +0100 Subject: [PATCH 6/8] test: add ghost issues tests --- test/bootstrap.js | 4 ++-- .../ghostgfm => ghost}/markdown-magic.html | 0 .../ghostgfm => ghost}/markdown-magic.md | 0 .../underscore => ghost}/underscore.html | 12 +++++----- .../underscore => ghost}/underscore.md | 0 test/node/testsuite.features.js | 2 ++ test/node/testsuite.ghost.js | 22 +++++++++++++++++++ 7 files changed, 32 insertions(+), 8 deletions(-) rename test/{extensions/ghostgfm => ghost}/markdown-magic.html (100%) rename test/{extensions/ghostgfm => ghost}/markdown-magic.md (100%) rename test/{extensions/underscore => ghost}/underscore.html (81%) rename test/{extensions/underscore => ghost}/underscore.md (100%) create mode 100644 test/node/testsuite.ghost.js diff --git a/test/bootstrap.js b/test/bootstrap.js index a969f71..fc9b11d 100644 --- a/test/bootstrap.js +++ b/test/bootstrap.js @@ -82,8 +82,8 @@ testCase.actual = beautify(testCase.actual, beauOptions); // Normalize line returns - testCase.expected = testCase.expected.replace(/(\r\n)|\n|\r/g, os.EOL); - testCase.actual = testCase.actual.replace(/(\r\n)|\n|\r/g, os.EOL); + testCase.expected = testCase.expected.replace(/(\r\n)|\n|\r/g, '\n'); + testCase.actual = testCase.actual.replace(/(\r\n)|\n|\r/g, '\n'); return testCase; } diff --git a/test/extensions/ghostgfm/markdown-magic.html b/test/ghost/markdown-magic.html similarity index 100% rename from test/extensions/ghostgfm/markdown-magic.html rename to test/ghost/markdown-magic.html diff --git a/test/extensions/ghostgfm/markdown-magic.md b/test/ghost/markdown-magic.md similarity index 100% rename from test/extensions/ghostgfm/markdown-magic.md rename to test/ghost/markdown-magic.md diff --git a/test/extensions/underscore/underscore.html b/test/ghost/underscore.html similarity index 81% rename from test/extensions/underscore/underscore.html rename to test/ghost/underscore.html index 452a689..8520667 100644 --- a/test/extensions/underscore/underscore.html +++ b/test/ghost/underscore.html @@ -15,7 +15,7 @@
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
 
-
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
+
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
 
foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo
@@ -37,7 +37,7 @@

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

-

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

+

foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

  1. foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo
  2. @@ -55,7 +55,7 @@
    -

    http://en.wikipedia.org/wiki/Tourism_in_Germany

    +

    http://en.wikipedia.org/wiki/Tourism_in_Germany

    an example

    @@ -65,11 +65,11 @@ -

    foo_bar_baz foo_bar_baz_bar_foo foo_bar baz_bar baz_foo

    +

    foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo

    -

    foo_bar_baz foo_bar_baz_bar_foo <em>foo_bar baz_bar</em> baz_foo

    +

    foo_bar_baz foo_bar_baz_bar_foo _foo_bar baz_bar_ baz_foo

    -

    http://myurl.com/foo_bar_baz_bar_foo

    +

    http://myurl.com/foo_bar_baz_bar_foo

    http://myurl.com/foo_bar_baz_bar_foo

    diff --git a/test/extensions/underscore/underscore.md b/test/ghost/underscore.md similarity index 100% rename from test/extensions/underscore/underscore.md rename to test/ghost/underscore.md diff --git a/test/node/testsuite.features.js b/test/node/testsuite.features.js index 948fbf5..d575c69 100644 --- a/test/node/testsuite.features.js +++ b/test/node/testsuite.features.js @@ -25,6 +25,8 @@ describe('makeHtml() features testsuite', function () { converter = new showdown.Converter({ghCodeBlocks: false}); } else if (testsuite[i].name === '#164.4.tasklists') { converter = new showdown.Converter({tasklists: true}); + } else if (testsuite[i].name === 'autolink_and_disallow_underscores') { + converter = new showdown.Converter({literalMidWordUnderscores: true, simplifiedAutoLink: true}); } else { converter = new showdown.Converter(); } diff --git a/test/node/testsuite.ghost.js b/test/node/testsuite.ghost.js new file mode 100644 index 0000000..d720ef6 --- /dev/null +++ b/test/node/testsuite.ghost.js @@ -0,0 +1,22 @@ +/** + * Created by Estevao on 14-07-2015. + */ +var bootstrap = require('../bootstrap.js'), + converter = new bootstrap.showdown.Converter({ + strikethrough: true, + literalMidWordUnderscores: true, + simplifiedAutoLink: true, + tables: true, + parseImgDimensions: true, //extra + tasklists: true //extra + }), + assertion = bootstrap.assertion, + testsuite = bootstrap.getTestSuite('test/ghost/'); + +//MD-Testsuite (borrowed from karlcow/markdown-testsuite) +describe('makeHtml() ghost testsuite', function () { + 'use strict'; + for (var i = 0; i < testsuite.length; ++i) { + it(testsuite[i].name, assertion(testsuite[i], converter)); + } +}); From bf8b3649ad826940748c375840b1122b9c26421b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Estev=C3=A3o=20Soares=20dos=20Santos?= Date: Tue, 14 Jul 2015 21:10:00 +0100 Subject: [PATCH 7/8] test(ghost): ignore footnotes test Ignore footnotes tests since we don't have this feature in showdown --- test/ghost/markdown-magic.html | 34 ++++++++++++++++++---------------- 1 file changed, 18 insertions(+), 16 deletions(-) diff --git a/test/ghost/markdown-magic.html b/test/ghost/markdown-magic.html index cd64695..d7e74e5 100644 --- a/test/ghost/markdown-magic.html +++ b/test/ghost/markdown-magic.html @@ -13,26 +13,28 @@ [^2]: Dogs are usually not red
-

The quick brown fox1 jumped over the lazy dog2.

+

The quick brown fox[^1] jumped over the lazy dog[^2].

Syntax Highlighting

-
https://ghost.orglanguage-javascript
+
```language-javascript
+    [...]
+    ```
 
-

// # Notifications API - // RESTful API for creating notifications - var Promise = require('bluebird'),
- _ = require('lodash'), - canThis = require('../permissions').canThis, - errors = require('../errors'), - utils = require('./utils'),

+

Combined with Prism.js in the Ghost theme:

-
// Holds the persistent notifications
-    notificationsStore = [],
-    // Holds the last used id
-    notificationCounter = 0,
-    notifications;
-
+
// # Notifications API
+// RESTful API for creating notifications
+var Promise            = require('bluebird'),
+_                  = require('lodash'),
+canThis            = require('../permissions').canThis,
+errors             = require('../errors'),
+utils              = require('./utils'),
 
-

```

\ No newline at end of file +// Holds the persistent notifications +notificationsStore = [], +// Holds the last used id +notificationCounter = 0, +notifications; +
\ No newline at end of file From 9ab2af0e8986b0b186ad22e228f719c68f7304ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Estev=C3=A3o=20Soares=20dos=20Santos?= Date: Tue, 14 Jul 2015 21:17:27 +0100 Subject: [PATCH 8/8] build --- Gruntfile.js | 2 +- dist/showdown.js | Bin 64130 -> 64569 bytes dist/showdown.js.map | Bin 206576 -> 206992 bytes dist/showdown.min.js | Bin 22775 -> 23006 bytes dist/showdown.min.js.map | Bin 25336 -> 25554 bytes src/subParsers/codeSpans.js | 3 ++- 6 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Gruntfile.js b/Gruntfile.js index 10f0729..1a69f73 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -89,7 +89,7 @@ module.exports = function (grunt) { options: { globals: ['should'], timeout: 3000, - ignoreLeaks: false, + ignoreLeaks: true, reporter: 'spec' } }, diff --git a/dist/showdown.js b/dist/showdown.js index c5ac6da5585177f649dd05a505b78132c876c16b..b31b2b2790fdebea1331826e48d9b5131b4e0ce8 100644 GIT binary patch delta 313 zcmZqr%DnRj^9I2pHT~j()a1;>9EIe>;#37)JB6IglGGv~KcgfUD43s;s!)=cKKWpU zgo1_*h#MVeXA`SsZ>Omd9S5W}ZDRC6!gl)UlQ*VHZ~_(UC?sntR8QVjyiO9xQ_xmO z24Zy^h%$9+E(L{J&B=)=s+$dpBpD~~oGCszu~?M_D6BA9Fh^EKMH!*manm^iAmCokJqrbjR^+(McW?AO{%e}nLK~1 V6DwHFA&Y0C!npkwUV9twOG` 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 f$H!|FDev^n0p%{<1+|Mx2?~mU>=Y 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 XrJk3geRM*Nyy0OvynW+&X_)#yZx;$- diff --git a/dist/showdown.min.js b/dist/showdown.min.js index 3ff6774583695c3fdebfa2c8ad0d64d6598b5c74..f33c91d8304cfefa0cce6e9f121fb6202d4d1597 100644 GIT binary patch delta 251 zcmeyqk@4PU#tpVw^)|`*DXGzMb~dqE_I8>Y(Q!ap(Up&zFatq@ZZtECB4ucV}@gCYr$Qh`gQ=oObH z1tb;~rxs}_rA|Iz$RnJrsgtCgtgU1Nu~n&7Q)jcj7MCznlI>&%T}eKTBpoHKcqJW0 zLrtADu+ZiZTPr5k8oQd9q{)5uVk}8DHZ_wM+ndOOg*4+e>}_L$!M@S9hwwluHovmx Gl>`7bkWCr@ delta 76 zcmcb&neqEZ#tpVwn_p`E5n@c6TyH16S;NkfNmMgFUc=rtCRkG=Ixbe*9>Sg6;9w%G Oi6#M5w)vt1uOt8q2pCiV diff --git a/dist/showdown.min.js.map b/dist/showdown.min.js.map index f17eed50669bda9e7d381a5ac1415bf83b1df302..4172a5fa6ced218aabf27bbc72983e56ff08c3f1 100644 GIT binary patch delta 737 zcmcIiv2GJV5Y-AID3ixiQu96N~&5ZhtScR>$?EHjV&V!ZA$kujlyJ2^w$5yy*wh1d%~MA)59?9TL&be{kX1;Y z-eY5K=I|XA#N{-vD z`({%4BV04_ri&zvZq_nwetWkalE9}qu@o(f(?AXsz(Dy{fpsLM%0SJ6lQ@t4=2CfV zb+rz*S>Dw?C$cDWtTE+s;9>qUcp}7^`4(=7fhk6>ia!07cTr9i;3zadoYmq(LMq6Q NheM0xKcnln{sPwy)(8Lq delta 509 zcmY+AyG}wu5QcM<Oc1snvryi}VJqqLiayZs} zsBJ9c0#&aJ0GkmDSl{F?*gYyspArUkj>}UpZ2{q0aNad~|?6@Zd zMVYCKw|It&@qoW61NJUtIRO!#qz&AS2WED3eASlSdi+CCn&>39f_w`;p(A|LBn`$n z6XAsc-X{FsKhPTDLt=j^HeEUmkdeX!Mv~u33?tjaXe}jdGIbg3n3MCgC_smj47b+# z5p`%xR8{-hT=5MJF}Pef&uNX0^s4QCZs+Da1Ctmyzm|0G4WFWP@zD$`6?`}EyiEqs cVq{2xjdXm`eBM*uX)scwVDx3jeYQNSKTXA!i2wiq diff --git a/src/subParsers/codeSpans.js b/src/subParsers/codeSpans.js index e0d0522..b0ec1dd 100644 --- a/src/subParsers/codeSpans.js +++ b/src/subParsers/codeSpans.js @@ -53,7 +53,8 @@ showdown.subParser('codeSpans', function (text) { c = c.replace(/[ \t]*$/g, ''); // trailing whitespace c = showdown.subParser('encodeCode')(c); return m1 + '' + c + ''; - }); + } + ); return text; });