mirror of
https://github.com/YGGverse/gemini-php.git
synced 2025-02-10 22:24:19 +00:00
update dictionary
This commit is contained in:
parent
e25e794dc4
commit
9ea658a3fc
@ -9,46 +9,54 @@ class Dokuwiki
|
|||||||
private array $_dictionary =
|
private array $_dictionary =
|
||||||
[
|
[
|
||||||
// Headers
|
// Headers
|
||||||
'/^[\s]?#([^#]+)/' => "# $1\n\r",
|
'/^([\s]?)#([^#]+)/' => '$1#$2' . PHP_EOL,
|
||||||
'/^[\s]?##([^#]+)/' => "## $1\n\r",
|
'/^([\s]?)##([^#]+)/' => '$1##$2' . PHP_EOL,
|
||||||
'/^[\s]?###([^#]+)/' => "### $1\n\r",
|
'/^([\s]?)###([^#]+)/' => '$1###$2' . PHP_EOL,
|
||||||
'/^[\s]?####([^#]+)/' => "### $1\n\r",
|
'/^([\s]?)####([^#]+)/' => '$1###$2' . PHP_EOL,
|
||||||
'/^[\s]?#####([^#]+)/' => "### $1\n\r",
|
'/^([\s]?)#####([^#]+)/' => '$1###$2' . PHP_EOL,
|
||||||
'/^[\s]?######([^#]+)/' => "### $1\n\r",
|
'/^([\s]?)######([^#]+)/' => '$1###$2' . PHP_EOL,
|
||||||
|
|
||||||
'/^[\s]?[=]{6}([^=]+)[=]{6}/' => "# $1\n\r",
|
'/^[\s]?[=]{6}([^=]+)[=]{6}/' => '# $1' . PHP_EOL,
|
||||||
'/^[\s]?[=]{5}([^=]+)[=]{5}/' => "## $1\n\r",
|
'/^[\s]?[=]{5}([^=]+)[=]{5}/' => '## $1' . PHP_EOL,
|
||||||
'/^[\s]?[=]{4}([^=]+)[=]{4}/' => "### $1\n\r",
|
'/^[\s]?[=]{4}([^=]+)[=]{4}/' => '### $1' . PHP_EOL,
|
||||||
'/^[\s]?[=]{3}([^=]+)[=]{3}/' => "### $1\n\r",
|
'/^[\s]?[=]{3}([^=]+)[=]{3}/' => '### $1' . PHP_EOL,
|
||||||
'/^[\s]?[=]{2}([^=]+)[=]{2}/' => "### $1\n\r",
|
'/^[\s]?[=]{2}([^=]+)[=]{2}/' => '### $1' . PHP_EOL,
|
||||||
'/^[\s]?[=]{1}([^=]+)[=]{1}/' => "### $1\n\r",
|
'/^[\s]?[=]{1}([^=]+)[=]{1}/' => '### $1' . PHP_EOL,
|
||||||
|
|
||||||
// Links
|
// Links
|
||||||
// '/\{\{([^\:]+)\:([^\}\}]+)\}\}/' => "=> /$1 $1\n\r", // @TODO
|
'/\{\{([^:]+):([^\}]+)\}\}/' => PHP_EOL . '=> $1 $1' . PHP_EOL, // @TODO
|
||||||
'/\{\{indexmenu\>\:([^\}\}]+)\}\}/' => "=> /$1 $1\n\r", // @TODO
|
'/\{\{indexmenu\>:([^\}]+)\}\}/' => PHP_EOL . '=> $1 $1' . PHP_EOL, // @TODO
|
||||||
'/\[\[wp([A-z]{2})\>([^\|]+)\|([^\]\]]+)\]\]/' => "=> https://$1.wikipedia.org/wiki/$2 $3\n\r",
|
'/\[\[wp([A-z]{2})\>([^\|]+)\|([^\]\]]+)\]\]/' => PHP_EOL . '=> https://$1.wikipedia.org/wiki/$2 $3' . PHP_EOL,
|
||||||
'/\[\[wp\>([^\|]+)\|([^\]\]]+)\]\]/' => "=> https://en.wikipedia.org/wiki/$1 $2\n\r",
|
'/\[\[wp\>([^\|]+)\|([^\]\]]+)\]\]/' => PHP_EOL . '=> https://en.wikipedia.org/wiki/$1 $2' . PHP_EOL,
|
||||||
'/\[\[([^|]+)\|([^\]\]]+)\]\]/' => "=> $1 $2\n\r",
|
'/\[\[([^|]+)\|([^\]\]]+)\]\]/' => PHP_EOL . '=> $1 $2' . PHP_EOL,
|
||||||
|
|
||||||
// Tags
|
// Tags
|
||||||
'/<code>/' => '```',
|
'/<code>/i' => '```',
|
||||||
'/<\/code>/' => '```',
|
'/<\/code>/i' => '```',
|
||||||
|
'/<wrap[^>]+>([^<]?)/i' => '$1',
|
||||||
|
'/<\/wrap>/i' => '$1',
|
||||||
|
|
||||||
'/<file>/' => '```',
|
'/<file>/i' => '```',
|
||||||
'/<file\s-\s([^>]+)>/' => "$1\n\r" . '```',
|
'/<file[\s]+-[\s]+([^>]+)>/i' => '$1```',
|
||||||
'/<\/file>/' => '```',
|
'/<\/file>/i' => '```',
|
||||||
|
|
||||||
'/[*]+([^*]+)[*]+/' => '*$1*',
|
//'/[*]+([^*]+)[*]+/' => '$1', // @TODO bugged, e.g. crontab tasks
|
||||||
'/[\'\']+([^\']+)[\'\']+/' => '```$1```',
|
'/\'\'([^\']+)\'\'/' => '$1',
|
||||||
|
'/%%([^%]+)%%/' => '$1',
|
||||||
|
'/\/\/^:([^\/]+)\/\//' => '$1',
|
||||||
|
|
||||||
// List
|
// List
|
||||||
'/^-/' => '* ',
|
'/^[\s]?-/' => '* ',
|
||||||
|
'/^[\s]+\*/' => '*',
|
||||||
|
|
||||||
// Separators
|
// Separators
|
||||||
'/[-]+/' => '-',
|
'/[\\\]{2}/' => PHP_EOL,
|
||||||
'/[ ]+/' => ' ',
|
|
||||||
'/[\\\]+/' => "\n\r",
|
// Plugins
|
||||||
'/[\n\r]{1,}/' => "\n\r",
|
'/~~DISCUSSION~~/' => '', // @TODO
|
||||||
|
|
||||||
|
// Final corrections
|
||||||
|
'/[\n\r]+[.,;:]+/' => PHP_EOL
|
||||||
];
|
];
|
||||||
|
|
||||||
public function __construct(?array $dictionary = null)
|
public function __construct(?array $dictionary = null)
|
||||||
@ -85,24 +93,24 @@ class Dokuwiki
|
|||||||
|
|
||||||
foreach ((array) explode(PHP_EOL, $data) as $line)
|
foreach ((array) explode(PHP_EOL, $data) as $line)
|
||||||
{
|
{
|
||||||
$lines[] = trim(
|
$lines[] = preg_replace(
|
||||||
preg_replace(
|
array_keys(
|
||||||
array_keys(
|
$this->_dictionary
|
||||||
$this->_dictionary
|
),
|
||||||
),
|
array_values(
|
||||||
array_values(
|
$this->_dictionary
|
||||||
$this->_dictionary
|
),
|
||||||
),
|
$line
|
||||||
trim(
|
|
||||||
$line
|
|
||||||
)
|
|
||||||
)
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return implode(
|
return preg_replace(
|
||||||
PHP_EOL,
|
'/[\n\r]{2,}/',
|
||||||
$lines
|
PHP_EOL . PHP_EOL,
|
||||||
|
implode(
|
||||||
|
PHP_EOL,
|
||||||
|
$lines
|
||||||
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
Loading…
x
Reference in New Issue
Block a user