@earlytexts/markit
v3.2.2
Published
Markit is a lightweight textual markup language similar to Markdown, but designed for use in textual preservation projects, as a more human-readable alternative to TEI XML. It compiles to JSON for representing document structure and metadata, while the te
Readme
Markit
Markit is a textual markup language similar to Markdown, but designed for use in textual preservation projects, as a more human-readable alternative to TEI XML. It compiles to JSON for representing document structure and metadata, while the text content itself can then be further compiled to either plain text or HTML.
Markit comes with a VS Code extension which supports syntax highlighting, block folding, in-editor error reporting, and a live preview of the rendered HTML output.
How to Use
- Install Microsoft's VS Code editor.
- Install the vscode-markit extension.
- Write your Markit document in a
.mitfile, following the syntax specified in the specification. - Preview the rendered HTML output using the live preview feature (
Cmd+Shift+VorCtrl+Shift+V). - Compile your Markit document to JSON, HTML, or plain text using the provided commands (
Cmd+Shift+PorCtrl+Shift+Pto open the command palette, then search for "Markit: Compile to JSON/HTML/Text").
Markit Syntax
- See the specification for a complete description of the Markit syntax.
- See the example.mit file for a sample Markit document demonstrating all the features.
Programmatic Use (Advanced)
The Markit compiler is written in TypeScript and can be used programmatically in your own projects. You can install it via npm:
npm install @earlytexts/markitThen you can import the compiler functions in your code:
import { compile, renderHTML, renderText } from "@earlytexts/markit";
const markitInput = `...`; // your Markit document as a string
const [document, errors] = compile(markitInput);
const htmlOutput = renderHTML(document);
const textOutput = renderText(document);The compile function returns a tuple of the form [document, errors], where document is the compiled result and errors is an array of any syntax errors encountered during compilation. The document is always produced even if there are errors, so you can choose to use it anyway (e.g. for a best-effort preview), but you should always check the errors array to see if there were any issues with the input.
The two functions renderHTML and renderText take a compiled document and return a string - either an HTML representation of the document or plain text.
