defence-cli

3.0.1 • Public • Published
npm install --global defence-cli

Filter a README file, retaining fenced code blocks with JavaScript code, piping to Node.js for execution:

defence --info javascript,js README.md | node

Along with assert and replace-require-self, this can make for very readable npm test scripts that run code examples in your README files:

{
  "scripts": {
    "test": "defence README.md | replace-require-self | node"
  }
}

boolean-json-cnf is an example.

Without a file argument, read from standard input:

cat README.md | defence --info javascript,js | node

Retain just fenced code blocks without info strings:

cat INSTALLING.md | defence --no-info | less

Source lines outside of matching fenced code blocks are retained as blank lines, so line numbering doesn't change:

echo "\n\n\n\n\n~~~js\nthrow new Error()\n~~~" | defence | node
[stdin]:7
throw new Error()
      ^
Error
    at [stdin]:7:7
    [ ... ]

Dependencies (2)

Dev Dependencies (2)

Package Sidebar

Install

npm i defence-cli

Weekly Downloads

73

Version

3.0.1

License

MIT

Unpacked Size

4.1 kB

Total Files

5

Last publish

Collaborators

  • kemitchell