You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
805 B

<?php
/**
* @copyright Copyright (c) 2014 Carsten Brandt
* @license https://github.com/cebe/markdown/blob/master/LICENSE
* @link https://github.com/cebe/markdown#readme
*/
namespace cebe\markdown\block;
/**
* Adds horizontal rules
*/
trait RuleTrait
{
/**
* identify a line as a horizontal rule.
*/
protected function identifyHr($line)
{
// at least 3 of -, * or _ on one line make a hr
return (($l = $line[0]) === ' ' || $l === '-' || $l === '*' || $l === '_') && preg_match('/^ {0,3}([\-\*_])\s*\1\s*\1(\1|\s)*$/', $line);
}
/**
* Consume a horizontal rule
*/
protected function consumeHr($lines, $current)
{
return [['hr'], $current];
}
/**
* Renders a horizontal rule
*/
protected function renderHr($block)
{
return $this->html5 ? "<hr>\n" : "<hr />\n";
}
}