Need help with zmarkdown?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

zestedesavoir
153 Stars 46 Forks MIT License 1.1K Commits 17 Opened issues

Description

Live demo: https://zestedesavoir.github.io/zmarkdown/

Services available

!
?

Need anything else?

Contributors list

ZMarkdown

Build Status Coverage Status

This repository contains all the plugins for ZMarkdown, the Markdown engine powering Zeste de Savoir.

It is a collection of packages extending the remark processor and its MDAST syntax tree, rehype (for HTML processing) and textr (text transformation framework). It also provides MDAST to LaTeX compilation via rebber (and its plugins).

Currently, all the plugins provided only work for remark versions lesser than 13.0.0 (i.e. previous to micromark). While we intend to switch to the new system, no due date has been planned, and it requires a significant amount of work, so please be patient, or, even better, help us making the switch!

Install

Prerequisites

  • node >= 10
  • npm >= 6

Installation

  1. git clone [email protected]:zestedesavoir/zmarkdown.git
  2. npm install
  3. npm run bootstrap

This project uses Jest for testing. It is recommended to use the locally installed version using

npx
, and run Jest in watch mode when developing
npx jest --watch --notify
(
--notify
sends desktop notifications when tests run).

Useful commands

  • npm run test
    : tests all packages.
  • npm run clean
    : clears local dependencies, reinstalls the project and runs all tests.
  • npm run lint
    : runs eslint to check the syntax of the full codebase.
  • npm run build
    : builds packages using babel.
  • npm run build -- --scope=
    : same as above, but builds only
    .

Packages

A MDAST tool to split a markdown tree into list of subtrees representing the chapters. It relies on heading depth.

transformation of MDAST into

latex
code. This code must be included inside a custom latex to be compiled. Have a look at
https://github.com/zestedesavoir/latex-template/blob/master/zmdocument.cls
to get a working example.

This plugin parses

*[ABBR]: abbr definition
and then replace all ABBR instance in text with a new MDAST node so that
rehype
can parse it into
abbr
html tag.

This plugin adds a

title
attribute to the footnote links, mainly for accessibility purpose.

This plugin wraps (multi-line) raw HTML in

p
.

This plugin parses custom Markdown syntax to center- or right-align elements.

Allow to add caption to such element as image, table or blockquote.

This plugin parses custom Markdown syntax for Markdown source comments.

This plugin parses custom Markdown syntax to create new custom blocks.

This plugins replaces ASCII emoticons with associated image. Compatible with rehype

This plugin escapes HTML entities from Markdown input.

This plugin parses custom Markdown syntax to describe tables.

Allows to shift heading to custimize the way you will integrate the generated tree inside your application.

This plugin removes trailing spaces from Markdown headers.

Allows to add

iframe
inclusion through
!(url)
code.

This plugin parses custom Markdown syntax to handle keyboard keys.

This plugin changes how mdast footnotes are displayed by using sequential numbers as footnote references instead of user-specified strings.

This plugin parses custom Markdown syntax to handle subscript and superscript.

Micro module to fix a common typographic issue that is hard to fix with most keyboard layouts.

Micro module to replace

%o
with
and optionally replace the preceding space.

Fully integrated package to be used in zeste de savoir website

License

MIT © Zeste de Savoir

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.