emu-algify

    2.2.0 • Public • Published

    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));

    Install

    npm i emu-algify

    DownloadsWeekly Downloads

    2

    Version

    2.2.0

    License

    WTFPL

    Last publish

    Collaborators

    • domenic