@unifiedts/engine v9.0.5
unified-engine
Engine to process multiple files with unified, allowing users to configure from the file system.
Projects
The following projects wrap the engine:
unified-args— Create CLIs for processorsunified-engine-gulp— Create Gulp pluginsunified-engine-atom— Create Atom Linters for processorsunified-language-server— Create language servers for processors
Install
This package is ESM only:
Node 12+ is needed to use it and it must be imported instead of required.
npm:
npm install unified-engineUse
The following example processes all files in the current directory with a
Markdown extension with remark, allows configuration
from .remarkrc and package.json files, ignoring files from .remarkignore
files, and more.
import {engine} from 'unified-engine'
import {remark} from 'remark'
engine(
{
processor: remark,
files: ['.'],
extensions: ['md', 'markdown', 'mkd', 'mkdn', 'mkdown'],
pluginPrefix: 'remark',
rcName: '.remarkrc',
packageField: 'remarkConfig',
ignoreName: '.remarkignore',
color: true
},
done
)
function done(error) {
if (error) throw error
}Contents
API
This package exports the following identifiers: engine.
There is no default export.
engine(options, callback)
Process files according to options and call callback when
done.
options
processor(Processor) — unified processor to transform filescwd(string, default:process.cwd()) — Directory to search files in, load plugins from, and morefiles(Array<string|VFile>, optional) — Paths or globs to files and directories, or virtual files, to processextensions(Array<string>, optional) — Iffilesmatches directories, include files withextensionsstreamIn(ReadableStream, default:process.stdin) — Stream to read from if no files are found or givenfilePath(string, optional) — File path to process the given file onstreamInasstreamOut(WritableStream, default:process.stdout) — Stream to write processed files tostreamError(WritableStream, default:process.stderr) — Stream to write the report (if any) toout(boolean, default: depends) — Whether to write the processed file tostreamOutoutput(booleanorstring, default:false) — Whether to write successfully processed files, and where toalwaysStringify(boolean, default:false) — Whether to always serialize successfully processed filestree(boolean, default:false) — Whether to treat both input and output as a syntax treetreeIn(boolean, default:tree) — Whether to treat input as a syntax treetreeOut(boolean, default:tree) — Whether to treat output as a syntax treeinspect(boolean, default:false) — Whether to output a formatted syntax treercName(string, optional) — Name of configuration files to loadpackageField(string, optional) — Property at which configuration can be found inpackage.jsonfilesdetectConfig(boolean, default: whetherrcNameorpackageFieldis given) — Whether to search for configuration filesrcPath(string, optional) — Filepath to a configuration file to loadsettings(Object, optional) — Configuration for the parser and compiler of the processorignoreName(string, optional) — Name of ignore files to loaddetectIgnore(boolean, default: whetherignoreNameis given) — Whether to search for ignore filesignorePath(string, optional) — Filepath to an ignore file to loadignorePathResolveFrom('dir'or'cwd', default:'dir') — Resolve patterns inignorePathfrom the current working directory or the file’s directoryignorePatterns(Array<string>, optional) — Patterns to ignore in addition to ignore files, if anysilentlyIgnore(boolean, default:false) — Skip given files if they are ignoredplugins(Array|Object, optional) — Plugins to usepluginPrefix(string, optional) — Optional prefix to use when searching for pluginsconfigTransform(Function, optional) — Transform config files from a different schemareporter(stringorfunction, default:import {reporter} from 'vfile-reporter') — Reporter to usereporterOptions(Object?, optional) — Config to pass to the used reportercolor(boolean, default:false) — Whether to report with ANSI color sequencessilent(boolean, default:false) — Report only fatal errorsquiet(boolean, default:silent) — Do not report successful filesfrail(boolean, default:false) — Call back with an unsuccessful (1) code on warnings as well as errors
function callback(error[, code, context])
Called when processing is complete, either with a fatal error if processing went horribly wrong (probably due to incorrect configuration), or a status code and the processing context.
Parameters
error(Error) — Fatal errorcode(number) — Either0if successful, or1if unsuccessful. The latter occurs if fatal errors happen when processing individual files, or iffrailis set and warnings occurcontext(Object) — Processing context, containing internally used information and afilesarray with the processed files
Plugins
doc/plugins.md describes in detail how plugins can add more files
to be processed and handle all transformed files.
Configuration
doc/configure.md describes in detail how configuration files
work.
Ignoring
doc/ignore.md describes in detail how ignore files work.
Security
unified-engine loads and evaluates configuration files, plugins, and presets
from the file system (often from node_modules/).
That means code that is on your file system runs.
Make sure you trust the workspace where you run unified-engine and be careful
with packages from npm and changes made by contributors.
Contribute
See contributing.md in unifiedjs/.github for ways
to get started.
See support.md for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.
License
4 years ago