[pmwiki-users-de] Include von Attach
Christian Bartolomaeus
bartolin at gmx.de
Mi Dez 30 13:09:41 CST 2009
Hallo,
* On 2009-12-30 ChristianImann (cimann at gmx.de) wrote:
> [...]
> Auf Seite GroupA.Index wird die Seite GroupB.Page1 includiert
>
> Src GroupA.Index:
>
> (:include GroupB.Page1:)
>
> GroupB.Page1 habe folgenden Code
>
> Src GroupB.Page1:
> [[Page2]] verweist original auf GroupB.Page2
> Attach:Img1.jpg verweist original auf
> $UploadDir/GroupB/Img1.jpg
>
> Nach der Einbindung passiert folgendes
>
> Output GroupA.Index:
> [[Page2]] verweist inkludiert auf GroupB.Page2
> Attach:Img1.jpg verweist inkludiert auf
> $UploadDir/GroupA/Img1.jpg
>
> Das Attach relativiert sich also.
>
> Ist das nur bei mir so, oder lässt sich das nachvollziehen.
das scheint nicht nur bei dir so zu sein. Wenn ich das richtig sehe,
wurde das Problem auch schon von jemandem im "Issue Tracking System"
PITS gemeldet:
http://pmwiki.org/wiki/PITS/00827
Ein erster Schritt wäre deshalb, auf dieser Seite einen Eintrag unter
"Priority" hinzuzufügen: Einfach eine Zahl zwischen 1 (unwichtig) bis
5 (sehr wichtig) direkt hinter den vorhandenen Eintrag anfügen. Bei
Bedarf könntest du natürlich auch weitere Infos zum "Bug-Report"
hinzufügen.
(Ich gehe übrigens davon aus, dass du eine PmWiki-Version 2.2.x
benutzt.)
> Ich habe jetzt wenig Lust alle Attaches als
> Attach:Group/.ImgIrgendetwas.jpg oder so zu notieren.
>
> Gibt es pfiffige Lösungsvorschläge?
Leider habe ich keine korrekte Lösung, aber vielleicht einen
Lösungsansatz: Offenbar kann man in config.php Einträge für die
Variable $QualifyPatterns setzen und offenbar werden diese Einträge
für die Umwandlung relativer Links zu Rate gezogen.
Entsprechend des ähnlichen Problems mit WikiWörtern
http://pmwiki.org/wiki/PITS/01067
dachte ich zunächst, man könnte so etwas wie
$QualifyPatterns['/Attach:(\\S+)\\b/'] = "Attach:\$group./$1";
in config.php eintragen, um alle Attach-Dateien beim Inkludieren auf
die ursprüngliche Gruppe zu beziehen. Leider funktioniert das nicht
richtig -- $group wird nicht durch die ursprüngliche Gruppe ersetzt.
Vielleicht kann hier jemand anders weiterhelfen? (Auch der verwendete
reguläre Ausdruck
Attach:(\\S+)\\b
ist möglicherweise nicht exakt genug?!)
Wenn man die ursprüngliche Gruppe hart kodiert (in deinem
Beispiel 'GroupB'), dann scheint das zu funktionieren (Eintrag
wiederum in config.php):
$QualifyPatterns['/Attach:(\\S+)\\b/'] = 'Attach:GroupB./$1';
Beste Grüße
Christian (ebenfalls)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://www.pmichaud.com/pipermail/pmwiki-users-de/attachments/20091230/0c531e00/attachment.bin