summaryrefslogtreecommitdiff
path: root/inc/parser/parser.php
diff options
context:
space:
mode:
authorAdrian Lang <mail@adrianlang.de>2011-04-22 22:35:43 +0200
committerAdrian Lang <mail@adrianlang.de>2011-04-22 22:35:43 +0200
commit8ccf9c9785ec2b626bad30a88a21f02886845418 (patch)
tree0ecd6103880e3350bd37ba11ae3872805ede1755 /inc/parser/parser.php
parente2092379b1c3200832cb569781ec647db5aeef0f (diff)
parent23d27376b2a2f6a1ccf0777c48435717494d85b1 (diff)
downloadrpg-8ccf9c9785ec2b626bad30a88a21f02886845418.tar.gz
rpg-8ccf9c9785ec2b626bad30a88a21f02886845418.tar.bz2
Merge branch 'master' into stable
Conflicts: data/deleted.files doku.php lib/exe/xmlrpc.php
Diffstat (limited to 'inc/parser/parser.php')
-rw-r--r--inc/parser/parser.php11
1 files changed, 5 insertions, 6 deletions
diff --git a/inc/parser/parser.php b/inc/parser/parser.php
index 20f0e6ca3..68d4e4569 100644
--- a/inc/parser/parser.php
+++ b/inc/parser/parser.php
@@ -90,7 +90,6 @@ class Doku_Parser {
if ( $mode == 'base' ) {
continue;
}
-
$this->modes[$mode]->preConnect();
foreach ( array_keys($this->modes) as $cm ) {
@@ -218,11 +217,11 @@ class Doku_Parser_Mode_footnote extends Doku_Parser_Mode {
//-------------------------------------------------------------------
class Doku_Parser_Mode_header extends Doku_Parser_Mode {
- function preConnect() {
+ function connectTo($mode) {
//we're not picky about the closing ones, two are enough
$this->Lexer->addSpecialPattern(
'[ \t]*={2,}[^\n]+={2,}[ \t]*(?=\n)',
- 'base',
+ $mode,
'header'
);
}
@@ -829,7 +828,7 @@ class Doku_Parser_Mode_internallink extends Doku_Parser_Mode {
function connectTo($mode) {
// Word boundaries?
- $this->Lexer->addSpecialPattern("\[\[.+?\]\]",$mode,'internallink');
+ $this->Lexer->addSpecialPattern("\[\[(?:(?:[^[\]]*?\[.*?\])|.*?)\]\]",$mode,'internallink');
}
function getSort() {
@@ -871,7 +870,7 @@ class Doku_Parser_Mode_externallink extends Doku_Parser_Mode {
if(count($this->patterns)) return;
$ltrs = '\w';
- $gunk = '/\#~:.?+=&%@!\-';
+ $gunk = '/\#~:.?+=&%@!\-\[\]';
$punc = '.:?\-;,';
$host = $ltrs.$punc;
$any = $ltrs.$gunk.$punc;
@@ -957,4 +956,4 @@ class Doku_Parser_Mode_emaillink extends Doku_Parser_Mode {
}
-//Setup VIM: ex: et ts=4 enc=utf-8 :
+//Setup VIM: ex: et ts=4 :