Skip to content

Commit

Permalink
tools: introduce [email protected]
Browse files Browse the repository at this point in the history
PR-URL: #12756
Reviewed-By: Refael Ackermann <[email protected]>
Reviewed-By: Vse Mozhet Byt <[email protected]>
Reviewed-By: James M Snell <[email protected]>
Reviewed-By: Sakthipriyan Vairamani <[email protected]>
  • Loading branch information
watilde committed Oct 25, 2017
1 parent cecbb59 commit 503342e
Show file tree
Hide file tree
Showing 3 changed files with 177 additions and 0 deletions.
34 changes: 34 additions & 0 deletions tools/remark-cli/cli.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/usr/bin/env node
/**
* @author Titus Wormer
* @copyright 2015 Titus Wormer
* @license MIT
* @module remark:cli
* @fileoverview CLI to process markdown.
*/

'use strict';

/* Dependencies. */
var start = require('unified-args');
var extensions = require('markdown-extensions');
var processor = require('remark');
var proc = require('remark/package.json');
var cli = require('./package.json');

/* Start. */
start({
processor: processor,
name: proc.name,
description: cli.description,
version: [
proc.name + ': ' + proc.version,
cli.name + ': ' + cli.version
].join(', '),
pluginPrefix: proc.name,
presetPrefix: proc.name + '-preset',
packageField: proc.name + 'Config',
rcName: '.' + proc.name + 'rc',
ignoreName: '.' + proc.name + 'ignore',
extensions: extensions
});
32 changes: 32 additions & 0 deletions tools/remark-cli/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"name": "remark-cli",
"version": "3.0.1",
"description": "CLI to process markdown with remark using plugins",
"license": "MIT",
"keywords": [
"markdown",
"remark",
"cli",
"bin"
],
"dependencies": {
"markdown-extensions": "^1.1.0",
"remark": "^7.0.0",
"unified-args": "^3.0.0"
},
"homepage": "http://remark.js.org",
"repository": "https://github.com/wooorm/remark/tree/master/packages/remark-cli",
"bugs": "https://github.com/wooorm/remark/issues",
"author": "Titus Wormer <[email protected]> (http://wooorm.com)",
"contributors": [
"Titus Wormer <[email protected]> (http://wooorm.com)"
],
"bin": {
"remark": "cli.js"
},
"files": [
"cli.js"
],
"scripts": {},
"xo": false
}
111 changes: 111 additions & 0 deletions tools/remark-cli/readme.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
# remark-cli [![Build Status][build-badge]][build-status] [![Coverage Status][coverage-badge]][coverage-status] [![Chat][chat-badge]][chat]

Command-line interface for [**remark**][remark].

* Loads [`remark-` plugins][plugins]
* Searches for [markdown extensions][markdown-extensions]
* Ignores paths found in [`.remarkignore` files][ignore-file]
* Loads configuration from [`.remarkrc`, `.remarkrc.js` files][config-file]
* Uses configuration from [`remarkConfig` fields in `package.json`
files][config-file]

## Installation

[npm][]:

```sh
npm install remark-cli
```

## Usage

```sh
# Add a table of contents to `readme.md`
$ remark readme.md --use toc --output

# Lint markdown files in the current directory
# according to the markdown style guide.
$ remark . --use preset-lint-markdown-style-guide
```

## CLI

See [**unified-args**][unified-args], which provides the interface,
for more information on all available options.

```txt
Usage: remark [options] [path | glob ...]
CLI to process markdown with remark using plugins
Options:
-h --help output usage information
-v --version output version number
-o --output [path] specify output location
-r --rc-path <path> specify configuration file
-i --ignore-path <path> specify ignore file
-s --setting <settings> specify settings
-e --ext <extensions> specify extensions
-u --use <plugins> use plugins
-p --preset <presets> use presets
-w --watch watch for changes and reprocess
-q --quiet output only warnings and errors
-S --silent output only errors
-f --frail exit with 1 on warnings
-t --tree specify input and output as syntax tree
--file-path <path> specify path to process as
--tree-in specify input as syntax tree
--tree-out output syntax tree
--[no-]stdout specify writing to stdout (on by default)
--[no-]color specify color in report (on by default)
--[no-]config search for configuration files (on by default)
--[no-]ignore search for ignore files (on by default)
Examples:
# Process `input.md`
$ remark input.md -o output.md
# Pipe
$ remark < input.md > output.md
# Rewrite all applicable files
$ remark . -o
```

## License

[MIT][license] © [Titus Wormer][author]

<!-- Definitions -->

[build-badge]: https://img.shields.io/travis/wooorm/remark.svg

[build-status]: https://travis-ci.org/wooorm/remark

[coverage-badge]: https://img.shields.io/codecov/c/github/wooorm/remark.svg

[coverage-status]: https://codecov.io/github/wooorm/remark

[chat-badge]: https://img.shields.io/gitter/room/wooorm/remark.svg

[chat]: https://gitter.im/wooorm/remark

[license]: https://github.com/wooorm/remark/blob/master/LICENSE

[author]: http://wooorm.com

[npm]: https://docs.npmjs.com/cli/install

[remark]: https://github.com/wooorm/remark

[plugins]: https://github.com/wooorm/remark/blob/master/doc/plugins.md

[markdown-extensions]: https://github.com/sindresorhus/markdown-extensions

[config-file]: https://github.com/wooorm/unified-engine/blob/master/doc/configure.md

[ignore-file]: https://github.com/wooorm/unified-engine/blob/master/doc/ignore.md

[unified-args]: https://github.com/wooorm/unified-args#cli

0 comments on commit 503342e

Please sign in to comment.