There is a targeted local customisation which I think will work. In
local/config.php the site could over-ride the default treatment of
[[!Category]] markup. Try the following code:
$LongVowels = array (
'A' => 'Ā',
'a' => 'ā',
'E' => 'Ē',
'e' => 'ē',
'I' => 'Ī',
'i' => 'ī',
'O' => 'Ō',
'o' => 'ō',
'U' => 'Ū',
'u' => 'ū');
function MacronHelper($match) {
global $LongVowels;
return $LongVowels[$match[1]];
}
Markup('[[!','<[[','/\\[\\[!(.*?)\\]\\]/',
function ($m) use(&$pagename) {
$text = preg_replace_callback('/\{([AEIOUaeiou])\}/',
"MacronHelper", $m[1]);
return Keep(MakeLink($pagename,
$GLOBALS['CategoryGroup'].'/'.$m[1], $text, '',
$GLOBALS['LinkCategoryFmt']), 'L')
} );
With this code, writing [[!T{u}roa]] should create a link to page
Category.Turoa with the link text Tūroa. Links to categories
without long vowels, such as [[!Akaroa]] should continue to work.
The {a} {e} {i} {o} {u} markup will only work inside category markup. A
more general solution which would work anywhere in the text would need a
further markup rule.
Hope this helps.
JR
On 23/07/19 11:33 AM, John Rankin wrote:
Interesting; I did not know that.
A markup rule that translates [[!Turoa|+]] into [[Category.Turoa|+]]
might work, although category markup uses a special categorylink class
in the <a> link generated. Or you could introduce a local category
markup rule just for this purpose, for example so that [[!T`uroa]] is
turned into [[Category.Turoa|T#363;roa]] (ie look for "`[aeiouAEIOU]"
inside category link markup, then process as a category link). The
rule would have to fully process the link markup, as it needs to use
the category link format, with the correct class attribute.
A bit more investigation is needed, I think.
JR
On 21/07/19 10:31 PM, Simon wrote:
Thanks, it actually came about because I was trying to use [[!Tūroa]]
for which there is no markup [[!Turoa|+]]
____
http://kiwiwiki.nz
On Sat, 20 Jul 2019 at 14:55, John Rankin <john.ran...@affinity.co.nz
<mailto:john.ran...@affinity.co.nz>> wrote:
One (least work) option would be to name the page Turoa, and add
(:title T#363;roa:) to the page text. You would want to use
[[Turoa |+]] when linking to the page.
JR
On 20/07/19 2:14 PM, Simon wrote:
Any suggestions on how I can create page names such as T#363;roa.
I have an older wiki - not UTF8.
Would it work to add characters such as āēīōū to the valid page
name character set
(BTW please point me to the page where this is documented, I
couldn't easily find it - closest I could get to was
https://www.pmwiki.org/wiki/PmWiki/BasicVariables#NamePattern but
has no detail)
thanks
Simon
_______________________________________________
pmwiki-devel mailing list
pmwiki-devel@pmichaud.com <mailto:pmwiki-devel@pmichaud.com>
http://www.pmichaud.com/mailman/listinfo/pmwiki-devel
_______________________________________________
pmwiki-devel mailing list
pmwiki-devel@pmichaud.com <mailto:pmwiki-devel@pmichaud.com>
http://www.pmichaud.com/mailman/listinfo/pmwiki-devel
_______________________________________________
pmwiki-devel mailing list
pmwiki-devel@pmichaud.com
http://www.pmichaud.com/mailman/listinfo/pmwiki-devel
_______________________________________________
pmwiki-devel mailing list
pmwiki-devel@pmichaud.com
http://www.pmichaud.com/mailman/listinfo/pmwiki-devel