extendown

0.1.1 • Public • Published

TravisCi Build Coverage Status MIT Version

extendable markdown compiler

Features

  • Extenable
  • Github Mardown Syntax

Usage

1. install it by npm

npm install extendown

2. use it in nodejs or browser

The libray is packaged in UMD, you can import it in ES6 modules, CommonJS, AMD, etc.

3. how to use

import Extendown from 'extendown';
 
const parse = Extendown.parse;
parse(YourMarkdownString);

4. how to extend

the following code is extend a inline feature

const parse = Extendown.parse;
const extend = Extendown.extend;
const feature = {
  reg: '==(.+?)==',
  process(section) {
    return section.replace(new RegExp(feature.reg, 'g'),
    '<span style="background-color:yellow;">$1</span>');
  },
}
extend(Extdown.INLINE, feature);
parse('==color=='); 
// <p><span style="background-color:yellow;">color</span></p>

the following code is extend a block feature

const feature = {
  reg: '(?:^|\\n)@@\\n((?:[^@]*\\n)?)@@(?=\\n|$)',
  process(section) {
    return section.replace(new RegExp(feature.reg, 'g'), (match, g1) => {
      return `<article>${g1}</article>`
    });
  },
};
extend(Extdown.BLOCK, feature);
parse(`@@
<p>here is your article</p>
@@`);
// <article><p>here is your article</p>\n</article>

5. how to config

The most config is for emoji, we will provide more config in future.

You can change emoji image's url in following ways.

  1. change base path
config.emoji.path = 'https://dn-phphub.qbox.me/assets/images/emoji/';
  1. change extension
config.emoji.ext = 'gif';
  1. change your format function
config.emoji.nameFormat = function(name) {
  return `${name}test`;
};

Basic Syntax

Refer to Github Markdown

refenrence

Dependencies (0)

    Dev Dependencies (18)

    Package Sidebar

    Install

    npm i extendown

    Weekly Downloads

    1

    Version

    0.1.1

    License

    MIT

    Last publish

    Collaborators

    • jeffone