elwinar/babel

Markup languages engines for Laravel 5

2.0.0 2015-05-27 07:41 UTC

This package is not auto-updated.

Last update: 2024-04-13 12:59:10 UTC


README

Laravel 4 wrappers & engines for various markup languages.

Installation

  1. Add elwinar/babel to your composer.json

    "elwinar/babel": "dev-master"

  2. Run composer update to get the latest version of the package.

  3. Edit your config/app.php file to add the following service providers :

    'Babel\ServiceProvider',
    
  4. And the following aliases :

    'Markdown' => 'Babel\Facades\Markdown',
    'Textile' => 'Babel\Facades\Textile',
    

Usage

You can compile a file

$result = <Facade>::file($path);

Or a string

$result = <Facade>::string('Hello markdown!');

Or a translation using the same parameters than the trans() helper of Laravel

$result = <Facade>::trans($key);

Additionally, the package add compilers for the following view extensions :

  • md using Markdown
  • md.php using PHP + Markdown
  • md.blade.php using Blade + PHP + Markdown
  • tx using Textile

Just create your view with the right extension and let Laravel to the magic for you!

Yet another markdown package for Laravel

I know there is already several markdown packages for both PHP and Laravel 4. I was myself fond of the vtalbot package, and occasionally used others as well such as the excellent kindari one.

However, both these packages rely on the old [dflydev] markdown compiler, that used to be a port of the PHP Markdown library by Michel Fortin since the author didn't wanted to use composer without thinking about it twice. Now that he made the step, the composer port is deprecated and packages relying upon it are in a precarious state. Thus my decision to create a new package using the now Composer-native library of Michel Fortin and integrating my preferred functionalities of both packages.

And cherry on top, I decided to include others markup format in addition to markdown. They are not here yet, but are planned. Fell free to request your preferred one, to make pull requests, etc.