У нас есть внутренняя вики-страница компании. Используемый вики-движок MediaWiki, движок вики, на котором работает Википедия. Некоторые из них содержат ИТ-материалы.
Одна из вещей, которые я хочу, - это гиперссылки на различные виртуальные машины. Пример команды, которая должна быть запущена:
vmrc://solo.avatopia.com:5901/Windows 2000 Server
Первой моей мыслью было преобразовать URL в ссылку:
[vmrc://solo.avatopia.com:5901/Windows 2000 Server]
Но содержимое отображается буквально так, как указано выше: с квадратными скобками и так далее. Тестирование с другими протоколами URL:
[http://solo.avatopia.com]
[ftp://solo.avatopia.com]
[ldap://solo.avatopia.com]
[vmrc://solo.avatopia.com]
Только первые два работают и преобразуются в гиперссылки. Два других остаются как литературный текст. Как я могу добавить URL-адреса в документацию на базе MediaWiki?
Исходный вопрос
У нас есть внутренняя вики-страница компании. Используемый вики-движок MediaWiki, движок вики, на котором работает Википедия. Некоторые из них содержат ИТ-материалы.
Одна из вещей, которые я хочу, - это гиперссылки на различные виртуальные машины. Пример команды, которая должна быть запущена:
\\solo\VMRC Client\vmrc.exe solo.avatopia.com:5901/Windows 2000 Server
При запуске из командной строки вы должны заключить пробелы в кавычки:
C:\>"\\solo\VMRC Client\vmrc.exe" solo.avatopia.com:5901/"Windows 2000 Server"
Моя первая мысль при преобразовании приведенного выше для использования на нашем вики-сайте - это просто HTML-код:
file://\\solo\VMRC Client\vmrc.exe solo.avatopia.com:5901/"Windows 2000 Server"
но MediaWiki только конвертирует файл: // \ solo \ VMRC к гиперссылке остальное - текст.
Я пробовал другие случайные вещи, в том числе заключал URL-адрес в квадратные скобки.
Каков правильный ответ? я не хочу случайно наткнуться на какой-то формат, который случается работать сегодня и перерыв в будущем.
Протоколы (http, ftp, gopher и т. Д.), Которые в квадратных скобках ([]) превращаются в ссылки, определены в массиве $ wgUrlProtocols в вашем файле LocalSettings.php. Вот разрешенные протоколы по умолчанию.
$wgUrlProtocols = array(
'http://',
'https://',
'ftp://',
'irc://',
'gopher://',
'telnet://', // Well if we're going to support the above.. -ævar
'nntp://', // @bug 3808 RFC 1738
'worldwind://',
'mailto:',
'news:'
);
Чтобы решить вашу проблему, добавьте vmrc в качестве протокола. Добавьте / замените в файле LocalSettings.php следующее:
$wgUrlProtocols = array(
'http://',
'https://',
'ftp://',
'irc://',
'gopher://',
'telnet://', // Well if we're going to support the above.. -ævar
'nntp://', // @bug 3808 RFC 1738
'worldwind://',
'mailto:',
'news:',
'vmrc://',
);
Теперь вы можете создавать ссылки, используя синтаксис квадратных скобок: (URL-адрес идет первым, отделенный от текста ссылки одним пробелом. Пробелы в URL-адресе не допускаются.) [Vmrc: //solo.avatopia.com: 5901 Windows 2000 Server ]
Пример добавления URL-адреса в mediawiki
[http://www.example.com/ Example Site] --> Output will be 'Example Site'
http://www.example.com --> output will be 'http://www.example.com'
URL-адреса предназначены для указания на ресурсы, а не на выполняемые команды.
Вы можете создать ссылку на пакетный скрипт (как указано выше) или вы можете отобразить текст в monospace, code form
и позволить пользователям копировать и вставлять.
Я использую pmwiki, у них есть команда, чтобы, когда вы инкапсулируете текст с помощью [@ @], он печатается как цитируемый и не изменяется в коде вики - работает ли это для MediaWiki?