0.1.5 • Published 3 months ago

irojs v0.1.5

Weekly downloads
-
License
MIT
Repository
-
Last release
3 months ago

This project aims to be a superset of Chris Ainsley's Iro, a development tool designed to simplify the creation of syntax highlighters.

Installation

npm install irojs

Usage

From the command line

Basic syntax:

iro compile <source> --targets=<targetlist>

Available targets:

  • textmate or tm
    • textmate.xml (default)
    • textmate.json
  • ace
    • ace.js (default)
    • ace.json
  • ast outputs the rion ast
  • all or * matches all targets
  • none only checks grammar

Use <target>.* to match all extensions.

Example:

iro compile mygrammar.iro --targets=textmate,ace -o out/

From code

Example:

import * as iro from "irojs";
// or
const iro = require("irojs");

const myGrammar = "...";

var result = iro.compile(myGrammar, { targets: ["textmate"] });

console.log(result.textmate);

Language Documentation

The documentation is still a WIP. In the meanwhile, you can access the original docs at https://web.archive.org/web/20191007073218/https://eeyo.io/iro/documentation/index.html

Development

pnpm build builds the package.

pnpm build:swc compiles the typescript source.

pnpm build:rion compiles the rion grammar.

pnpm build:type generates the type definition files.

Roadmap

  • Online editor
  • VSCode extension (language server)
  • Styles to CSS
  • HighlightJS target
  • PrismJS target
  • CodeMirror target
0.1.2

3 months ago

0.1.4

3 months ago

0.1.3

3 months ago

0.1.5

3 months ago

0.1.1

2 years ago

0.1.0

2 years ago