Ещё раз "Попробовал на вкус" (приготовленный по старому рецепту http://habrahabr.ru/post/162385/ уже "свежий", project-stub.
Библиотека друга https://github.com/john-johnson/j не подключаеться (не видно новомодных теней).
Вопрос: каким образом теперь подключать стороннюю библиотеку?
Я так понимаю, что смотреть нужно суда и туда: oject-stub/blob/bem-core/ .bem/make.js oject-stub/blob/bem-core/ .bem/repo.db.js
https://github.com/bem/pr
https://github.com/bem/pr
Немножко изменилось API, но смысл не менялся — как собирается проект описывается в .bem/make.js и окружении, которое он подтягивает. Библиотеки (в т.ч. внешние) — это уровни переопределения, ни больше, не меньше, вам просто надо их зарегистрировать, чтобы сборка учитывала блоки, которые в них есть. Внимательнее с level.js в библиотеках — тоже влияэт, может еще из-за этого не подтянуться (API же чуть поменялось).
make.js как раз отвечает за то, чтобы выкачать все необходимые библиотеки.
Т.е. если счекаутить библиотеки руками, то ни repo.db.js, ни make.js трогать не потребуется, хотя, конечно, удобнее, когда все происходит автоматически. (Спойлер: в bem-tools v1 bem make перестанет отвечать за загрузку библиотек и эта задача будет переложена на bower).
А за подключение уровней в сборку отвечает level.js на уровне бандлов: https://github.com/bem/pr
...всё так и описано в старой статье, но...
раньше работало, сейчас нет.
Прошу дать конкретный совет, что прописать, куда?
Библиотеку, эту: https://github.com/john-johnson/j
Так что вам необходимо чекаутить именно master.
Ну и на всякий случай изменения, которые необходимо проделать с master, чтобы библиотека подключилась:
А для совместимости библиотеки j с bem-core потребуется как минимум 2 изменения:
1. Поправить (впрочем, достаточно будет и просто удалить) файл level.js в j/blocks/.bem/.
2. Переписать javascript с учетом модульной системы (см. http://ru.bem.info/libs/bem-core/i-bem-js/).
При этом подключение будет выглядеть вполностью аналогично варианту с master.
Рад сообщить что помогло и в master и в bem-core.
Благодарю.
Только после переключения ветки нужно каждый раз делать npm install и перезапускать bem server.
И ещё в master (index.bemjson.js) заменить
block:'b-page' на block:'page'
Про npm install и перезапуск bem server все верно, а b-page и page должны меняться при переключении веток автоматически.
...меняются, но при 'b-page' в master стили ломаются
Мне думается, что совет про npm install поможет многим, кто пробует разные версии, которых много. Вообще, может стоит начать собирать faq в виде Troubleshooting guide?