stringtranslate.com

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

Эту страницу не следует путать с Template:Namespaces

Пространство имен Template в Википедии используется для хранения шаблонов , которые содержат разметку Wiki , предназначенную для включения на нескольких страницах, обычно через включение . Хотя пространство имен Template используется для хранения большинства шаблонов, возможно включение и замена из других пространств имен, [1] и поэтому некоторые страницы шаблонов размещаются в других пространствах имен, таких как пространство имен User .

Шаблоны помогают поддерживать единообразное форматирование и облегчают навигацию между статьями. Они часто включают необязательные и/или переменные элементы, контролируемые параметрами , чтобы обеспечить специализированное использование. Шаблоны также используются для помощи в самых разных задачах обслуживания Википедии . Каждый шаблон имеет соответствующую Template talk:страницу, где редакторы могут обсудить дизайн и реализацию соответствующего шаблона (см. Help:Using talk pages , чтобы узнать, как участвовать в обсуждениях на странице обсуждения).

Шаблон транспонируется на другую страницу путем включения тега шаблона в содержимое этой страницы. Тег шаблона содержит имя страницы шаблона , заключенное в двойные фигурные скобки, например {{Disambiguation}}. Если имя страницы шаблона не начинается с пространства имен и двоеточия, предполагается, что оно находится в пространстве имен Template.

Внутренние ссылки на страницы шаблонов можно создавать с помощью Template:префикса, например [[Template:Disambiguation]]. Другие способы ссылки на шаблон см. в разделе Ссылки на шаблоны.

Руководящие принципы

  • ВП:ТГ
  • WP:TMPG

Ссылки на шаблоны

Внутренние ссылки на страницы шаблонов можно создавать с помощью Template:префикса, например [[Template:Disambiguation]]. Эти ссылки ведут на страницу, которая непосредственно содержит базовый шаблон, но подстраницы, такие как документация шаблона, также могут быть связаны напрямую, например [[Template:Disambiguation/doc]].

Чтобы связать шаблон с помощью формата отображения, подходящего для шаблонов, используйте Template:Tl (сокращение от «template link»). Например, чтобы сослаться на шаблон Cleanup, введите {{tl|Cleanup}}{ { Cleanup }} . Это не вызовет шаблон, но отображение четко укажет, что связанный объект является шаблоном. Вы также можете добавить параметры с помощью Template:Tlp ; например, {{tlp|Convert|1|m}}отображается как {{ Convert |1|m}} . Проверьте документацию шаблона на Template:Tl для других параметров, таких как {{ tlb }} (жирный), (код), (курсивные параметры) и многое другое.{{tlx}}{{tlxi|param1|param2}}

Предлагаемые практики

Названия шаблонов

  • ВП:ТПС

Имена шаблонов должны состоять из одного или нескольких слов, например {{Train topics}}. Первый символ не чувствителен к регистру, поэтому {{cleanup}}и {{Cleanup}}являются одним и тем же шаблоном. Все остальные символы чувствительны к регистру, поэтому {{cfd}}и {{cfD}}не являются одинаковыми. Имена шаблонов легче всего запомнить, если они соответствуют стандартному английскому правописанию, пробелам и заглавным буквам (см. также соглашения об именах для статей). Избегайте шаблонов, имена которых отличаются только регистром, пробелами или пунктуацией.

Для шаблонов с длинными именами можно создать перенаправления шаблонов (часто называемые шорткатами) для удобства ввода. Например, вместо ввода {{Template link with subst}}шортката {{tls}}доступен.

Песочница для экспериментов

Если вы хотите поэкспериментировать с шаблонами (и не хотите, чтобы ваши эксперименты были удалены до того, как вы закончите с ними), вы можете сделать это в Template sandbox . Вы также можете использовать шаблоны X1 , X2 , X3 , X4 , X5 , X6 , X7 , X8 , X9 , X10 , X11 и X12 для экспериментальных целей. Чтобы включить тестовый шаблон, используйте форму {{X1}}для шаблона X1, {{X2}}для шаблона X2 и т. д.

