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
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"; |
|
} |
|
|
|
}
|