summaryrefslogtreecommitdiff
path: root/inc/parser
diff options
context:
space:
mode:
Diffstat (limited to 'inc/parser')
-rw-r--r--inc/parser/parser.php14
1 files changed, 7 insertions, 7 deletions
diff --git a/inc/parser/parser.php b/inc/parser/parser.php
index 747c60333..709f063da 100644
--- a/inc/parser/parser.php
+++ b/inc/parser/parser.php
@@ -757,26 +757,26 @@ class Doku_Parser_Mode_quotes extends Doku_Parser_Mode {
function connectTo($mode) {
global $conf;
- $ws = '[\s/\#~:+=&%@\-;,\x28\x29\]\[{}><"\']'; // whitespace
- $nws = '[^\s/\#~:+=&%@\-;,\x28\x29\]\[{}><"\']'; // non whitespace
+ $ws = '\s/\#~:+=&%@\-\x28\x29\]\[{}><"\''; // whitespace
+ $punc = ';,\.?!';
if($conf['typography'] == 2){
$this->Lexer->addSpecialPattern(
- "(?<=^|$ws)'(?=$nws)",$mode,'singlequoteopening'
+ "(?<=^|[$ws])'(?=[^$ws$punc])",$mode,'singlequoteopening'
);
$this->Lexer->addSpecialPattern(
- "(?<=^|$nws)'(?=$|$ws)",$mode,'singlequoteclosing'
+ "(?<=^|[^$ws]|[$punc])'(?=$|[$ws$punc])",$mode,'singlequoteclosing'
);
$this->Lexer->addSpecialPattern(
- "(?<=^|$nws)'(?=$|$nws)",$mode,'apostrophe'
+ "(?<=^|[^$ws$punc])'(?=$|[^$ws$punc])",$mode,'apostrophe'
);
}
$this->Lexer->addSpecialPattern(
- "(?<=^|$ws)\"(?=$nws)",$mode,'doublequoteopening'
+ "(?<=^|[$ws])\"(?=[^$ws$punc])",$mode,'doublequoteopening'
);
$this->Lexer->addSpecialPattern(
- "(?<=^|$nws)\"",$mode,'doublequoteclosing'
+ "\"",$mode,'doublequoteclosing'
);