Существующие шаблоны часто имеют свои собственные страницы песочницы и тестовых случаев (особенно те, которые используют {{ Documentation }} ). Изменения должны быть тщательно протестированы там, прежде чем применяться к основному шаблону, чтобы предотвратить непреднамеренное повреждение многих страниц.

Читаемость кода

Для шаблонов с большим количеством параметров может быть полезно разместить каждый параметр на отдельной строке и выровнять знаки равенства. Это поможет будущим редакторам легче читать викикод. Например, если вы хотите создать новый инфобокс , который может содержать десятки параметров, ваш код может выглядеть так:

{{Информационное поле| header1 = Текст заголовка1| label2 = Текст label2| data2 = Текст data2| и т.д. = и т.д.}}

Шаблоны, использующие много условных выражений , часто выигрывают от межстрочного интервала, как, например, в следующем коде, используемом в {{ If either }}

{{ #если :{{{ 1 |}}}  |{{{ тогда |{{{ 3 |}}}}}}  |{{ #если :{{{ 2 |}}}  |{{{ тогда |{{{ 3 |}}}}}}  |{{{ иначе |{{{ 4 |}}}}}} }  } } }

Хотя это и не обязательно, продемонстрированные переносы строк позволяют упростить синтаксический анализ того, какие условные операторы относятся к какому оператору #if.

Разрывы строк

Хотя переносы строк в тексте кода шаблона полезны для удобства чтения, переносы строк в начале или конце кода шаблона могут вызвать проблемы с отображением в статьях. При кодировании шаблонов следует соблюдать осторожность, чтобы не было ненужных пробелов. Одиночный перенос строки в информационном поле может объединиться с переносом строки в статье, что приведет к разрыву абзаца или может привести к появлению нежелательного шаблона во встроенном шаблоне. В качестве общего правила избегайте двух переносов строк вместе в шаблоне. Они могут «складываться» с другими переносами строк в статье и отображаться как нежелательные пробелы. Для получения дополнительной информации о переносах строк и их влиянии на викитекст см. Wikipedia:Line-break processing .

Чтобы избежать ненужных пробелов, убедитесь, что все <noinclude>теги размещены сразу после кода шаблона. Следующий код взят из {{ questions }} и имеет хорошее управление переносами строк.

{{ уведомление | small = да | Если вы хотите задать вопрос, см. страницу [[ Wikipedia : Вопросы ]] для получения инструкций. }}< noinclude > [[ Категория : Шаблоны справки Wikipedia ]] </ noinclude >

Замена

Вызов шаблона с помощью формы

{{subst:name of template (|parameters |...)}}

(то есть вставка subst:сразу после открывающей пары фигурных скобок) создаст копию текста шаблона и поместит ее на страницу, где она будет видна в источнике. Шаблон больше не транслируется , и будущие изменения шаблона не изменят текст. В качестве руководства этот метод следует использовать для любых коротких временных сообщений, которые быстро удаляются, например, на страницах User_talk:. Стандартное новое сообщение пользователя является хорошим примером.{{Welcome}}

Используйте subst: также, если вам нужно отредактировать сообщение после включения его на страницу. Если вам не нужно его редактировать, и вы предпочитаете, чтобы сообщение автоматически обновлялось вместе с изменениями, внесенными в шаблон, не используйте subst:.

Документация

Поскольку шаблоны представляют собой шаг вверх по сложности для начинающего редактора, должна быть предоставлена ​​документация, описывающая их использование (необязательные параметры) и область применения (где их следует использовать). Есть два разных способа сделать это:

Один из вариантов — использовать шаблон {{ documentation }} для добавления небольшого описания непосредственно на страницу шаблона. Как упоминалось в § Разрывы строк, первый <noinclude>тег должен быть размещен на той же строке, что и последний символ фактического шаблона. Например:

'''Это статья {{{ 1 }}} . ''' < noinclude > {{ documentation | content =Поместите этот шаблон в любую статью, требующую описания. Онпринимает один параметр — прилагательное, используемое для описания статьи.Например, {{ article-describe | bad }} выводит текст: '''Это плохая статья.''' }} </ noinclude >

Другой альтернативой является создание формальной подстраницы /doc для документации (предпочтительно для шаблонов с несколькими параметрами и т. д.). Шаблон {{ documentation }} по-прежнему вызывается, но весь отображаемый текст будет включен из подстраницы /doc шаблона.

'''Это статья {{{ 1 }}} . ''' < noinclude > {{ documentation }} </ noinclude >

Модули

Иногда модули Lua используются вместо шаблонов для хранения повторно используемого материала. Причины этого включают использование специфичных для модуля функций, таких как циклы или сохраненные значения, а сложный код часто проще читать и поддерживать в модуле. Если модуль легко реализуется в шаблоне, то, как правило, так и должно быть, поскольку существует больше пользователей с опытом редактирования шаблонов.

Если модуль предназначен для использования в статьях или на страницах обсуждений, обычно следует создать шаблон-оболочку для упрощения использования без прямого требования #invokeфункции парсера. Документация в таком случае в основном располагается на странице /doc шаблона, а документация модуля указывает на шаблон и/или объясняет дополнительные технические детали, которые не нужны в первичной документации шаблона.

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

История

Исторически, при использовании на странице перед именем шаблона нужно было добавлять префикс "msg:". Например, вместо {{stub}} набиралось {{msg:stub}}. Теперь это не нужно.

В первые 35 месяцев существования Википедии не существовало ни одного шаблона или механизма включения. Страница Wikipedia:Boilerplate text была создана в сентябре 2002 года для сбора часто используемого текста в различных процессах Википедии. Пространство имен MediaWiki было введено в MediaWiki 1.2.6 6 декабря 2003 года и использовалось не только для пользовательского интерфейса, но и для создания шаблонных текстовых сообщений, которые вставлялись в статьи с использованием синтаксиса {{msg: ...}}. Эта функция была заменена пространством имен Template во время обновления программного обеспечения до MediaWiki 1.3 30 мая 2004 года. В качестве функции « Скрипта инициализации пространства имен Template » все несистемные сообщения были перемещены в новое пространство имен. Скрипт инициализации также заменил ссылки MediaWiki: в статьях на Template:, чтобы обойти перенаправления, созданные перемещениями.

В течение короткого времени Wikipedia:Articles for deletion (тогда известные как votes for deletion или VfD ) использовали сообщения MediaWiki:, названные в формате "MediaWiki:VfD -articlename ". Они были перемещены в пространство Template: в июне 2004 года и получили название "Template:VfD- articlename ". Такое использование сейчас устарело в пользу подстраниц.

Около 2005 года растущая сложность функций шаблонов и желание объединить похожие шаблоны привели к созданию чрезвычайно сложных условных хаков, таких как вложенные шаблоны и трюки CSS . Эти нежелательные методы привели к разработке m:Extension:ParserFunctions, добавленного в 2006 году с MediaWiki 1.7. К 2009 году многие проблемы с читаемостью и сложностью шаблонов все еще оставались ( О шаблонах и языках программирования ). В 2013 году для решения проблемы времени загрузки страниц, в основном из-за медленного рендеринга шаблонов, был включен Lua , создав пространство имен Module: для использования программистами ( Новые шаблоны Lua приносят более быстрые и гибкие страницы в вашу вики ).

Поиск шаблонов

Используйте эту форму для поиска в пространствах имен Template: или Template_talk:. См. Help:Searching для получения дополнительной информации.

Страницы, содержащие информацию о часто используемых шаблонах:

Если вы не можете найти существующий шаблон для своей ситуации, но не готовы создать его самостоятельно, вы можете обратиться за помощью на страницу Википедии:Запрошенные шаблоны .

Смотрите также

Примечания

  1. ^ Пространства имен, из которых включение не допускается, указываются в вики с помощью переменной $wgNonincludableNamespaces.