diff --git a/branches/release-0.3.11/.gitignore b/branches/release-0.3.11/.gitignore index 14a781d..c2658d7 100644 --- a/branches/release-0.3.11/.gitignore +++ b/branches/release-0.3.11/.gitignore @@ -1,2 +1 @@ node_modules/ -test/compiled_tests diff --git a/branches/release-0.3.11/README.md b/branches/release-0.3.11/README.md index 8c9ae42..68bb920 100644 --- a/branches/release-0.3.11/README.md +++ b/branches/release-0.3.11/README.md @@ -321,19 +321,23 @@ features][gfmf]. ## Benchmarks -node v8.9.4 +node v0.8.x ``` bash -$ npm run bench -marked completed in 3408ms. -marked (gfm) completed in 3465ms. -marked (pedantic) completed in 3032ms. -showdown (reuse converter) completed in 21444ms. -showdown (new converter) completed in 23058ms. -markdown-it completed in 3364ms. -markdown.js completed in 12090ms. +$ node test --bench +marked completed in 3411ms. +marked (gfm) completed in 3727ms. +marked (pedantic) completed in 3201ms. +robotskirt completed in 808ms. +showdown (reuse converter) completed in 11954ms. +showdown (new converter) completed in 17774ms. +markdown-js completed in 17191ms. ``` +__Marked is now faster than Discount, which is written in C.__ + +For those feeling skeptical: These benchmarks run the entire markdown test suite 1000 times. The test suite tests every feature. It doesn't cater to specific aspects. + ### Pro level You also have direct access to the lexer and parser if you so desire. @@ -368,23 +372,23 @@ suite. If you're adding a new feature, be sure to add your own test. The marked test suite is set up slightly strangely: `test/new` is for all tests that are not part of the original markdown.pl test suite (this is where your test should go if you make one). `test/original` is only for the original -markdown.pl tests. +markdown.pl tests. `test/tests` houses both types of tests after they have been +combined and moved/generated by running `node test --fix` or `marked --test +--fix`. -In other words, if you have a test to add, add it to `test/new/`. If your test +In other words, if you have a test to add, add it to `test/new/` and then +regenerate the tests with `node test --fix`. Commit the result. If your test uses a certain feature, for example, maybe it assumes GFM is *not* enabled, you -can add [front-matter](https://www.npmjs.com/package/front-matter) to the top of -your .md file - -``` yml ---- -gfm: false ---- -``` +can add `.nogfm` to the filename. So, `my-test.text` becomes +`my-test.nogfm.text`. You can do this with any marked option. Say you want +line breaks and smartypants enabled, your filename should be: +`my-test.breaks.smartypants.text`. To run the tests: ``` bash -npm run test +cd marked/ +node test ``` ### Contribution and License Agreement diff --git a/branches/release-0.3.11/lib/marked.js b/branches/release-0.3.11/lib/marked.js index 6f0e87c..3eb1f9d 100644 --- a/branches/release-0.3.11/lib/marked.js +++ b/branches/release-0.3.11/lib/marked.js @@ -1144,8 +1144,8 @@ function resolveUrl(base, href) { return base + href; } } -baseUrls = {}; -originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i; +var baseUrls = {}; +var originIndependentUrl = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i; function noop() {} noop.exec = noop; diff --git a/branches/release-0.3.11/package-lock.json b/branches/release-0.3.11/package-lock.json index 9aa6dcc..8734708 100644 --- a/branches/release-0.3.11/package-lock.json +++ b/branches/release-0.3.11/package-lock.json @@ -39,15 +39,6 @@ "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", "dev": true }, - "argparse": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", - "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", - "dev": true, - "requires": { - "sprintf-js": "1.0.3" - } - }, "arr-diff": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", @@ -311,24 +302,12 @@ "once": "1.3.3" } }, - "entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", - "dev": true - }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, - "esprima": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", - "dev": true - }, "execa": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", @@ -493,15 +472,6 @@ "for-in": "1.0.2" } }, - "front-matter": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/front-matter/-/front-matter-2.3.0.tgz", - "integrity": "sha1-cgOviWzjV+4E4qpFFp6pHtf2dQQ=", - "dev": true, - "requires": { - "js-yaml": "3.10.0" - } - }, "fs-exists-sync": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz", @@ -1044,16 +1014,6 @@ } } }, - "js-yaml": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", - "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", - "dev": true, - "requires": { - "argparse": "1.0.9", - "esprima": "4.0.0" - } - }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", @@ -1095,15 +1055,6 @@ "resolve": "1.5.0" } }, - "linkify-it": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-2.0.3.tgz", - "integrity": "sha1-2UpGSPmxwXnWT6lykSaL22zpQ08=", - "dev": true, - "requires": { - "uc.micro": "1.0.3" - } - }, "locate-path": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", @@ -1284,25 +1235,6 @@ "nopt": "2.1.2" } }, - "markdown-it": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.0.tgz", - "integrity": "sha512-tNuOCCfunY5v5uhcO2AUMArvKAyKMygX8tfup/JrgnsDqcCATQsAExBq7o5Ml9iMmO82bk6jYNLj6khcrl0JGA==", - "dev": true, - "requires": { - "argparse": "1.0.9", - "entities": "1.1.1", - "linkify-it": "2.0.3", - "mdurl": "1.0.1", - "uc.micro": "1.0.3" - } - }, - "mdurl": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", - "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=", - "dev": true - }, "mem": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", @@ -1884,12 +1816,6 @@ "integrity": "sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM=", "dev": true }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, "stream-consume": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/stream-consume/-/stream-consume-0.1.0.tgz", @@ -2023,12 +1949,6 @@ "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", "dev": true }, - "uc.micro": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.3.tgz", - "integrity": "sha1-ftUNXg+an7ClczeSWfKndFjVAZI=", - "dev": true - }, "uglify-js": { "version": "2.6.4", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.6.4.tgz", diff --git a/branches/release-0.3.11/package.json b/branches/release-0.3.11/package.json index 1102e45..13a9a88 100644 --- a/branches/release-0.3.11/package.json +++ b/branches/release-0.3.11/package.json @@ -25,8 +25,6 @@ "devDependencies": { "markdown": "*", "showdown": "*", - "markdown-it": "*", - "front-matter": "^2.3.0", "gulp": "^3.8.11", "gulp-uglify": "^1.1.0", "gulp-concat": "^2.5.2" diff --git a/branches/release-0.3.11/test/index.js b/branches/release-0.3.11/test/index.js index 9a79ab2..415e8d6 100644 --- a/branches/release-0.3.11/test/index.js +++ b/branches/release-0.3.11/test/index.js @@ -12,7 +12,6 @@ var fs = require('fs') , path = require('path') - , fm = require('front-matter') , marked = require('../'); /** @@ -20,11 +19,10 @@ var fs = require('fs') */ function load() { - var dir = __dirname + '/compiled_tests' + var dir = __dirname + '/tests' , files = {} , list , file - , content , i , l; @@ -44,12 +42,8 @@ function load() { for (; i < l; i++) { file = path.join(dir, list[i]); - content = fm(fs.readFileSync(file, 'utf8')); - - files[path.basename(file)] = { - options: content.attributes, - text: content.body, + text: fs.readFileSync(file, 'utf8'), html: fs.readFileSync(file.replace(/[^.]+$/, 'html'), 'utf8') }; } @@ -78,7 +72,7 @@ function runTests(engine, options) { , len = keys.length , filename , file - , opts + , flags , text , html , j @@ -92,22 +86,30 @@ main: for (; i < len; i++) { filename = keys[i]; file = files[filename]; - opts = Object.keys(file.options); if (marked._original) { marked.defaults = marked._original; delete marked._original; } - if (opts.length) { + flags = filename.split('.').slice(1, -1); + if (flags.length) { marked._original = marked.defaults; marked.defaults = {}; Object.keys(marked._original).forEach(function(key) { marked.defaults[key] = marked._original[key]; }); - opts.forEach(function(key) { + flags.forEach(function(key) { + var val = true; + if(key.indexOf('=') !== -1) { + val = decodeURIComponent(key.substring(key.indexOf('=') + 1)); + key = key.substring(0, key.indexOf('=')); + } else if (key.indexOf('no') === 0) { + key = key.substring(2); + val = false; + } if (marked.defaults.hasOwnProperty(key)) { - marked.defaults[key] = file.options[key]; + marked.defaults[key] = val; } }); } @@ -115,7 +117,7 @@ main: try { text = engine(file.text).replace(/\s/g, ''); html = file.html.replace(/\s/g, ''); - } catch (e) { + } catch(e) { console.log('%s failed.', filename); throw e; } @@ -158,6 +160,11 @@ main: console.log('%d/%d tests completed successfully.', complete, len); if (failed) console.log('%d/%d tests failed.', failed, len); + // Tests currently failing. + if (~failures.indexOf('def_blocks.text')) { + failed -= 1; + } + return !failed; } @@ -175,15 +182,15 @@ function bench(name, func) { // comparison to older benchmark times. fs.readdirSync(__dirname + '/new').forEach(function(name) { if (path.extname(name) === '.html') return; - if (name === 'main.md') return; + if (name === 'main.text') return; delete files[name]; }); - files['backslash_escapes.md'] = { + files['backslash_escapes.text'] = { text: 'hello world \\[how](are you) today' }; - files['main.md'].text = files['main.md'].text.replace('* * *\n\n', ''); + files['main.text'].text = files['main.text'].text.replace('* * *\n\n', ''); } var start = Date.now() @@ -254,11 +261,24 @@ function runBench(options) { } bench('marked (pedantic)', marked); + // robotskirt + try { + bench('robotskirt', (function() { + var rs = require('robotskirt'); + return function(text) { + var parser = rs.Markdown.std(); + return parser.render(text); + }; + })()); + } catch (e) { + console.log('Could not bench robotskirt.'); + } + // showdown try { bench('showdown (reuse converter)', (function() { var Showdown = require('showdown'); - var convert = new Showdown.Converter(); + var convert = new Showdown.converter(); return function(text) { return convert.makeHtml(text); }; @@ -266,7 +286,7 @@ function runBench(options) { bench('showdown (new converter)', (function() { var Showdown = require('showdown'); return function(text) { - var convert = new Showdown.Converter(); + var convert = new Showdown.converter(); return convert.makeHtml(text); }; })()); @@ -274,32 +294,12 @@ function runBench(options) { console.log('Could not bench showdown.'); } - // markdown-it - try { - bench('markdown-it', (function() { - var MarkdownIt = require('markdown-it'); - var md = new MarkdownIt(); - return function(text) { - return md.render(text); - }; - })()); - } catch (e) { - console.log('Could not bench markdown-it.'); - } - // markdown.js try { - bench('markdown.js', (function() { - var markdown = require('markdown').markdown; - return function(text) { - return markdown.toHTML(text); - }; - })()); + bench('markdown.js', require('markdown').parse); } catch (e) { console.log('Could not bench markdown.js.'); } - - return true; } /** @@ -324,33 +324,32 @@ function time(options) { * conformance. */ -function fix() { - ['compiled_tests', 'original', 'new'].forEach(function(dir) { +function fix(options) { + ['tests', 'original', 'new'].forEach(function(dir) { try { - fs.mkdirSync(path.resolve(__dirname, dir), 0o755); + fs.mkdirSync(path.resolve(__dirname, dir), 0755); } catch (e) { ; } }); // rm -rf tests - fs.readdirSync(path.resolve(__dirname, 'compiled_tests')).forEach(function(file) { - fs.unlinkSync(path.resolve(__dirname, 'compiled_tests', file)); + fs.readdirSync(path.resolve(__dirname, 'tests')).forEach(function(file) { + fs.unlinkSync(path.resolve(__dirname, 'tests', file)); }); // cp -r original tests fs.readdirSync(path.resolve(__dirname, 'original')).forEach(function(file) { - var text = fs.readFileSync(path.resolve(__dirname, 'original', file)); - - if (file === 'hard_wrapped_paragraphs_with_list_like_lines.md') { - text = '---\ngfm: false\n---\n' + text; + var nfile = file; + if (file.indexOf('hard_wrapped_paragraphs_with_list_like_lines.') === 0) { + nfile = file.replace(/\.(text|html)$/, '.nogfm.$1'); } - - fs.writeFileSync(path.resolve(__dirname, 'compiled_tests', file), text); + fs.writeFileSync(path.resolve(__dirname, 'tests', nfile), + fs.readFileSync(path.resolve(__dirname, 'original', file))); }); // node fix.js - var dir = __dirname + '/compiled_tests'; + var dir = __dirname + '/tests'; fs.readdirSync(dir).filter(function(file) { return path.extname(file) === '.html'; @@ -406,7 +405,7 @@ function fix() { // cp new/* tests/ fs.readdirSync(path.resolve(__dirname, 'new')).forEach(function(file) { - fs.writeFileSync(path.resolve(__dirname, 'compiled_tests', file), + fs.writeFileSync(path.resolve(__dirname, 'tests', file), fs.readFileSync(path.resolve(__dirname, 'new', file))); }); } @@ -455,13 +454,7 @@ function parseArg(argv) { case '-f': case '--fix': case 'fix': - if (options.fix !== false) { - options.fix = true; - } - break; - case '--no-fix': - case 'no-fix': - options.fix = false; + options.fix = true; break; case '-b': case '--bench': @@ -477,7 +470,7 @@ function parseArg(argv) { break; default: if (arg.indexOf('--') === 0) { - var opt = camelize(arg.replace(/^--(no-)?/, '')); + opt = camelize(arg.replace(/^--(no-)?/, '')); if (!marked.defaults.hasOwnProperty(opt)) { continue; } @@ -518,12 +511,8 @@ function camelize(text) { function main(argv) { var opt = parseArg(); - if (opt.fix !== false) { - fix(); - } - if (opt.fix) { - return; + return fix(opt); } if (opt.bench) { diff --git a/branches/release-0.3.11/test/new/autolink_lines.md b/branches/release-0.3.11/test/new/autolink_lines.text similarity index 100% rename from branches/release-0.3.11/test/new/autolink_lines.md rename to branches/release-0.3.11/test/new/autolink_lines.text diff --git a/branches/release-0.3.11/test/new/blockquote_list_item.md b/branches/release-0.3.11/test/new/blockquote_list_item.text similarity index 100% rename from branches/release-0.3.11/test/new/blockquote_list_item.md rename to branches/release-0.3.11/test/new/blockquote_list_item.text diff --git a/branches/release-0.3.11/test/new/case_insensitive_refs.md b/branches/release-0.3.11/test/new/case_insensitive_refs.text similarity index 100% rename from branches/release-0.3.11/test/new/case_insensitive_refs.md rename to branches/release-0.3.11/test/new/case_insensitive_refs.text diff --git a/branches/release-0.3.11/test/new/def_blocks.html b/branches/release-0.3.11/test/new/def_blocks.html index ec0d119..14edc97 100644 --- a/branches/release-0.3.11/test/new/def_blocks.html +++ b/branches/release-0.3.11/test/new/def_blocks.html @@ -6,8 +6,7 @@
-@@ -25,6 +24,5 @@hello -[2]: hello
+hello
diff --git a/branches/release-0.3.11/test/new/def_blocks.md b/branches/release-0.3.11/test/new/def_blocks.text similarity index 100% rename from branches/release-0.3.11/test/new/def_blocks.md rename to branches/release-0.3.11/test/new/def_blocks.text diff --git a/branches/release-0.3.11/test/new/double_link.md b/branches/release-0.3.11/test/new/double_link.text similarity index 100% rename from branches/release-0.3.11/test/new/double_link.md rename to branches/release-0.3.11/test/new/double_link.text diff --git a/branches/release-0.3.11/test/new/escaped_angles.md b/branches/release-0.3.11/test/new/escaped_angles.text similarity index 100% rename from branches/release-0.3.11/test/new/escaped_angles.md rename to branches/release-0.3.11/test/new/escaped_angles.text diff --git a/branches/release-0.3.11/test/new/gfm_break.html b/branches/release-0.3.11/test/new/gfm_break.breaks.html similarity index 100% rename from branches/release-0.3.11/test/new/gfm_break.html rename to branches/release-0.3.11/test/new/gfm_break.breaks.html diff --git a/branches/release-0.3.11/test/new/gfm_break.md b/branches/release-0.3.11/test/new/gfm_break.breaks.text similarity index 60% rename from branches/release-0.3.11/test/new/gfm_break.md rename to branches/release-0.3.11/test/new/gfm_break.breaks.text index 5bf79a2..71097d2 100644 --- a/branches/release-0.3.11/test/new/gfm_break.md +++ b/branches/release-0.3.11/test/new/gfm_break.breaks.text @@ -1,6 +1,3 @@ ---- -breaks: true ---- Look at the pretty line breaks. diff --git a/branches/release-0.3.11/test/new/gfm_code.md b/branches/release-0.3.11/test/new/gfm_code.text similarity index 100% rename from branches/release-0.3.11/test/new/gfm_code.md rename to branches/release-0.3.11/test/new/gfm_code.text diff --git a/branches/release-0.3.11/test/new/gfm_code_hr_list.md b/branches/release-0.3.11/test/new/gfm_code_hr_list.text similarity index 100% rename from branches/release-0.3.11/test/new/gfm_code_hr_list.md rename to branches/release-0.3.11/test/new/gfm_code_hr_list.text diff --git a/branches/release-0.3.11/test/new/gfm_del.md b/branches/release-0.3.11/test/new/gfm_del.text similarity index 100% rename from branches/release-0.3.11/test/new/gfm_del.md rename to branches/release-0.3.11/test/new/gfm_del.text diff --git a/branches/release-0.3.11/test/new/gfm_em.md b/branches/release-0.3.11/test/new/gfm_em.text similarity index 100% rename from branches/release-0.3.11/test/new/gfm_em.md rename to branches/release-0.3.11/test/new/gfm_em.text diff --git a/branches/release-0.3.11/test/new/gfm_hashtag.html b/branches/release-0.3.11/test/new/gfm_hashtag.gfm.html similarity index 100% rename from branches/release-0.3.11/test/new/gfm_hashtag.html rename to branches/release-0.3.11/test/new/gfm_hashtag.gfm.html diff --git a/branches/release-0.3.11/test/new/gfm_hashtag.md b/branches/release-0.3.11/test/new/gfm_hashtag.gfm.text similarity index 63% rename from branches/release-0.3.11/test/new/gfm_hashtag.md rename to branches/release-0.3.11/test/new/gfm_hashtag.gfm.text index 5eb26bf..7656ecf 100644 --- a/branches/release-0.3.11/test/new/gfm_hashtag.md +++ b/branches/release-0.3.11/test/new/gfm_hashtag.gfm.text @@ -1,6 +1,3 @@ ---- -gfm: true ---- #header # header1 diff --git a/branches/release-0.3.11/test/new/nogfm_hashtag.html b/branches/release-0.3.11/test/new/gfm_hashtag.nogfm.html similarity index 100% rename from branches/release-0.3.11/test/new/nogfm_hashtag.html rename to branches/release-0.3.11/test/new/gfm_hashtag.nogfm.html diff --git a/branches/release-0.3.11/test/new/nogfm_hashtag.md b/branches/release-0.3.11/test/new/gfm_hashtag.nogfm.text similarity index 62% rename from branches/release-0.3.11/test/new/nogfm_hashtag.md rename to branches/release-0.3.11/test/new/gfm_hashtag.nogfm.text index 4b805db..7656ecf 100644 --- a/branches/release-0.3.11/test/new/nogfm_hashtag.md +++ b/branches/release-0.3.11/test/new/gfm_hashtag.nogfm.text @@ -1,6 +1,3 @@ ---- -gfm: false ---- #header # header1 diff --git a/branches/release-0.3.11/test/new/gfm_links.md b/branches/release-0.3.11/test/new/gfm_links.text similarity index 100% rename from branches/release-0.3.11/test/new/gfm_links.md rename to branches/release-0.3.11/test/new/gfm_links.text diff --git a/branches/release-0.3.11/test/new/gfm_tables.md b/branches/release-0.3.11/test/new/gfm_tables.text similarity index 100% rename from branches/release-0.3.11/test/new/gfm_tables.md rename to branches/release-0.3.11/test/new/gfm_tables.text diff --git a/branches/release-0.3.11/test/new/hr_list_break.md b/branches/release-0.3.11/test/new/hr_list_break.text similarity index 100% rename from branches/release-0.3.11/test/new/hr_list_break.md rename to branches/release-0.3.11/test/new/hr_list_break.text diff --git a/branches/release-0.3.11/test/new/lazy_blockquotes.md b/branches/release-0.3.11/test/new/lazy_blockquotes.text similarity index 100% rename from branches/release-0.3.11/test/new/lazy_blockquotes.md rename to branches/release-0.3.11/test/new/lazy_blockquotes.text diff --git a/branches/release-0.3.11/test/new/list_item_text.md b/branches/release-0.3.11/test/new/list_item_text.text similarity index 100% rename from branches/release-0.3.11/test/new/list_item_text.md rename to branches/release-0.3.11/test/new/list_item_text.text diff --git a/branches/release-0.3.11/test/new/loose_lists.md b/branches/release-0.3.11/test/new/loose_lists.text similarity index 100% rename from branches/release-0.3.11/test/new/loose_lists.md rename to branches/release-0.3.11/test/new/loose_lists.text diff --git a/branches/release-0.3.11/test/new/main.md b/branches/release-0.3.11/test/new/main.text similarity index 100% rename from branches/release-0.3.11/test/new/main.md rename to branches/release-0.3.11/test/new/main.text diff --git a/branches/release-0.3.11/test/new/nested_code.md b/branches/release-0.3.11/test/new/nested_code.text similarity index 100% rename from branches/release-0.3.11/test/new/nested_code.md rename to branches/release-0.3.11/test/new/nested_code.text diff --git a/branches/release-0.3.11/test/new/nested_em.md b/branches/release-0.3.11/test/new/nested_em.text similarity index 100% rename from branches/release-0.3.11/test/new/nested_em.md rename to branches/release-0.3.11/test/new/nested_em.text diff --git a/branches/release-0.3.11/test/new/nested_square_link.md b/branches/release-0.3.11/test/new/nested_square_link.text similarity index 100% rename from branches/release-0.3.11/test/new/nested_square_link.md rename to branches/release-0.3.11/test/new/nested_square_link.text diff --git a/branches/release-0.3.11/test/new/not_a_link.md b/branches/release-0.3.11/test/new/not_a_link.text similarity index 100% rename from branches/release-0.3.11/test/new/not_a_link.md rename to branches/release-0.3.11/test/new/not_a_link.text diff --git a/branches/release-0.3.11/test/new/ref_paren.md b/branches/release-0.3.11/test/new/ref_paren.text similarity index 100% rename from branches/release-0.3.11/test/new/ref_paren.md rename to branches/release-0.3.11/test/new/ref_paren.text diff --git a/branches/release-0.3.11/test/new/same_bullet.md b/branches/release-0.3.11/test/new/same_bullet.text similarity index 100% rename from branches/release-0.3.11/test/new/same_bullet.md rename to branches/release-0.3.11/test/new/same_bullet.text diff --git a/branches/release-0.3.11/test/new/text.smartypants.html b/branches/release-0.3.11/test/new/text.smartypants.html new file mode 100644 index 0000000..22997c4 --- /dev/null +++ b/branches/release-0.3.11/test/new/text.smartypants.html @@ -0,0 +1,6 @@ +foo bar -[1]: foo bar
Hello world ‘how’ “are” you — today…
+ +“It’s a more ‘challenging’ smartypants test…”
+ +‘And,’ as a bonus — “one +multiline” test!
diff --git a/branches/release-0.3.11/test/new/text.smartypants.text b/branches/release-0.3.11/test/new/text.smartypants.text new file mode 100644 index 0000000..d91c8dc --- /dev/null +++ b/branches/release-0.3.11/test/new/text.smartypants.text @@ -0,0 +1,6 @@ +Hello world 'how' "are" you -- today... + +"It's a more 'challenging' smartypants test..." + +'And,' as a bonus -- "one +multiline" test! diff --git a/branches/release-0.3.11/test/new/toplevel_paragraphs.gfm.html b/branches/release-0.3.11/test/new/toplevel_paragraphs.gfm.html new file mode 100644 index 0000000..970c6f1 --- /dev/null +++ b/branches/release-0.3.11/test/new/toplevel_paragraphs.gfm.html @@ -0,0 +1,34 @@ +hello world + how are you + how are you
+ +hello world
+how are you
+
+hello world
+hello world
+hello world
+hello world
++ +how are you
hello world
+hello world
+hello world +how are you
+ +hello world +
+ +hello
diff --git a/branches/release-0.3.11/test/new/toplevel_paragraphs.gfm.text b/branches/release-0.3.11/test/new/toplevel_paragraphs.gfm.text new file mode 100644 index 0000000..66366c0 --- /dev/null +++ b/branches/release-0.3.11/test/new/toplevel_paragraphs.gfm.text @@ -0,0 +1,37 @@ +hello world + how are you + how are you + +hello world +``` +how are you +``` + +hello world +* * * + +hello world +# how are you + +hello world +how are you +=========== + +hello world +> how are you + +hello world +* how are you + +hello world +AT&T has an ampersand in their name.
+ +AT&T is another way to write it.
+ +This & that.
+ +4 < 5.
+ +6 > 5.
+ +Here's a link with an ampersand in the URL.
+ +Here's a link with an amersand in the link text: AT&T.
+ +Here's an inline link.
+ +Here's an inline link.
diff --git a/branches/release-0.3.11/test/tests/amps_and_angles_encoding.text b/branches/release-0.3.11/test/tests/amps_and_angles_encoding.text new file mode 100644 index 0000000..89ec3ae --- /dev/null +++ b/branches/release-0.3.11/test/tests/amps_and_angles_encoding.text @@ -0,0 +1,21 @@ +AT&T has an ampersand in their name. + +AT&T is another way to write it. + +This & that. + +4 < 5. + +6 > 5. + +Here's a [link] [1] with an ampersand in the URL. + +Here's a link with an amersand in the link text: [AT&T] [2]. + +Here's an inline [link](/script?foo=1&bar=2). + +Here's an inline [link](). + + +[1]: http://example.com/?foo=1&bar=2 +[2]: http://att.com/ "AT&T" diff --git a/branches/release-0.3.11/test/tests/auto_links.html b/branches/release-0.3.11/test/tests/auto_links.html new file mode 100644 index 0000000..f8df985 --- /dev/null +++ b/branches/release-0.3.11/test/tests/auto_links.html @@ -0,0 +1,18 @@ +Link: http://example.com/.
+ +With an ampersand: http://example.com/?foo=1&bar=2
+ +++ +Blockquoted: http://example.com/
+
Auto-links should not occur here: <http://example.com/>
or here: <http://example.com/>
+
diff --git a/branches/release-0.3.11/test/tests/auto_links.text b/branches/release-0.3.11/test/tests/auto_links.text
new file mode 100644
index 0000000..f85767b
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/auto_links.text
@@ -0,0 +1,13 @@
+Link: hello world +http://example.com +
diff --git a/branches/release-0.3.11/test/tests/autolink_lines.text b/branches/release-0.3.11/test/tests/autolink_lines.text new file mode 100644 index 0000000..c9b61a2 --- /dev/null +++ b/branches/release-0.3.11/test/tests/autolink_lines.text @@ -0,0 +1,2 @@ +hello world +These should all get escaped:
+ +Backslash: \
+ +Backtick: `
+ +Asterisk: *
+ +Underscore: _
+ +Left brace: {
+ +Right brace: }
+ +Left bracket: [
+ +Right bracket: ]
+ +Left paren: (
+ +Right paren: )
+ +Greater-than: >
+ +Hash: #
+ +Period: .
+ +Bang: !
+ +Plus: +
+ +Minus: -
+ +These should not, because they occur within a code block:
+ +Backslash: \\
+
+Backtick: \`
+
+Asterisk: \*
+
+Underscore: \_
+
+Left brace: \{
+
+Right brace: \}
+
+Left bracket: \[
+
+Right bracket: \]
+
+Left paren: \(
+
+Right paren: \)
+
+Greater-than: \>
+
+Hash: \#
+
+Period: \.
+
+Bang: \!
+
+Plus: \+
+
+Minus: \-
+
+
+Nor should these, which occur in code spans:
+ +Backslash: \\
Backtick: \`
Asterisk: \*
Underscore: \_
Left brace: \{
Right brace: \}
Left bracket: \[
Right bracket: \]
Left paren: \(
Right paren: \)
Greater-than: \>
Hash: \#
Period: \.
Bang: \!
Plus: \+
Minus: \-
These should get escaped, even though they're matching pairs for +other Markdown constructs:
+ +*asterisks*
+ +_underscores_
+ +`backticks`
+ +This is a code span with a literal backslash-backtick sequence: \`
This is a tag with unescaped backticks bar.
+ +This is a tag with backslashes bar.
diff --git a/branches/release-0.3.11/test/tests/backslash_escapes.text b/branches/release-0.3.11/test/tests/backslash_escapes.text new file mode 100644 index 0000000..5b014cb --- /dev/null +++ b/branches/release-0.3.11/test/tests/backslash_escapes.text @@ -0,0 +1,120 @@ +These should all get escaped: + +Backslash: \\ + +Backtick: \` + +Asterisk: \* + +Underscore: \_ + +Left brace: \{ + +Right brace: \} + +Left bracket: \[ + +Right bracket: \] + +Left paren: \( + +Right paren: \) + +Greater-than: \> + +Hash: \# + +Period: \. + +Bang: \! + +Plus: \+ + +Minus: \- + + + +These should not, because they occur within a code block: + + Backslash: \\ + + Backtick: \` + + Asterisk: \* + + Underscore: \_ + + Left brace: \{ + + Right brace: \} + + Left bracket: \[ + + Right bracket: \] + + Left paren: \( + + Right paren: \) + + Greater-than: \> + + Hash: \# + + Period: \. + + Bang: \! + + Plus: \+ + + Minus: \- + + +Nor should these, which occur in code spans: + +Backslash: `\\` + +Backtick: `` \` `` + +Asterisk: `\*` + +Underscore: `\_` + +Left brace: `\{` + +Right brace: `\}` + +Left bracket: `\[` + +Right bracket: `\]` + +Left paren: `\(` + +Right paren: `\)` + +Greater-than: `\>` + +Hash: `\#` + +Period: `\.` + +Bang: `\!` + +Plus: `\+` + +Minus: `\-` + + +These should get escaped, even though they're matching pairs for +other Markdown constructs: + +\*asterisks\* + +\_underscores\_ + +\`backticks\` + +This is a code span with a literal backslash-backtick sequence: `` \` `` + +This is a tag with unescaped backticks bar. + +This is a tag with backslashes bar. diff --git a/branches/release-0.3.11/test/tests/blockquote_list_item.html b/branches/release-0.3.11/test/tests/blockquote_list_item.html new file mode 100644 index 0000000..83cf0bd --- /dev/null +++ b/branches/release-0.3.11/test/tests/blockquote_list_item.html @@ -0,0 +1,3 @@ +This fails in markdown.pl and upskirt:
+ +world
+diff --git a/branches/release-0.3.11/test/tests/blockquotes_with_code_blocks.text b/branches/release-0.3.11/test/tests/blockquotes_with_code_blocks.text new file mode 100644 index 0000000..c31d171 --- /dev/null +++ b/branches/release-0.3.11/test/tests/blockquotes_with_code_blocks.text @@ -0,0 +1,11 @@ +> Example: +> +> sub status { +> print "working"; +> } +> +> Or: +> +> sub status { +> return "working"; +> } diff --git a/branches/release-0.3.11/test/tests/case_insensitive_refs.html b/branches/release-0.3.11/test/tests/case_insensitive_refs.html new file mode 100644 index 0000000..c54388e --- /dev/null +++ b/branches/release-0.3.11/test/tests/case_insensitive_refs.html @@ -0,0 +1 @@ + diff --git a/branches/release-0.3.11/test/tests/case_insensitive_refs.text b/branches/release-0.3.11/test/tests/case_insensitive_refs.text new file mode 100644 index 0000000..598915a --- /dev/null +++ b/branches/release-0.3.11/test/tests/case_insensitive_refs.text @@ -0,0 +1,3 @@ +[hi] + +[HI]: /url diff --git a/branches/release-0.3.11/test/tests/code_blocks.html b/branches/release-0.3.11/test/tests/code_blocks.html new file mode 100644 index 0000000..32703f5 --- /dev/null +++ b/branches/release-0.3.11/test/tests/code_blocks.html @@ -0,0 +1,18 @@ +Example:
+ ++ +sub status { + print "working"; +} +
Or:
+ ++sub status { + return "working"; +} +
code block on the first line
+
+
+Regular text.
+ +code block indented by spaces
+
+
+Regular text.
+ +the lines in this block
+all contain trailing spaces
+
+
+Regular Text.
+ +code block on the last line
+
diff --git a/branches/release-0.3.11/test/tests/code_blocks.text b/branches/release-0.3.11/test/tests/code_blocks.text
new file mode 100644
index 0000000..01f9a73
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/code_blocks.text
@@ -0,0 +1,14 @@
+ code block on the first line
+
+Regular text.
+
+ code block indented by spaces
+
+Regular text.
+
+ the lines in this block
+ all contain trailing spaces
+
+Regular Text.
+
+ code block on the last line
diff --git a/branches/release-0.3.11/test/tests/code_spans.html b/branches/release-0.3.11/test/tests/code_spans.html
new file mode 100644
index 0000000..860e97c
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/code_spans.html
@@ -0,0 +1,6 @@
+<test a="
content of attribute ">
Fix for backticks within HTML tag: like this
+ +Here's how you put `backticks`
in a code span.
++ +hello +[1]: hello
+
++ + +hello +[2]: hello
+
+diff --git a/branches/release-0.3.11/test/tests/def_blocks.text b/branches/release-0.3.11/test/tests/def_blocks.text new file mode 100644 index 0000000..4d16292 --- /dev/null +++ b/branches/release-0.3.11/test/tests/def_blocks.text @@ -0,0 +1,21 @@ +> hello +> [1]: hello + +* * * + +> hello +[2]: hello + + +* hello +* [3]: hello + + +* hello +[4]: hello + + +> foo +> bar +[1]: foo +> bar diff --git a/branches/release-0.3.11/test/tests/double_link.html b/branches/release-0.3.11/test/tests/double_link.html new file mode 100644 index 0000000..ff68395 --- /dev/null +++ b/branches/release-0.3.11/test/tests/double_link.html @@ -0,0 +1,5 @@ +foo +bar +[1]: foo +bar
+
Already linked: http://example.com/.
+ +Already linked: http://example.com/.
+ +Already linked: http://example.com/.
diff --git a/branches/release-0.3.11/test/tests/double_link.text b/branches/release-0.3.11/test/tests/double_link.text new file mode 100644 index 0000000..5021673 --- /dev/null +++ b/branches/release-0.3.11/test/tests/double_link.text @@ -0,0 +1,5 @@ +Already linked: http://example.com/.
+ +Already linked: [http://example.com/](http://example.com/). + +Already linked: **http://example.com/**. diff --git a/branches/release-0.3.11/test/tests/escaped_angles.html b/branches/release-0.3.11/test/tests/escaped_angles.html new file mode 100644 index 0000000..7cf47c4 --- /dev/null +++ b/branches/release-0.3.11/test/tests/escaped_angles.html @@ -0,0 +1 @@ +>
diff --git a/branches/release-0.3.11/test/tests/escaped_angles.text b/branches/release-0.3.11/test/tests/escaped_angles.text new file mode 100644 index 0000000..db7422f --- /dev/null +++ b/branches/release-0.3.11/test/tests/escaped_angles.text @@ -0,0 +1 @@ +\> diff --git a/branches/release-0.3.11/test/tests/gfm_break.breaks.html b/branches/release-0.3.11/test/tests/gfm_break.breaks.html new file mode 100644 index 0000000..398ba01 --- /dev/null +++ b/branches/release-0.3.11/test/tests/gfm_break.breaks.html @@ -0,0 +1 @@ +Look at the
pretty line
breaks.
var a = 'hello';
+console.log(a + ' world');
+echo "hello, ${WORLD}"
+Q: What do you call a tall person who sells stolen goods?
+A longfence!
+How about an empty code block?
+
+How about a code block with only an empty line?
+
+
diff --git a/branches/release-0.3.11/test/tests/gfm_code.text b/branches/release-0.3.11/test/tests/gfm_code.text
new file mode 100644
index 0000000..ca46c1f
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/gfm_code.text
@@ -0,0 +1,27 @@
+``` js
+var a = 'hello';
+console.log(a + ' world');
+```
+
+~~~bash
+echo "hello, ${WORLD}"
+~~~
+
+```````longfence
+Q: What do you call a tall person who sells stolen goods?
+```````
+
+~~~~~~~~~~ ManyTildes
+A longfence!
+~~~~~~~~~~
+
+How about an empty code block?
+
+```js
+```
+
+How about a code block with only an empty line?
+
+```js
+
+```
diff --git a/branches/release-0.3.11/test/tests/gfm_code_hr_list.html b/branches/release-0.3.11/test/tests/gfm_code_hr_list.html
new file mode 100644
index 0000000..9fbd0fb
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/gfm_code_hr_list.html
@@ -0,0 +1,52 @@
+bar:
++++
+- one
++
+- two
++
+- three
+- four
+- five
+
foo:
+ line 1
+ line 2
+foo:
+foo bar
bar:
some code here
+
+foo bar
bar:
foo
+ ---
+ bar
+ ---
+ foo
+ bar
+foo bar
bar:
---
+ foo
+ foo
+ ---
+ bar
+foo bar
bar:
foo
+ ---
+ bar
+foo
+hello hi world
These words should_not_be_emphasized.
diff --git a/branches/release-0.3.11/test/tests/gfm_em.text b/branches/release-0.3.11/test/tests/gfm_em.text new file mode 100644 index 0000000..6319874 --- /dev/null +++ b/branches/release-0.3.11/test/tests/gfm_em.text @@ -0,0 +1 @@ +These words should_not_be_emphasized. diff --git a/branches/release-0.3.11/test/tests/gfm_hashtag.gfm.html b/branches/release-0.3.11/test/tests/gfm_hashtag.gfm.html new file mode 100644 index 0000000..6f9e43f --- /dev/null +++ b/branches/release-0.3.11/test/tests/gfm_hashtag.gfm.html @@ -0,0 +1,5 @@ +#header
+ +This should be a link: +http://example.com/hello-world.
diff --git a/branches/release-0.3.11/test/tests/gfm_links.text b/branches/release-0.3.11/test/tests/gfm_links.text new file mode 100644 index 0000000..c133666 --- /dev/null +++ b/branches/release-0.3.11/test/tests/gfm_links.text @@ -0,0 +1 @@ +This should be a link: http://example.com/hello-world. diff --git a/branches/release-0.3.11/test/tests/gfm_tables.html b/branches/release-0.3.11/test/tests/gfm_tables.html new file mode 100644 index 0000000..70bec82 --- /dev/null +++ b/branches/release-0.3.11/test/tests/gfm_tables.html @@ -0,0 +1,37 @@ +Heading 1 | Heading 2 |
---|---|
Cell 1 | Cell 2 |
Cell 3 | Cell 4 |
Header 1 | Header 2 | Header 3 | Header 4 |
---|---|---|---|
Cell 1 | Cell 2 | Cell 3 | Cell 4 |
Cell 5 | Cell 6 | Cell 7 | Cell 8 |
Test code
+Header 1 | Header 2 |
---|---|
Cell 1 | Cell 2 |
Cell 3 | Cell 4 |
Header 1 | Header 2 | Header 3 | Header 4 |
---|---|---|---|
Cell 1 | Cell 2 | Cell 3 | Cell 4 |
Cell 5 | Cell 6 | Cell 7 | Cell 8 |
In Markdown 1.0.0 and earlier. Version +8. This line turns into a list item. +Because a hard-wrapped line in the +middle of a paragraph looked like a +list item.
+ +Here's one with a bullet. +* criminey.
diff --git a/branches/release-0.3.11/test/tests/hard_wrapped_paragraphs_with_list_like_lines.nogfm.text b/branches/release-0.3.11/test/tests/hard_wrapped_paragraphs_with_list_like_lines.nogfm.text new file mode 100644 index 0000000..f8a5b27 --- /dev/null +++ b/branches/release-0.3.11/test/tests/hard_wrapped_paragraphs_with_list_like_lines.nogfm.text @@ -0,0 +1,8 @@ +In Markdown 1.0.0 and earlier. Version +8. This line turns into a list item. +Because a hard-wrapped line in the +middle of a paragraph looked like a +list item. + +Here's one with a bullet. +* criminey. diff --git a/branches/release-0.3.11/test/tests/horizontal_rules.html b/branches/release-0.3.11/test/tests/horizontal_rules.html new file mode 100644 index 0000000..e60d4ba --- /dev/null +++ b/branches/release-0.3.11/test/tests/horizontal_rules.html @@ -0,0 +1,71 @@ +Dashes:
+ +---
+
+
+- - -
+
+
+Asterisks:
+ +***
+
+
+* * *
+
+
+Underscores:
+ +___
+
+
+_ _ _
+
diff --git a/branches/release-0.3.11/test/tests/horizontal_rules.text b/branches/release-0.3.11/test/tests/horizontal_rules.text
new file mode 100644
index 0000000..1594bda
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/horizontal_rules.text
@@ -0,0 +1,67 @@
+Dashes:
+
+---
+
+ ---
+
+ ---
+
+ ---
+
+ ---
+
+- - -
+
+ - - -
+
+ - - -
+
+ - - -
+
+ - - -
+
+
+Asterisks:
+
+***
+
+ ***
+
+ ***
+
+ ***
+
+ ***
+
+* * *
+
+ * * *
+
+ * * *
+
+ * * *
+
+ * * *
+
+
+Underscores:
+
+___
+
+ ___
+
+ ___
+
+ ___
+
+ ___
+
+_ _ _
+
+ _ _ _
+
+ _ _ _
+
+ _ _ _
+
+ _ _ _
diff --git a/branches/release-0.3.11/test/tests/hr_list_break.html b/branches/release-0.3.11/test/tests/hr_list_break.html
new file mode 100644
index 0000000..bd3ad1f
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/hr_list_break.html
@@ -0,0 +1,10 @@
+you today?
diff --git a/branches/release-0.3.11/test/tests/hr_list_break.text b/branches/release-0.3.11/test/tests/hr_list_break.text new file mode 100644 index 0000000..036fe47 --- /dev/null +++ b/branches/release-0.3.11/test/tests/hr_list_break.text @@ -0,0 +1,6 @@ +* hello +world +* how +are +* * * +you today? diff --git a/branches/release-0.3.11/test/tests/inline_html_advanced.html b/branches/release-0.3.11/test/tests/inline_html_advanced.html new file mode 100644 index 0000000..3af9caf --- /dev/null +++ b/branches/release-0.3.11/test/tests/inline_html_advanced.html @@ -0,0 +1,15 @@ +Simple block on one line:
+ +And nested without indentation:
+ +Paragraph one.
+ + + + + +Paragraph two.
+ + + +The end.
diff --git a/branches/release-0.3.11/test/tests/inline_html_comments.text b/branches/release-0.3.11/test/tests/inline_html_comments.text new file mode 100644 index 0000000..41d830d --- /dev/null +++ b/branches/release-0.3.11/test/tests/inline_html_comments.text @@ -0,0 +1,13 @@ +Paragraph one. + + + + + +Paragraph two. + + + +The end. diff --git a/branches/release-0.3.11/test/tests/inline_html_simple.html b/branches/release-0.3.11/test/tests/inline_html_simple.html new file mode 100644 index 0000000..35c827d --- /dev/null +++ b/branches/release-0.3.11/test/tests/inline_html_simple.html @@ -0,0 +1,72 @@ +Here's a simple block:
+ +This should be a code block, though:
+ +<div>
+ foo
+</div>
+
+
+As should this:
+ +<div>foo</div>
+
+
+Now, nested:
+ +This should just be an HTML comment:
+ + + +Multiline:
+ + + +Code block:
+ +<!-- Comment -->
+
+
+Just plain comment, with trailing spaces on the line:
+ + + +Code:
+ +<hr>
+
+
+Hr's:
+ ++diff --git a/branches/release-0.3.11/test/tests/lazy_blockquotes.text b/branches/release-0.3.11/test/tests/lazy_blockquotes.text new file mode 100644 index 0000000..c0e0b15 --- /dev/null +++ b/branches/release-0.3.11/test/tests/lazy_blockquotes.text @@ -0,0 +1,2 @@ +> hi there +bud diff --git a/branches/release-0.3.11/test/new/links.html b/branches/release-0.3.11/test/tests/links.sanitize.html similarity index 100% rename from branches/release-0.3.11/test/new/links.html rename to branches/release-0.3.11/test/tests/links.sanitize.html diff --git a/branches/release-0.3.11/test/new/links.md b/branches/release-0.3.11/test/tests/links.sanitize.text similarity index 87% rename from branches/release-0.3.11/test/new/links.md rename to branches/release-0.3.11/test/tests/links.sanitize.text index 1850be4..ba5d09f 100644 --- a/branches/release-0.3.11/test/new/links.md +++ b/branches/release-0.3.11/test/tests/links.sanitize.text @@ -1,6 +1,3 @@ ---- -sanitize: true ---- [URL](javascript:alert) [URL](vbscript:alert) @@ -9,4 +6,4 @@ sanitize: true [URL](javascript:document;alert(1)) -[URL](data:text/html;base64,PHNjcmlwdD5hbGVydCgnWFNTJyk8L3NjcmlwdD4K) +[URL](data:text/html;base64,PHNjcmlwdD5hbGVydCgnWFNTJyk8L3NjcmlwdD4K) \ No newline at end of file diff --git a/branches/release-0.3.11/test/tests/links_inline_style.html b/branches/release-0.3.11/test/tests/links_inline_style.html new file mode 100644 index 0000000..09df236 --- /dev/null +++ b/branches/release-0.3.11/test/tests/links_inline_style.html @@ -0,0 +1,15 @@ +hi there +bud
+
Just a URL.
+ + + + + + + + + + + + + + diff --git a/branches/release-0.3.11/test/tests/links_inline_style.text b/branches/release-0.3.11/test/tests/links_inline_style.text new file mode 100644 index 0000000..8c8eb49 --- /dev/null +++ b/branches/release-0.3.11/test/tests/links_inline_style.text @@ -0,0 +1,15 @@ +Just a [URL](/url/). + +[URL and title](/url/ "title"). + +[URL and title](/url/ "title preceded by two spaces"). + +[URL and title](/url/ "title preceded by a tab"). + +[URL and title](/url/ "title has spaces afterward" ). + +[URL and title]( /url/has space ). + +[URL and title]( /url/has space/ "url has space and title"). + +[Empty](). diff --git a/branches/release-0.3.11/test/new/links_reference_style.html b/branches/release-0.3.11/test/tests/links_reference_style.html similarity index 100% rename from branches/release-0.3.11/test/new/links_reference_style.html rename to branches/release-0.3.11/test/tests/links_reference_style.html diff --git a/branches/release-0.3.11/test/new/links_reference_style.md b/branches/release-0.3.11/test/tests/links_reference_style.text similarity index 100% rename from branches/release-0.3.11/test/new/links_reference_style.md rename to branches/release-0.3.11/test/tests/links_reference_style.text diff --git a/branches/release-0.3.11/test/tests/links_shortcut_references.html b/branches/release-0.3.11/test/tests/links_shortcut_references.html new file mode 100644 index 0000000..bf81e93 --- /dev/null +++ b/branches/release-0.3.11/test/tests/links_shortcut_references.html @@ -0,0 +1,9 @@ +This is the simple case.
+ +This one has a line +break.
+ +This one has a line +break with a line-ending space.
+ + diff --git a/branches/release-0.3.11/test/tests/links_shortcut_references.text b/branches/release-0.3.11/test/tests/links_shortcut_references.text new file mode 100644 index 0000000..8c44c98 --- /dev/null +++ b/branches/release-0.3.11/test/tests/links_shortcut_references.text @@ -0,0 +1,20 @@ +This is the [simple case]. + +[simple case]: /simple + + + +This one has a [line +break]. + +This one has a [line +break] with a line-ending space. + +[line break]: /foo + + +[this] [that] and the [other] + +[this]: /this +[that]: /that +[other]: /other diff --git a/branches/release-0.3.11/test/tests/list_item_text.html b/branches/release-0.3.11/test/tests/list_item_text.html new file mode 100644 index 0000000..142df36 --- /dev/null +++ b/branches/release-0.3.11/test/tests/list_item_text.html @@ -0,0 +1 @@ +item1
text
Foo bar.
+ +Foo bar.
diff --git a/branches/release-0.3.11/test/tests/literal_quotes_in_titles.text b/branches/release-0.3.11/test/tests/literal_quotes_in_titles.text new file mode 100644 index 0000000..29d0e42 --- /dev/null +++ b/branches/release-0.3.11/test/tests/literal_quotes_in_titles.text @@ -0,0 +1,7 @@ +Foo [bar][]. + +Foo [bar](/url/ "Title with "quotes" inside"). + + + [bar]: /url/ "Title with "quotes" inside" + diff --git a/branches/release-0.3.11/test/tests/loose_lists.html b/branches/release-0.3.11/test/tests/loose_lists.html new file mode 100644 index 0000000..c1bd82a --- /dev/null +++ b/branches/release-0.3.11/test/tests/loose_lists.html @@ -0,0 +1,62 @@ +hello +world
+ +how +are
better behavior:
+ +hello
world +how
are +you
today
hello
world
world
hi
world
+ +how
how
+ +are
world
how
+ +are
Just a note, I've found that I can't test my markdown parser vs others. For example, both markdown.js and showdown code blocks in lists wrong. They're also completely inconsistent with regards to paragraphs in list items.
A link. Not anymore.
List Item 1
List Item 2
Code goes here.
+Lots of it...
List Item 3 The final item.
List Item 4 The real final item.
Paragraph.
- bq Item 1
- bq Item 2
- New bq Item 1
- New bq Item 2 Text here
Another blockquote! I really need to get more creative with mockup text.. markdown.js breaks here again
Hello world. Here is a link. And an image .
Code goes here.
+Lots of it...
diff --git a/branches/release-0.3.11/test/tests/main.text b/branches/release-0.3.11/test/tests/main.text
new file mode 100644
index 0000000..58e17a6
--- /dev/null
+++ b/branches/release-0.3.11/test/tests/main.text
@@ -0,0 +1,55 @@
+[test]: http://google.com/ "Google"
+
+# A heading
+
+Just a note, I've found that I can't test my markdown parser vs others.
+For example, both markdown.js and showdown code blocks in lists wrong. They're
+also completely [inconsistent][test] with regards to paragraphs in list items.
+
+A link. Not anymore.
+
+
+
+* List Item 1
+
+* List Item 2
+ * New List Item 1
+ Hi, this is a list item.
+ * New List Item 2
+ Another item
+ Code goes here.
+ Lots of it...
+ * New List Item 3
+ The last item
+
+* List Item 3
+The final item.
+
+* List Item 4
+The real final item.
+
+Paragraph.
+
+> * bq Item 1
+> * bq Item 2
+> * New bq Item 1
+> * New bq Item 2
+> Text here
+
+* * *
+
+> Another blockquote!
+> I really need to get
+> more creative with
+> mockup text..
+> markdown.js breaks here again
+
+Another Heading
+-------------
+
+Hello *world*. Here is a [link](//hello).
+And an image ![alt](src).
+
+ Code goes here.
+ Lots of it...
diff --git a/branches/release-0.3.11/test/new/mangle_xss.html b/branches/release-0.3.11/test/tests/mangle_xss.sanatize.nomangle.html
similarity index 100%
rename from branches/release-0.3.11/test/new/mangle_xss.html
rename to branches/release-0.3.11/test/tests/mangle_xss.sanatize.nomangle.html
diff --git a/branches/release-0.3.11/test/new/mangle_xss.md b/branches/release-0.3.11/test/tests/mangle_xss.sanatize.nomangle.text
similarity index 63%
rename from branches/release-0.3.11/test/new/mangle_xss.md
rename to branches/release-0.3.11/test/tests/mangle_xss.sanatize.nomangle.text
index 419bd12..c44503d 100644
--- a/branches/release-0.3.11/test/new/mangle_xss.md
+++ b/branches/release-0.3.11/test/tests/mangle_xss.sanatize.nomangle.text
@@ -1,7 +1,3 @@
----
-sanatize: true
-mangle: false
----
<