Обсуждение участника:Крылатое Нечто/меташаблон
Материал из Lurkmore
- {{Игры}} — что на этот счёт? Алсо, напрягает «править» на том месте, где я ожидаю «показать».
- Править можно сделать как раньше, это вопрос вкуса. Про игры: Кострукция шаблона модульная, вместо Участник:Крылатое Нечто/меташаблон/группа в содержимое параметра "группы" можно вставить другой субшаблон. Для игр, видимо, придется писать такой в виде вложенной таблицы.
- Править можно сделать как раньше, это вопрос вкуса. Про игры: Кострукция шаблона модульная, вместо Участник:Крылатое Нечто/меташаблон/группа в содержимое параметра "группы" можно вставить другой субшаблон. Для игр, видимо, придется писать такой в виде вложенной таблицы.
Типо того
группы = <td> <table> {{Группа/Игры |название = Мета |содержимое = {{Группа | заголовок = Основы | содержимое = [[X86|PC]] • [[MSX]] • [[Консоли]] }} блаблабла }} {{Группа/Игры |название = Жанры |содержимое = блаблабла }} </table> </td>
{{Участник:Крылатое Нечто/меташаблон/группа
| заголовок ={{Башорг/frame| Вордстрим}}
| содержимое = [[Вордстримовские войны]] • [[Плюсообмен]] • [[Проверочка]]
| стиль_содержимого = background-color: #f3f3f3; border: 1px dotted #AAAAAA;
}}
Выделенное у большинства шаблонов повторяется для каждой из групп, и является синтаксическим овернехом, не так ли?
- Я не нашел как задавать переменные (или аналог #define из С) в языке викиразметки. А так, задается переменная и вперед.
- Переменных нет. Совсем-совсем нет. Ну то есть, есть такое расширение, которое в принципе могло бы быть установлено, но переменные не разделяются между разными шаблонами.
- Тогда делаецца интерфейс к Списку (как Шаблон:Список/Старый), в котором есть параметры типа "стиль групп" и "стиль заголовков групп". Похоже на сегодняшнюю группу с ghcolor и ghbgcolor. Но тогда кастомные стили как в Шаблон:Секс уже не сделаешь.
Башорг/frame тоже можно таким образом убрать, но делать интерфейс для этого как-то overkill.- В шаблон можно передать имя другого шаблона. См как работает Обсуждение участника:Bk/хуита.
- Если честно, я щас уже не очень соображаю, завтра к вечеру посмотрю.
- Посмотрел, клёво, но не понял как сюда применить. Да, можно сделать вместо переменных шаблоны и вместо background-color: #f3f3f3; border: 1px dotted #AAAAAA; подставлять что-то типа {{{Шаблон:башорг/стиль_групп}}}, так же как в башорге заголовки оформлены. Равно как можно подставлять просто имя стилевого шаблона - но тогда нужно менять код группы, что нежелательно, ибо модульность.
- Олсо, копипасте полностью искоренить в шаблонах нельзя, ибо в вики нету ни контенеров для данных, ни средств их обхода. То есть, в Цпп, например, такой шаблон реализоваывался бы:
- Объектом с каким-нибудь контейнером для хранения групп (группа тоже объект) - благо STL и все дела.
- Функцией с переменным количеством аргументов - как printf, только передаются туда группы.
- Каким-нибудь хитрым макросом, но это voodoo-style. Как пример, в MFC список виндовых событий есть как раз такой список макросов.
- Адепты лямбда-исчисления и буста тоже сюда чёнить припишут.
- Но в вики-разметке таки шаблоны только, поэтому можно юзать вложенность и ее вариант с интерфейсом (в них еще subst можно заюзать для уменьшения нагрузки на вику), кетайский код aka копипасте, индусский код aka старые шаблоны, больше не придумываецца. Или поставить экстеншн с переменными и задавать стиль в начале страницы, а потом подставлять его везде — это ведь внутри одного шаблона?
Вообще, пора переползать в обсуждение шаблончега уже, а то посетители глагне будут пугацца непонятных многабукаф.- Хз как ты вычислил, что я бустаёб и сторонник методов Александреску :-)
- Эволюция Цппшника ;)
- Хз как ты вычислил, что я бустаёб и сторонник методов Александреску :-)
- В шаблон можно передать имя другого шаблона. См как работает Обсуждение участника:Bk/хуита.
- Тогда делаецца интерфейс к Списку (как Шаблон:Список/Старый), в котором есть параметры типа "стиль групп" и "стиль заголовков групп". Похоже на сегодняшнюю группу с ghcolor и ghbgcolor. Но тогда кастомные стили как в Шаблон:Секс уже не сделаешь.
- Суть в том, что если пытаться сделать оверхед для использования Шаблон:группа минимальным, то окажется, что в самом шаблоне нужен именно такой совершенно дикий индокод, как там сейчас.
- Для этого концепция интерфейсов, чтобы не делать сразу дофига параметров для всего. Надо - наваял интерфейс и на его основе пару навигационных шаблонов. Йа таки системный программист, поэтому Список - это какбы kernel.
Ну или копипасте, если влом занимацца коденгом. Жили же как-то вообще с голыми шаблонами, полными многабукаф и css.- Обсуждение участника:Oal#Ещё про шаблоноспискоёбство я как бы тоже против копипаста на самом деле.
- Да, читал. Мне тоже это не нравилось, хотел сделать еще в группе либо через цикл какой-нить, либо так, встроенными шаблонами. Но циклов оказалось нема.
- Циклы только такие :-(
- Да, читал. Мне тоже это не нравилось, хотел сделать еще в группе либо через цикл какой-нить, либо так, встроенными шаблонами. Но циклов оказалось нема.
- Обсуждение участника:Oal#Ещё про шаблоноспискоёбство я как бы тоже против копипаста на самом деле.
- Для этого концепция интерфейсов, чтобы не делать сразу дофига параметров для всего. Надо - наваял интерфейс и на его основе пару навигационных шаблонов. Йа таки системный программист, поэтому Список - это какбы kernel.
- Переменных нет. Совсем-совсем нет. Ну то есть, есть такое расширение, которое в принципе могло бы быть установлено, но переменные не разделяются между разными шаблонами.