vi-kon/laravel-parser-markdown

This package is abandoned and no longer maintained. No replacement package was suggested.

Markdown parser for Laravel 5

v1.1.1 2016-05-03 08:46 UTC

This package is not auto-updated.

Last update: 2021-03-05 21:40:16 UTC


README

This is Laravel 5 package for parsing markdown files or strings. Supports booth Traditional Markdown and Github Flavored Markdown syntaxes.

Table of content

Back to top

Todo

  • Fix incoming bugs
  • Finish documentation

Back to top

Features

  • Supports Traditional and GFM markdown syntax
  • Easy to add new rules and skins

Back to top

Installation

Via composer run following command in your project root:

composer require vi-kon/laravel-markdown-parser

In your Laravel 5 project add following lines to app.php:

// to your providers array
'ViKon\ParserMarkdown\ParserMarkdownServiceProvider',

Back to top

Usage

First need to create classes and set markdown rules:

$parser = new Parser();
$lexer = new Lexer();
$renderer = new Renderer();

// Initialize parser with markdown rules
$ruleSet = new MarkdownRuleSet();
$ruleSet->init($parser, $lexer);

After it need to set renderer. There are multiple skins, bootstrap and markdown.

// Set bootstrap renderer
$bootstrapSkin = new BootstrapSkin();
$bootstrapSkin->init($parser, $renderer);

// Set markdown renderer
$markdownSkin = new MarkdownSkin();
$markdownSkin->init($parser, $renderer);

The bootstrap skin outputs HTML content with Bootstrap tags and styles.

The markdown skin simply outputs markdown content. So this is mainly for testing purposes.

Syntax

Paragraphs and Line breaks

The paragraph handling is depending which parser role is set (traditional or gfm).

If parser mode is traditional then paragraph is simply one or more consecutive lines of text, separated by one or more blank lines.

If parser mode is gfm then above rule is apply, but single newline open separate line in same paragraph.

Here's a line for us to start with.

This line is separated from the one above by two newlines, so it will be a **separate paragraph**.

This line is also a separate paragraph, but...
This line is only separated by a single newline, so it's a separate line in the **same paragraph**.

Here's a line for us to start with.

This line is separated from the one above by two newlines, so it will be a separate paragraph.

This line is also a separate paragraph, but... This line is only separated by a single newline, so it's a separate line in the same paragraph.

Back to top

Headers

Markdown support two header types (setext or atx).

# H1
## H2
### H3
#### H4
##### H5
###### H6

H1

H2

H3

H4

H5
H6

Alternatively, for H1 and H2, an underline-ish style:

Alt-H1
======

Alt-H2
------

Alt-H1

Alt-H2

Back to top

License

This package is licensed under the MIT License

Back to top