Lurkmore:Шаблоны

Шаблоны в первом приближении являются автоматизированным копипастом. Однако они позволяют невозбранно достичь большего, чем позволяет копипаст. А ещё говорят, что они полны по Тьюрингу. Разработчикам ПО это может что-то напоминать. Следует обратить внимание на то, что шаблоны могут не только копипастить текст, но и оказывать другое влияние на страницу, в частности, относить её к какой-либо категории. Как луркать Язык разметки, включая разметку шаблонов, описан на сайте MediaWiki.org. Там описаны различные версии медиавики и различные расширения. Наша версия 1.19.24 (берётся из магического слова, см. код страницы), а из полезных для разметки расширений имеются ParserFunctions и Cite. Так-то! Кстати, понимаете ли вы по-английски? Шаблоны же находятся непосредственно здесь, в пространстве имён «Шаблон». Участник, даже если он Анонимус, может невозбранно создать собственный или отредактировать имеющийся шаблон. Ну, кроме защищённых названий. Как вставлять Шаблоны вставляются двойными фигурными скобками. Вот такое {{TeX}} вставляет в текущую страницу содержимое страницы Шаблон:TeX, и получается вот так: TeX. «Шаблон:» — пространство имён, в котором берутся шаблоны. Можно вставлять и страницы из других пространств имён, добавив двоеточие в начало — {{:Goatse.cx/ASCII}} вставляет так * g o a t s e x * g o a t s e x * g o a t s e x * g g o / \ \ / \ o a| | \ | | a t| `. | | : t s` | | \| | s e \ | / / \\\ --__ \\ : e x \ \/ _--~~ ~--__| \ | x * \ \_-~ ~-_\ | * g \_ \ _.--------.______\| | g o \ \______// _ ___ _ (_(__> \ | o a \ . C ___) ______ (_(____> | / a t /\ | C ____)/ \ (_____> |_/ t s / /\| C_____) | (___> / \ s e | ( _C_____)\______/ // _/ / \ e x | \ |__ \\_________// (__/ | x * | \ \____) `---- --' | * g | \_ ___\ /_ _/ | g o | / | | \ | o a | | / \ \ | a t | / / | | \ |t s | / / \__/\___/ | |s e | / / | | | |e x | | | | | |x * g o a t s e x * g o a t s e x * g o a t s e x * . Помните про фигурные скобки? Алсо, можно начинать на слеш для вставки подстраницы: на странице Goatse.cx можно написать просто {{/ASCII}}. Обычно нет причин держать шаблон не в пространстве имён «Шаблон». На примере goatse и TeX был рассмотрен просто копипаст, но шаблоны могут быть контекстнозависимыми через параметры и магические слова. Параметры Могут иметь либо порядковый номер, либо имя. Например, {{delete|хуита|todo=апстена >>}}. Здесь «хуита» — параметр с номером 1, а «апстена >>» — параметр с именем todo. В самом шаблоне они используются как {{{1}}} и {{{todo}}} соответственно. Или чаще {{{1|}}} и {{{todo|написать нормальную статью}}}. То, что после вертикальной черты, подставляется, если параметр не задан. В одном шаблоне тот же параметр можно использовать любым способом любое число раз. ACHTUNG: незаданный параметр и пустой параметр — две большие разницы. {{xyz|}} — первый параметр пустой, {{xyz}} — первый параметр не задан, {{xyz||abc}} — второй параметр abc, первый пустой, {{xyz|2=abc}} — второй параметр abc, первый не задан. Магические слова Много их. Некоторые из: Имя страницы {{PAGENAME}}, {{SUBPAGENAME}}, etc. — эти позволяют получить имя текущей страницы в разных форматах. Не шаблона, а именно текущей. Если шаблон foo вставлен в шаблон bar и всё это вставлено в страницу FUBAR, то {{PAGENAME}}, который находится на foo, выдаст на странице FUBAR не foo и не bar, а именно FUBAR. Варианты этого магического слова с примерами, как оно работало бы, находясь на странице Участник:Test/Testspace вот: Разметка Результат {{FULLPAGENAME}} Участник:Test/Testspace/Place {{PAGENAME}} Test/Testspace/Place {{BASEPAGENAME}} Test/Testspace {{SUBPAGENAME}} Place {{SUBJECTPAGENAME}} Участник:Test/Testspace {{TALKPAGENAME}} Обсуждение участника:Test/Testspace {{NAMESPACE}} Участник Чтобы использовать имена страниц в ссылках, надо на конце добавлять ещё одно E, например, {{TALKPAGENAMEE}}. Дата и время {{CURRENTYEAR}}, {{CURRENTMONTH}}, etc. Используются системные настройки. Если нужны ваши дата и время, заданные в настройках пользователя, то CURRENT заменяется на LOCAL. Форматирование {{lc:БуКаВкИ}} — букавки, {{uc:БуКаВкИ}} — БУКАВКИ. {{lcfirst:БуКаВкИ}} и {{ucfirst:БуКаВкИ}} изменяют только первую букву. Арифметика и логика {{#expr:выражение}} — умеет делать арифметические и логические действия, округлять, возводить в степень, находить логарифм, применять тригонометрические функции. Не умеет делить на ноль и находить арксинус четырёх. Операторы пишутся так же, как на калькуляторе или английском экселе. Очень нужная вещь. {{#if:текст|что выдать, если непусто|что выдать, если пусто}} — проверяет, пустой ли текст. Разумеется, с неизменной строкой не очень полезно, и туда как текст обычно запиливают параметры или магические слова. Например {{#if:{{NAMESPACE}}|Это хуита|Это основное пространство}} — например, используется в {{notcrap}}. {{#ifeq:что|чему|если равно|если не равно}} — проверяет равенство строк что и чему. Регистрозависимое, что позволяет юзать вместе со всякими lcfirst. Пример в {{Языки}}, {{Девайс}}. #switch {{#switch: что | равно-чему1=выдать1 | равно-чему2 | равно-чему3=выдать3 |#default = выдать в остальных случаях}} Сравнивает что с вариантами равно-чемуn и выдаёт соответствующий результат. В случаях, где нет знака равно, как здесь с равно-чему2, берётся следующий, то есть выдать3. равно-чемуn или выдатьn вполне может быть пустой строкой. Применяется дохуя где. Аналог if-then-else. {{#ifexpr:условие|если выполняется|если не выполняется}} — очень полезная функция для проверки выполнения условия. В условие можно поставить, например, {{значение1}} < {{значение2}}, то есть все условия, в которых можно применить арифметическую проверку. Больше луркать здесь Теги Некоторые теги имеют отношение к шаблонам: <nowiki></nowiki> — отключает обработку шаблонов, как и всю остальную обработку вики-разметки. <noinclude></noinclude> — позволяет включить в шаблон что-то, что не будет включено при его подстановке. Полезно для включения шаблона в категорию, документации шаблона, плашек для шаблона. <includeonly></includeonly> — позволяет включить в шаблон что-то, что будет включено при его подстановке, но не в самой странице шаблона. На первый взгляд бесполезно, однако может быть нужно прописать категорию к месту включения шаблона, но не к шаблону. Внимание! Вики-теги очень чувствительны к переносу строки, поэтому их желательно не отрывать от содержимого. Например: <includeonly><b>Here be dragons.</b></includeonly> будет нормально; <includeonly><b> Here be dragons. </b></includeonly> тоже будет нормально; <includeonly> <b>Here be dragons.</b> </includeonly> а это даст пустой параграф () до и после Here be dragons. Мнемоники Чтобы не пихать всё время тег <nowiki>, особенно если нужно сослаться лишь на одиночный тег или символ без обработки или вставить юникод-символ, который с клавы сложно набрать, достаточно произвести замену спецсимвола на его аналог. Например: Символ Назначение Мнемоника Код [ левая квадратная скобка &#91; ] правая квадратная скобка &#93; < левая угловая скобка, знак меньше &lt; &#60; > правая угловая скобка, знак больше &gt; &#62; неразрывный пробел &nbsp; &#160; & амперсанд &amp; &#38; « левая угловая кавычка &laquo; &#171; » правая угловая кавычка &raquo; &#187; ' одинарная кавычка &apos; &#39; " двойная кавычка &quot; &#34; ‘ одиночная левая кавычка-лапка &lsquo; &#8216; ’ одиночная правая кавычка-лапка &rsquo; &#8217; “ двойная левая кавычка-лапка &ldquo; &#8220; ” двойная правая кавычка-лапка &rdquo; &#8221; ́ аку́т, знак ударения &#769; £ фунт &pound; &#163; € евро &euro; &#8364; ¥ иена &yen; &#165; ƒ знак функции &fnof; &#402; ∀ всё множество &forall; &#8704; ∃ существует &exist; &#8707; ∅ пустое множество &empty; &#8709; ∂ частичный дифференциал &part; &#8706; ∑ сумма &sum; &#8721; √ квадратный корень или радикал &radic; &#8730; ∫ интеграл &int; &#8747; ∠ угол &ang; &#8736; ∞ бесконечность &infin; &#8734; Æ заглавная латинская лигатура &AElig; &#198; æ строчная латинская лигатура &aelig; &#230; Мнемоники и коды взаимозаменяемы. Обратите внимание, что мнемоники игнорируют любое вики-форматирование. Больше луркать здесь. Фичи Вложенность — да. Рекурсия — да. Комментарии В вике используются html'ные комментарии: <!-- Здесь был Вася. --> При создании своего премудрого шаблона обязательно надо писать, как он работает! Для юзеров есть шаблон {{doc}}, а для интересующихся есть комменты. Хорошие комменты растят карму, я гарантирую это! Какие шаблоны есть Плашки Основная статья: ЛМ:плашки Шаблоны-списки Версия «см. также», обладающая большей функциональностью. Также её проще поддерживать — достаточно добавить ссылку в шаблон, а не искать все статьи, куда её нужно добавить. Алсо, навязывает категории, которые обычно лень проставлять. Словом, кошерная вещь. Полный список здесь. Прочие полезности {{tp}} — кошерно сослаться на шаблон {{NSFW}} — скрывает NSFW-контент типа Гуро, Goatse, tubgirl. На самом деле NSFW чаще скрывает говно, на которое не стоит тратить время. Параметр title можно опустить. Используются также неименованные значения. {{NSFW|title=высер|content={{хуита}} …}} — здесь плашка сломается, первый символ после знака равенства не должен быть {. Вот так, например, обходится: {{NSFW|title=высер|content=<nowiki>ХУИТА</nowiki> …}} [[Файл:Example.jpg|thumb|NSFW]] — скрывает изображение с шок-материалом, вместо него пишется надпись «not safe for work». Изображение становится видно, если на него один раз кликнуть. {{Spoiler}} — (спойлер: да, таки действительно спойлер). {{video}} — вставка видео с YouTube и не только. {{ET}} - {{note}} — вставка висящей справа свёрнутой заметки. {{Q}}, {{Цитата}} — цитирование. Первый параметр — цитата, второй — автор, автор по умолчанию Анонимус. Больше шаблонов здесь. {{Acronym}}, {{Укроним}} — тултип. Acronym для JAFA, Укроним для Інших мов. Первым полезно помечать отдельные слова, вторым — длинные куски текстов. {{ascii}} — для оформления ASCII-арта моноширинным шрифтом на чёрном фоне. {{Lj comm}}, {{Lj user}} — ссылки на ЖЖшку. Другие шаблоны для внешних ссылок здесь. {{lolwhat}}, {{prooflink}}, {{proofpic}} — выражает сомнение[ЩИТО?] в достоверности информации[пруфлинк?] в самом тексте. Другие варианты тут. {{doc}} — для описания к шаблонам. Идея в том, что doc к залоченному шаблону может редактировать даже анонимус. {{Main}} — ссылается на основную статью. Как здесь в #Плашки. {{Stub}} — для недописанных разделов статьи. Остальные. У Луркоморья нуб зелёный. Мета Луркоморье (по факту • по лулзу • по сути • по совести • в стихах • история • #lurkmore) • Вики • Ненависть к луркмору (к администрации) • Смехуечки Термины Lurk moar • Википидота • Война правок • Дыхота • Луркоёб • Меметичность • Недомем • Плашкоёбство • Срач в примечаниях • Удализм • Уютненькое • ЦугундерЯрчайший представитель • Язык Луркоморья Цугундеры aalien • Альтернативное мнение • Где лулзы?! • Значимость не показана • Мимо проходил • Не дови на меня • Статью потом допилю • Это не мем • Этого нет на дваче • Я X и не умею Y Происшествия Большой Августовский Пиздец • Дело Кати Гордон • Инвайты • Маскот • Матановая капча • Новый движок™ • Продажа • Рейд • Цензура • Школа Троллинга Справка FAQ • ToDo • Гайдлайны • Именование статей • Краткие ссылки • Плашки • Проверка страниц • Шаблоны Полезное Авторское право • Вниманию участников • Донат • Инкубатор • Контактная информация • Местный /b/ • Нужные статьи • Отказ от ответственности • Песочница • Политика конфиденциальности • Правила • Реклама