Обсуждение шаблона:Ct: различия между версиями

Материал из Dwarf Fortress Wiki
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
Строка 7: Строка 7:
#vardefine
#vardefine
Такие дела --[[Участник:GeloMor|GeloMor]] ([[Обсуждение участника:GeloMor|обсуждение]]) 03:16, 21 июля 2018 (MSK)
Такие дела --[[Участник:GeloMor|GeloMor]] ([[Обсуждение участника:GeloMor|обсуждение]]) 03:16, 21 июля 2018 (MSK)
Нашел проблему: видимо многократный вызов парсера перегружает страницу. Поскольку я заменял на парсер каждый вызов переменной, примерно через 10-20 использований шаблона в одной статье температура начинает высчитываться неверно, а код начинает выдавать сообщения об ошибке. Этого недостатка не лишён и оригинальный шаблон: если раскопировать на англовики их шаблон раз этак 50-100, то появится та же ошибка. Теоретический можно упростить шаблон и заменить парсер на обычную ссылку на поле типа {{{1}}}. Но тогда в поле шаблона можно будет указывать только число, а не как сейчас - целые буквенные выражения. Стоит ли, много ли вообще статей требуют многократное использование этого шаблона? --[[Участник:GeloMor|GeloMor]] ([[Обсуждение участника:GeloMor|обсуждение]]) 04:02, 21 июля 2018 (MSK)
Нашел проблему: видимо многократный вызов парсера перегружает страницу. Поскольку я заменял на парсер каждый вызов переменной, примерно через 10-20 использований шаблона в одной статье температура начинает высчитываться неверно, а код начинает выдавать сообщения об ошибке. Этого недостатка не лишён и оригинальный шаблон: если раскопировать на англовики их шаблон раз этак 50-100, то появится та же ошибка. Теоретический можно упростить шаблон и заменить парсер на обычную ссылку на поле типа {{{1}}}. Но тогда в поле шаблона можно будет указывать только число, а не как сейчас - целые буквенные выражения. Стоит ли, много ли вообще статей требуют многократное использование этого шаблона? --[[Участник:GeloMor|GeloMor]] ([[Обсуждение участника:GeloMor|обсуждение]]) 04:02, 21 июля 2018 (MSK)

Версия от 01:02, 21 июля 2018

Воскрешение шаблона

На вики видимо перестала работать (или никогда не работала?) функция #vardefine, которая должна декларировать переменную на странице. Путем замены всех мест, где использовалась задекларированная переменная, на выражение, которое должно было быть значением этой переменной, всё вроде удалось более-менее починить.

(заменил {{#vardefine:temp|{{#rmatch:{{{1|0}}}|\d+(\.\d+)?|$0}} и {{#var:temp}} на {{#rmatch:{{{1|0}}}|\d+(\.\d+)?|$0}} в каждом месте страницы)

На агловики эта функция работает исправно, а у нас по какой-то причине движок видимо не распознает vardefine как ключевое слово и считает #vardefine началом нумерованного списка как

  1. vardefine

Такие дела --GeloMor (обсуждение) 03:16, 21 июля 2018 (MSK)

Нашел проблему: видимо многократный вызов парсера перегружает страницу. Поскольку я заменял на парсер каждый вызов переменной, примерно через 10-20 использований шаблона в одной статье температура начинает высчитываться неверно, а код начинает выдавать сообщения об ошибке. Этого недостатка не лишён и оригинальный шаблон: если раскопировать на англовики их шаблон раз этак 50-100, то появится та же ошибка. Теоретический можно упростить шаблон и заменить парсер на обычную ссылку на поле типа {{{1}}}. Но тогда в поле шаблона можно будет указывать только число, а не как сейчас - целые буквенные выражения. Стоит ли, много ли вообще статей требуют многократное использование этого шаблона? --GeloMor (обсуждение) 04:02, 21 июля 2018 (MSK)