emu-algify
v2.2.0
Published
Use Ecmarkup's <emu-alg> elements in your HTML
Downloads
2,289
Maintainers
Readme
Use Ecmarkup's <emu-alg>
elements in your HTML
Ecmarkup and Ecmarkdown are great spec-writing tools, but sometimes you want to just mix in a little bit of Ecmarkup—the <emu-alg>
element—without committing wholesale to Ecmarkup's spec-writing framework. <emu-alg>
then gives you Ecmarkdown-interpreted algorithms, as well as autolinking against ECMAScript abstract operations and those in your own spec.
This tool lets you do that.
Usage
Emu-algify is primarily used as a command line program:
$ emu-algify --help
Use Ecmarkup's <emu-alg> elements in your HTML
emu-algify [--throwing-indicators] < input.html > output.html
Options:
-t, --throwing-indicators Add throws/nothrow indicators to headings [boolean]
--help Show help [boolean]
--version Show version number [boolean]
Throwing indicators
The bit about "throwing indicators" is mainly for Bikeshed users. If you enable it, and you write your algorithm's relevant heading like so:
<h5 aoid="DoSomethingFun" nothrow> <!-- alternately, throws -->
then emu-algify will insert something like
<span class="annotation" title="never returns an abrupt completion">nothrow</span>
right before any .self-link
elements in your heading. A fairly specialized feature, but I already wrote the code, and it's serving us well over on whatwg/streams, so there you go.
Programmatic usage
You can also use this module directly:
"use strict";
const emuAlgify = require("emu-algify");
emuAlgify(inputString, { throwingIndicators: true })
.then(outputString => { ... })
.catch(e => console.error(e.stack));