vtalbot/markdown

Markdown compiler for Laravel 4

Installs: 14 594

Dependents: 4

Stars: 65

Watchers: 5

Forks: 14

Open Issues: 5

Language: PHP

1.5.1 2015-08-26 00:15 UTC

README

Installation

Run composer require vtalbot/markdown:1.5

Run php artisan config:publish vtalbot/markdown

Then edit config.php in app/config/packages/vtalbot/markdown to your needs.

Add 'VTalbot\Markdown\MarkdownServiceProvider', to providers in app/config/app.php and 'Markdown' => 'VTalbot\Markdown\Facades\Markdown', to aliases in app/config/app.php

Usage

http://domain.name/test.md

If test.md doesn't exists in the public directory, it will search for test.md in app/markdown directory. If found, compile it if needed and return the result.

Markdown::make('file-in-markdown-directory');

Or, you can compile a simple string:

Markdown::string('#test');

To handle markdown file not found:

Markdown::setNotFoundHandler(function($file) { return 'Markdown file not found'; });
Markdown::setNotFoundHandler('MarkdownController@missing');

Configuration

Key Default value Description paths array('/markdown') Directory where to find the markdown files. routes array('',) Routes prefixes. extensions array('markdown','md') Extensions used to set routes. add_routes true Enable the creation of routes. empty_element_suffix ' />' Suffix for empty element (br, hr). tab_width 4 Tab character width. no_markup false Prevent HTML tags to be passed to output. no_entities false Convert entities like &lt\; to &amp\;. predef_urls array() Add reference for urls. array('ref' => '//goo.gl'): [google][ref] predef_titles array() Same as predef_urls. use_extra true Use Markdown with extra, eg.: fenced code block. fn_id_prefix '' Prefix for ID attributes generated by footnotes. fn_link_title '' Title for footnotes links. fn_backlink_title '' Same as fn_link_title. fn_link_class 'footnote-ref' CSS class for footnotes links and backlinks. fn_backlink_class 'footnote-backref' Same as fn_link_class. code_class_prefix '' Prepend CSS class to fenced code block. code_attr_on_pre false Put attributes on pre instead of code. predef_abbr array() Create predefine abbreviations.

For more information on the Markdown configuration, you may refer to http://michelf.ca/projects/php-markdown/configuration .

Changelog

1.5
  • Change deprecated dependency.
  • Add Markdown file not found handler.
  • Add configurations based on the new dependency.
  • Add some tests.