From 9497be3817abb26b568c342df0a1e81a4b7757d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ste=CC=81phane=20Goetz?= Date: Wed, 21 Oct 2015 23:26:42 +0200 Subject: [PATCH] Add Markdown tables support --- composer.json | 5 +- composer.lock | 75 ++++++++++++++++-- daux.phar | Bin 723941 -> 736201 bytes .../01_GitHub_Flavored_Markdown.md | 15 +--- .../Markdown/CommonMarkConverter.php | 2 + libs/ContentTypes/Markdown/LinkRenderer.php | 6 +- .../ContentTypes/Markdown/LinkRenderer.php | 6 +- 7 files changed, 82 insertions(+), 27 deletions(-) diff --git a/composer.json b/composer.json index 0284f31..2cb9183 100644 --- a/composer.json +++ b/composer.json @@ -15,9 +15,10 @@ "php": ">=5.4", "league/plates": "~3.1", "guzzlehttp/guzzle": "~5.3", - "league/commonmark": "0.8.*", + "league/commonmark": "^0.11", "symfony/console": "~2.7", - "symfony/finder": "~2.7" + "symfony/finder": "~2.7", + "webuni/commonmark-table-extension": "0.4.*" }, "autoload": { "psr-4": { diff --git a/composer.lock b/composer.lock index 18487e6..6f5d5ee 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "hash": "7cb7ddabbb3aaa33e7504afc4c7150b9", + "hash": "90ed477bfae85bfdc868d7685b04531d", "packages": [ { "name": "guzzlehttp/guzzle", @@ -167,16 +167,16 @@ }, { "name": "league/commonmark", - "version": "0.8.0", + "version": "0.11.3", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "91696c88df298f75fdd2075e4bb19c6dbd7338ca" + "reference": "d22d6a6a4b049faccc2f8e491cce6076eeb165c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/91696c88df298f75fdd2075e4bb19c6dbd7338ca", - "reference": "91696c88df298f75fdd2075e4bb19c6dbd7338ca", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/d22d6a6a4b049faccc2f8e491cce6076eeb165c7", + "reference": "d22d6a6a4b049faccc2f8e491cce6076eeb165c7", "shasum": "" }, "require": { @@ -188,16 +188,21 @@ }, "require-dev": { "erusev/parsedown": "~1.0", - "jgm/commonmark": "0.19", + "jgm/commonmark": "0.22", + "jgm/smartpunct": "0.22", "michelf/php-markdown": "~1.4", + "mikehaertl/php-shellcommand": "~1.1.0", "phpunit/phpunit": "~4.3", "phpunit/phpunit-mock-objects": "2.3.0", "symfony/finder": "~2.3" }, + "bin": [ + "bin/commonmark" + ], "type": "library", "extra": { "branch-alias": { - "dev-master": "0.8-dev" + "dev-master": "0.12-dev" } }, "autoload": { @@ -224,7 +229,7 @@ "markdown", "parser" ], - "time": "2015-04-29 18:01:46" + "time": "2015-09-25 12:40:32" }, { "name": "league/plates", @@ -427,6 +432,60 @@ "description": "Symfony Finder Component", "homepage": "https://symfony.com", "time": "2015-09-19 19:59:23" + }, + { + "name": "webuni/commonmark-table-extension", + "version": "0.4.1", + "source": { + "type": "git", + "url": "https://github.com/webuni/commonmark-table-extension.git", + "reference": "569bdc491abe1dc25f2346e946b19695c4045e18" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webuni/commonmark-table-extension/zipball/569bdc491abe1dc25f2346e946b19695c4045e18", + "reference": "569bdc491abe1dc25f2346e946b19695c4045e18", + "shasum": "" + }, + "require": { + "league/commonmark": "^0.11", + "php": ">=5.4" + }, + "require-dev": { + "fabpot/php-cs-fixer": "^1.9", + "phpunit/phpunit": "^4.3", + "symfony/var-dumper": "^2.7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "0.4-dev" + } + }, + "autoload": { + "psr-4": { + "Webuni\\CommonMark\\TableExtension\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Martin HasoĊˆ", + "email": "martin.hason@gmail.com", + "role": "Lead Developer" + } + ], + "description": "The table extension for CommonMark PHP implementation", + "homepage": "https://github.com/webuni/commonmark-table-extension", + "keywords": [ + "commonmark", + "markdown", + "table" + ], + "time": "2015-09-22 21:06:47" } ], "packages-dev": [], diff --git a/daux.phar b/daux.phar index c99c69e5f417d3c15c5b0ae01605cc804bdb3df5..07a6043ad13228d8a83e7d0717466b70c2c4deff 100755 GIT binary patch delta 26962 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 diff --git a/docs/01_Examples/01_GitHub_Flavored_Markdown.md b/docs/01_Examples/01_GitHub_Flavored_Markdown.md index e866499..0aba7d6 100644 --- a/docs/01_Examples/01_GitHub_Flavored_Markdown.md +++ b/docs/01_Examples/01_GitHub_Flavored_Markdown.md @@ -89,17 +89,10 @@ Or perhaps someone a little less eloquent: Table for two ------------- - - - - - - - - - - -
IDNameRank
1Tom Preston-WernerAwesome
2Albert EinsteinNearly as awesome
+ID | Name | Rank +---|:------:|------: +1 | Tom Preston-Werner | Awesome +2 | Albert Einstein | Nearly as awesome Crazy linking action -------------------- diff --git a/libs/ContentTypes/Markdown/CommonMarkConverter.php b/libs/ContentTypes/Markdown/CommonMarkConverter.php index 56e385e..140b93c 100644 --- a/libs/ContentTypes/Markdown/CommonMarkConverter.php +++ b/libs/ContentTypes/Markdown/CommonMarkConverter.php @@ -3,6 +3,7 @@ use League\CommonMark\DocParser; use League\CommonMark\Environment; use League\CommonMark\HtmlRenderer; +use Webuni\CommonMark\TableExtension\TableExtension; class CommonMarkConverter extends \League\CommonMark\CommonMarkConverter { @@ -15,6 +16,7 @@ class CommonMarkConverter extends \League\CommonMark\CommonMarkConverter { $environment = Environment::createCommonMarkEnvironment(); $environment->mergeConfig($config); + $environment->addExtension(new TableExtension()); $this->extendEnvironment($environment); diff --git a/libs/ContentTypes/Markdown/LinkRenderer.php b/libs/ContentTypes/Markdown/LinkRenderer.php index bc66d50..e7add47 100644 --- a/libs/ContentTypes/Markdown/LinkRenderer.php +++ b/libs/ContentTypes/Markdown/LinkRenderer.php @@ -1,7 +1,7 @@