markdown-escape
Advanced tools
Comparing version 1.0.2 to 1.1.0
36
index.js
var replacements = [ | ||
[ /\*/g, '\\*' ], | ||
[ /#/g, '\\#' ], | ||
[ /\//g, '\\/' ], | ||
[ /\(/g, '\\(' ], | ||
[ /\)/g, '\\)' ], | ||
[ /\[/g, '\\[' ], | ||
[ /\]/g, '\\]' ], | ||
[ /\</g, '<' ], | ||
[ /\>/g, '>' ], | ||
[ /_/g, '\\_' ] ] | ||
[/\*/g, '\\*', 'asterisks'], | ||
[/#/g, '\\#', 'number signs'], | ||
[/\//g, '\\/', 'slashes'], | ||
[/\(/g, '\\(', 'parentheses'], | ||
[/\)/g, '\\)', 'parentheses'], | ||
[/\[/g, '\\[', 'square brackets'], | ||
[/\]/g, '\\]', 'square brackets'], | ||
[/</g, '<', 'angle brackets'], | ||
[/>/g, '>', 'angle brackets'], | ||
[/_/g, '\\_', 'underscores'] | ||
] | ||
module.exports = function(string) { | ||
return replacements.reduce( | ||
function(string, replacement) { | ||
return string.replace(replacement[0], replacement[1]) | ||
}, | ||
string) } | ||
module.exports = function (string, skips) { | ||
skips = skips || [] | ||
return replacements.reduce(function (string, replacement) { | ||
var name = replacement[2] | ||
return name && skips.indexOf(name) !== -1 | ||
? string | ||
: string.replace(replacement[0], replacement[1]) | ||
}, string) | ||
} |
{ | ||
"name": "markdown-escape", | ||
"description": "escape Markdown control characters", | ||
"version": "1.0.2", | ||
"version": "1.1.0", | ||
"author": "Kyle E. Mitchell <kyle@kemitchell.com> (https://kemitchell.com/)", | ||
"files": [ | ||
"index.js" | ||
], | ||
"devDependencies": { | ||
"jsmd-tape": "^0.1.0", | ||
"markdown-it": "^4.4.0", | ||
"tape": "^4.0.1" | ||
"commonmark": "^0.29.1", | ||
"defence-cli": "^3.0.1", | ||
"replace-require-self": "^1.1.1", | ||
"standard": "^14.3.4" | ||
}, | ||
@@ -19,5 +23,7 @@ "keywords": [ | ||
"scripts": { | ||
"pretest": "jsmd-tape README.md | sed 's!markdown-escape!./!' | sed 's!jsmd!README!' > README.js", | ||
"test": "tape README.js test.js" | ||
"lint": "standard", | ||
"test:readme": "defence -i javascript README.md | replace-require-self | node", | ||
"test:suite": "node test.js", | ||
"test": "npm run test:readme && npm run test:suite" | ||
} | ||
} |
@@ -5,3 +5,11 @@ Escape Markdown control characters. | ||
var escape = require('markdown-escape') | ||
escape("#1! We're #1!") // => "\\#1! We're \\#1!" | ||
var assert = require('assert') | ||
assert(escape("#1! We're #1!") === "\\#1! We're \\#1!") | ||
assert(escape("http://example.com") === 'http:\\/\\/example.com') | ||
assert(escape('one (1)') === 'one \\(1\\)') | ||
// Skip escaping specific characters. | ||
assert(escape('one (1)', ['parentheses']) === 'one (1)') | ||
assert(escape("http://example.com", ['slashes']) === 'http://example.com') | ||
``` |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
15
2904
4
4
21