From: Martin G. <gim...@gi...> - 2002-12-25 20:18:57
|
Martin Geisler <gim...@gi...> writes: Hi and Merry Christmas to everybody! I sent this mail to the list two weeks ago, but there was no reply... > I think the regexp that matches InterWiki links are a bit to greedy > in that it also includes a trailing '!' in the link. So Google:Foo! > is turned into a link to a search for 'Foo!' in Google, whereas > Google:Bar? is a search for 'Bar' as expected. > > I found the getMatchRegexp function in the Markup_interwiki class, and > added a '!' to the list of punctuation: > > function getMatchRegexp () { > global $request; > $map = InterWikiMap::GetMap($request); > return "(?<! [[:alnum:]])" . $map->getRegexp() . > ": \S+ (?<![ ,.?;! \] \) \" \' ])"; > } > > As always: it seams to work, but someone with more experience with > these regexps should check it too... Perhaps we could make a variable > somewhere that lists the punctuation --- it seams to me that it's used > again and again in several places, so a central place would make sure > that everything stays consistent. Could someone add the extra '!' to the code in CVS? I would be happy to do it myself if someone would give me a CVS account... (My username at SourceForge is gimpster.) There's also a small problem in split_pagename() in stdlib.php with this line: for ($i=1; $i <= sizeof($pages); $i++) { In the final iteration, $i goes outside the $pages array... -- Martin Geisler My GnuPG Key: 0xF7F6B57B See http://gimpster.com/ and http://phpweather.net/ for: PHP Weather => Shows the current weather on your webpage and PHP Shell => A telnet-connection (almost :-) in a PHP page. |