1<?php 2 3namespace dokuwiki\Parsing\ParserMode; 4 5class Listblock extends AbstractMode 6{ 7 /** 8 * Listblock constructor. 9 */ 10 public function __construct() 11 { 12 global $PARSER_MODES; 13 14 $this->allowedModes = array_merge( 15 $PARSER_MODES['formatting'], 16 $PARSER_MODES['substition'], 17 $PARSER_MODES['disabled'], 18 $PARSER_MODES['protected'] 19 ); 20 } 21 22 /** @inheritdoc */ 23 public function connectTo($mode) 24 { 25 $this->Lexer->addEntryPattern('[ \t]*\n {2,}[\-\*]', $mode, 'listblock'); 26 $this->Lexer->addEntryPattern('[ \t]*\n\t{1,}[\-\*]', $mode, 'listblock'); 27 28 $this->Lexer->addPattern('\n {2,}[\-\*]', 'listblock'); 29 $this->Lexer->addPattern('\n\t{1,}[\-\*]', 'listblock'); 30 } 31 32 /** @inheritdoc */ 33 public function postConnect() 34 { 35 $this->Lexer->addExitPattern('\n', 'listblock'); 36 } 37 38 /** @inheritdoc */ 39 public function getSort() 40 { 41 return 10; 42 } 43} 44