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

Package Sidebar

Install

npm i extendown

Weekly Downloads

1

Version

0.1.1

License

MIT

Last publish

Collaborators

  • jeffone