Тут знаходиться бібліотека макросів (і деякої супутної логіки) для низькорівневої роботи з вмістом статей проєкту WebDoky. Всі вирази штибу {{jsxref}}
, які зустрічаються в тексті — обробляються цим кодом.
За потреби реалізувати новий макрос (чи поправити логіку старого), вам знадобиться:
- Зрозуміти, який саме результат ви хочете отримати. Більшість макросів (за винятком навігаційних) продукують рядки звичайного необробленого HTML-коду, тож складнощів з цим бути не повинно.
- Склонувати проект і встановити залежності
- Використовуючи знання з першого пункту, написати перший тест, і запустити його в режимі відстежування
- Написати логіку макроса до проходження тесту
- Повторювати попередні два кроки аж до досягнення бажаного результату :)
Звісно, можна тестувати цю логіку одразу в роботі. Проте це потребує підняття в межах одного середовища трьох вмісту трьох різних репозиторіїв, які пов'язані між собою лише рядками залежностей в
package.json
. Це робить цикл зміна->результат страшенно довгим.
Макроси — це старий спадок з попередніх версій MDN WebDocs. Значна їх частина поступово виводиться з ужитку командою MDN WebDocs. Проте, оскільки проект налічує більше 10к статей, процес цей доволі повільний. Тому:
- Ця логіка ізольована в окремий проект, щоб після відмови від макросів командою MDN, ми могли легко зробити те саме.
- Логіка макросів, природно, буде значною мірою повторюватися і запозичуватися нами. Оскільки репозиторій mdn/yari має ліцензію Mozilla Public License (MPL), це накладає певні обмеження на наш код, в якому б містилися наші запозичення. Окремий репозиторій дає змогу фізично відділити код, і випускати його під окремою ліцензією, сумісною з MPL.