fimd
v1.3.5
Published
Simple tool to convert markdown files to Fimfiction BBCode
Downloads
1
Readme
fimd
small CLI utility tool tool to convert markdown files to Fimfiction BBCode.
dependencies
A javascript runtime and a js package manager. When in doubt, install node.js, and npm comes bundled with node.js. This package will officially support latest node 18 and later major versions.
install
Install with package manager of choice. The package is fimd
on npm. For example:
npm install -g fimd
updating
Update using your package manager's upgrade command, for example:
npm update -g fimd
Alternatively, install it again:
npm install -g fimd@latest
usage
Simplest usage is to specify an input file and an output file:
fimd in.md out.txt
You may only supply an input file, then the output file will be printed to stdout, which will show up in the terminal and can also be piped.
fimd in.md
You can supply pairs of input and output files for bulk conversion. The amount of arguments must be even (ie. all input files must have one output file, so no printing to stdout).
fimd in1.md out1.txt input-2.md output-2.txt my-story.md my-story-converted.txt
CLI options
--file-encoding
Sets input file encoding. Output is always in utf-8
. Supported options are what node's BufferEncoding
supports, which includes ascii
, utf8
, utf16le
, ucs2
, base64
, base64url
, latin1
, binary
, or hex
. When in doubt, don't touch this.
programmatic usage
Made it possible even though I dunno why you would. Installable as a standard npm package (fimd
), ESM only, exposing the function process_md
and the remark plugin (unified plugin???) remark_fimd
.
process_md
Takes one parameter, the markdown string to process, and returns a promise (unified
API returns a promise for some reason) that resolves to the type Result
:
type Success = {
success: true;
messages: Array<VFileMessage>; // import("vfile-message").VFileMessage
result: string;
};
type Failure = {
success: false;
error: VFileMessage; // import("vfile-message").VFileMessage
};
type Result = Success | Failure;
remark_fimd
See this file for how its used within this package.