Это должно быть вставлено до того, как шаблоны ссылок будут заменены активной гиперссылкой.

якоря. Обратная косая черта перед $wiki/ означает, что символ "$" является частью

шаблон; в противном случае мы искали бы текущее значение переменной с этим

имя. Поскольку завершающая косая черта является частью шаблона, мы решили использовать «:» в качестве шаблона.

разделитель вместо обычного "/".

Совет 6.13. Сделайте так, чтобы сценарии запускались где угодно

Когда вы используете замену URL-переменной, результирующие перекрестные ссылки могут оставаться

действует даже для зеркальных вики под разными доменами или системами без

изменение сценария. Замена всегда использует текущий URL-адрес сервера, определенный

в переменной.

Связанный полезный ярлык:

s : \$ws/:$ServeRoot:ge;

# относительный-сервер


1

42

НАСТРОЙКА ВАШЕЙ ВИКИ

который заменяет шаблон $ws/ URL-адресом корня документа сервера. Это

удобный способ ссылки на файлы на том же сайте; например, обычные файлы изображений в

централизованный каталог сайтов.

Сокращенную нотацию можно сделать еще более лаконичной, определив более конкретные шаблоны,

$wikii и $wiki2, чтобы первый URL стал просто:

$wiki2/ЭтаСтраница

С другой стороны, если у вас их несколько, вероятно, лучше

рассмотрите более гибкое решение, которое не требует жесткого кодирования ссылок в

каждый сценарий. Один из них заключается в использовании списков URL-адресов, где эти ярлыки определяются в

отдельный файл, включенный в каждый модуль, который нуждается в них с использованием или требованием Perl

команды.

Ярлыки на основе таблиц

Расширенная и обобщенная версия заменяемых путей заключается в использовании отдельного текстового файла.

где вы определяете любое количество конкретных (мнемоник) шаблонов идентификаторов и их

Подстановки URL-адресов. Например, C2wiki:: может означать http://c2.com/cgi/

вики?. К этому добавляется все, что следует после двойного двоеточия, например указанная страница.

Начальная заглавная буква в идентификаторе позволяет избежать путаницы со стандартным Интернетом.

протоколы, но следует аналогичному синтаксису URL.

В коде подстановки для управления этим мы ищем полный шаблон, и если

найдены, мы обращаемся к подпрограмме, чтобы заменить часть идентификатора с двоеточиями на

полный URL из списка. Обратите внимание на круглые скобки вокруг первого члена, что приводит к

переменная подстановки $1, чтобы получить значение совпадающего шаблона.

s/($wikiRef)::/&RefList($1)/ge

;

# заменить из списка

Переменная шаблона сопоставления предопределена как:

$wikiRef ·= "[AZ] [A-Za-zO-9]+";