New versions.

This commit is contained in:
Michael Vogel 2015-02-22 20:26:56 +01:00
parent 4a6a6ca937
commit 70615d7f78
9 changed files with 83 additions and 5 deletions

3
library/html-to-markdown/.gitignore vendored Normal file
View file

@ -0,0 +1,3 @@
~*
vendor
composer.lock

View file

@ -0,0 +1,6 @@
language: php
php:
- "5.5"
- "5.4"
- "5.3"
script: phpunit --no-configuration HTML_To_MarkdownTest ./tests/HTML_To_MarkdownTest.php

View file

@ -4,7 +4,7 @@
* *
* A helper class to convert HTML to Markdown. * A helper class to convert HTML to Markdown.
* *
* @version 2.1.2 * @version 2.2.1
* @author Nick Cernis <nick@cern.is> * @author Nick Cernis <nick@cern.is>
* @link https://github.com/nickcernis/html2markdown/ Latest version on GitHub. * @link https://github.com/nickcernis/html2markdown/ Latest version on GitHub.
* @link http://twitter.com/nickcernis Nick on twitter. * @link http://twitter.com/nickcernis Nick on twitter.
@ -97,7 +97,7 @@ class HTML_To_Markdown
* *
* Is the node a child of the given parent tag? * Is the node a child of the given parent tag?
* *
* @param $parent_name string The name of the parent node to search for (e.g. 'code') * @param $parent_name string|array The name of the parent node(s) to search for e.g. 'code' or array('pre', 'code')
* @param $node * @param $node
* @return bool * @return bool
*/ */
@ -107,6 +107,9 @@ class HTML_To_Markdown
if (is_null($p)) if (is_null($p))
return false; return false;
if ( is_array($parent_name) && in_array($p->nodeName, $parent_name) )
return true;
if ($p->nodeName == $parent_name) if ($p->nodeName == $parent_name)
return true; return true;
} }
@ -127,7 +130,7 @@ class HTML_To_Markdown
private function convert_children($node) private function convert_children($node)
{ {
// Don't convert HTML code inside <code> and <pre> blocks to Markdown - that should stay as HTML // Don't convert HTML code inside <code> and <pre> blocks to Markdown - that should stay as HTML
if (self::is_child_of('pre', $node) || self::is_child_of('code', $node)) if (self::is_child_of(array('pre', 'code'), $node))
return; return;
// If the node has children, convert those to Markdown first // If the node has children, convert those to Markdown first
@ -388,6 +391,9 @@ class HTML_To_Markdown
$markdown = '[' . $text . '](' . $href . ')'; $markdown = '[' . $text . '](' . $href . ')';
} }
if (! $href)
$markdown = html_entity_decode($node->C14N());
// Append a space if the node after this one is also an anchor // Append a space if the node after this one is also an anchor
$next_node_name = $this->get_next_node_name($node); $next_node_name = $this->get_next_node_name($node);
@ -437,7 +443,7 @@ class HTML_To_Markdown
$markdown = ''; $markdown = '';
$code_content = html_entity_decode($this->document->saveHTML($node)); $code_content = html_entity_decode($node->C14N());
$code_content = str_replace(array("<code>", "</code>"), "", $code_content); $code_content = str_replace(array("<code>", "</code>"), "", $code_content);
$code_content = str_replace(array("<pre>", "</pre>"), "", $code_content); $code_content = str_replace(array("<pre>", "</pre>"), "", $code_content);

View file

@ -5,7 +5,7 @@ A helper class that converts HTML to [Markdown](http://daringfireball.net/projec
[![Build Status](https://travis-ci.org/nickcernis/html-to-markdown.png?branch=master)](https://travis-ci.org/nickcernis/html-to-markdown) [![Build Status](https://travis-ci.org/nickcernis/html-to-markdown.png?branch=master)](https://travis-ci.org/nickcernis/html-to-markdown)
**Version**: 2.2.0 **Version**: 2.2.1
**Requires**: PHP 5.3+ **Requires**: PHP 5.3+
**Author**: [@nickcernis](http://twitter.com/nickcernis) **Author**: [@nickcernis](http://twitter.com/nickcernis)
**License**: [MIT](http://www.opensource.org/licenses/mit-license.php) **License**: [MIT](http://www.opensource.org/licenses/mit-license.php)

View file

@ -0,0 +1,4 @@
test:
override:
- phpunit --no-configuration HTML_To_MarkdownTest ./tests/HTML_To_MarkdownTest.php

View file

@ -0,0 +1,25 @@
{
"name": "nickcernis/html-to-markdown",
"type": "library",
"description": "An HTML-to-markdown conversion helper for PHP",
"keywords": ["markdown", "html"],
"homepage": "https://github.com/nickcernis/html-to-markdown",
"license": "MIT",
"authors": [
{
"name": "Nick Cernis",
"email": "nick@cern.is",
"homepage": "http://modernnerd.net"
}
],
"autoload": {
"classmap": [ "HTML_To_Markdown.php" ]
},
"require": {
"php": ">=5.3"
},
"require-dev": {
"php": ">=5.3.3",
"phpunit/phpunit": "4.*"
}
}

View file

@ -0,0 +1,8 @@
language: php
php:
- 5.6
- 5.5
- 5.4
- 5.3
- hhvm

View file

@ -0,0 +1,18 @@
{
"name": "erusev/parsedown",
"description": "Parser for Markdown.",
"keywords": ["markdown", "parser"],
"homepage": "http://parsedown.org",
"type": "library",
"license": "MIT",
"authors": [
{
"name": "Emanuil Rusev",
"email": "hello@erusev.com",
"homepage": "http://erusev.com"
}
],
"autoload": {
"psr-0": {"Parsedown": ""}
}
}

View file

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<phpunit bootstrap="test/bootstrap.php" colors="true">
<testsuites>
<testsuite>
<file>test/ParsedownTest.php</file>
</testsuite>
</testsuites>
</phpunit>