X-Git-Url: http://git.polytechnique.org/?a=blobdiff_plain;f=classes%2Fminiwiki.php;h=5af13647960b16f27e7a283abc28feca006af0af;hb=acbd98040d096aeb4cb2b5c5ec1f465a9146446e;hp=5b7bdbc93697488dc21efbc6e1e68625a146becb;hpb=1ea2ce3a43f0b4220b71b793a9477732b52c2e85;p=platal.git diff --git a/classes/miniwiki.php b/classes/miniwiki.php index 5b7bdbc..5af1364 100644 --- a/classes/miniwiki.php +++ b/classes/miniwiki.php @@ -32,6 +32,11 @@ class MiniWiki // retours à la ligne avec \\ MiniWiki::Markup("/\\\\(?".">(\\\\*))\n/e", "str_repeat('
\n',strlen('$1'))", "str_repeat('\n',strlen('$1'))", "ligne1\\\\\nligne2"); + // * unordered list + MiniWiki::Markup("/(^|\n)\*(([^\n]*(\n|$))(\*[^\n]*(\n|$))*)/se", "''", "'$0'", "* element1\n* element2\n* element3"); + // # unordered list + MiniWiki::Markup("/(^|\n)#(([^\n]*(\n|$))(#[^\n]*(\n|$))*)/se", "'
  1. '.str_replace(\"\\n#\",'
  2. ','$2').'
'", "'$0'", "# element1\n# element2\n# element3"); + // bold, italic and others // ''' bold ''' MiniWiki::Markup("/'''(.*?)'''/",'$1','*$1*', "'''gras'''"); @@ -50,8 +55,8 @@ class MiniWiki // {- strikeout -} MiniWiki::Markup("/\\{-(.*?)-\\}/",'$1','-$1-', "{-suppression-}"); // {color| colored text |} - MiniWiki::Markup("/\{([a-z]+|\#[0-9a-f]{3,6})\|(.*?)\|\}/i", "$2", "$2", - "{red|rouge|} {#ff0|jaune|} {#0000ff|bleu|}"); + MiniWiki::Markup("/%([a-z]+|\#[0-9a-f]{3,6})%(.*?)%%/i", "$2", "$2", + "%red% texte en rouge %%\\\\\n%#ff0% texte en jaune %%\\\\\n%#0000ff% texte en bleu %%"); // [+ big +] [++ bigger ++] [+++ even bigger +++] ... MiniWiki::Markup("/\\[(([-+])+)(.*?)\\1\\]/e","'$3'", "'$3'", "[+ grand +]\n\n[++ plus grand ++]\n\n[+++ encore plus grand +++]"); @@ -61,16 +66,11 @@ class MiniWiki MiniWiki::$title_index = MiniWiki::Markup('/(\n|^)(!+)([^\n]*)/se', "'$1$3'", "'$1$3'", "!titre1\n\n!!titre2\n\n!!!titre3"); - // * unordered list - MiniWiki::Markup("/(^|\n)\*(([^\n]*(\n|$))(\*[^\n]*(\n|$))*)/se", "''", "$0", "* element1\n* element2\n* element3"); - // # unordered list - MiniWiki::Markup("/(^|\n)#(([^\n]*(\n|$))(#[^\n]*(\n|$))*)/se", "'
  1. '.str_replace(\"\\n#\",'
  2. ','$2').'
'", "$0", "# element1\n# element2\n# element3"); - // links - MiniWiki::Markup('/((?:https?|ftp):\/\/(?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/ui', '\\0', '[\\0]'); - MiniWiki::Markup('/(\s|^|\\[\\[)www\.((?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/iu', '\\1www.\\2', '[http://www.\\2]'); - MiniWiki::Markup('/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i', '\\0', '[mailto:\\0]'); - MiniWiki::Markup('/\\[\\[\\s*.*<\/a>\\s*\|([^\\]]+)\\]\\]/i', '\\2', '\\2 [\\1]', "[[http://www.example.com|Mon site web]]\n\nhttp://www.example.com\n\ntest@example.com"); + MiniWiki::Markup('/((?:https?|ftp):\/\/(?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/ui', '\\0', '<\\0>'); + MiniWiki::Markup('/(\s|^|\\[\\[)www\.((?:[\.\,\;\!\:]*[\w@~%$£µ&i#\-+=_\/\?])*)/iu', '\\1www.\\2', ''); + MiniWiki::Markup('/(?:mailto:)?([a-z0-9.\-+_]+@([\-.+_]?[a-z0-9])+)/i', '\\0', '<\\0>'); + MiniWiki::Markup('/\\[\\[\\s*.*<\/a>\\s*\|([^\\]]+)\\]\\]/i', '\\2', '\\2 <\\1>', "[[http://www.example.com|Mon site web]]\n\nhttp://www.example.com\n\ntest@example.com"); // paragraphs and empty lines MiniWiki::Markup("/\n\n/", '

', "\n\n", "paragraphe1\n\nparagraphe2"); @@ -144,6 +144,11 @@ class MiniWiki $oldrule12 = MiniWiki::$replacementHTML[MiniWiki::$title_index]; MiniWiki::$replacementHTML[MiniWiki::$title_index] = "'$0'"; } + //$text = trim($wiki); + //foreach (MiniWiki::$patternsWiki as $key=>$pattern) { + // echo $key . " - " . $pattern . "\n"; + // $text = preg_replace($pattern, MiniWiki::$replacementText[$key], $text); + //} $text = preg_replace(MiniWiki::$patternsWiki, MiniWiki::$replacementText, trim($wiki)); if (!$title) { MiniWiki::$replacementHTML[MiniWiki::$title_index] = $oldrule12;