It should be realized as
npm
-package withbem-plugin
interface on top ofbem-tools
ecosystem. There is no actually to talk about while we have a flexible interface inbem-tools
itself. So. I think we should realized an API to connect plugins likebem mv
and provide there an interface to manipulatebem-objects
like techs and blocks at the first, provide a simple interface for each technology how to handle moves/replaces, or how to parse tech-realizations, and then rollback to that concrete command. And many other also likebem ls
orbem lint
.@zxqfox Давайте обсудим, какого API не хватат для реализации
bem mv
.PS: Предлагаю (пока) общаться на русском для сокращения времени получения ответа.
@arikon На самом деле потому что это не английский был, а набор слов )
Имхо, технология должна знать о том, с чем она работает, как её открыть, как прочитать, с js и другими недетерминированными технологиями — 100% результата переименования все равно не будет, предлагаю выводить варнинги про такие технологии и какие именно файлы стоит посмотреть руками. Можно даже лок какой-нибудь придумать, чтобы проект не собирался, пока этот лок не уберешь. Проверку на лок тоже можно вынести в технологию. Для js-based достаточно будет
'bem-lock';
или/*bem-lock*/
в начале файла.