169 похожих чатов

Кто-Нибудь с Бабелем разобрался? Хотелка: в коде проставить недостающие ";"

в конце (или убрать) не трогая все остальное (даже лишние пробелы и не правильные отступы должны остаться). Такое в принципе возможно?

8 ответов

16 просмотров

https://eslint.org/docs/latest/rules/semi

Andriy-F Автор вопроса
Илюша 🎂
https://eslint.org/docs/latest/rules/semi

А можно словами? Код потом искать буду - такое возможно? чтобы именно БАБЕЛЕМ и именно "только проставить точки с запятой в конце функций"? Раньше пробовал рядом с обфускатором свои плагины к бабелю писать - там код конкретно "корежило" - табы на пробелы, все функции к виду "function-пробел-скобка...скобка-пробел-скобка" и др. Комменты либо вырезало, либо выравнивало с кодом. А мне нужно ТОЛЬКО точки с запятыми.

Andriy F
А можно словами? Код потом искать буду - такое воз...

тебе ради этого бабель не нужен, это уже код-стайл, тебе eslint нужен

Andriy-F Автор вопроса
Илюша 🎂
тебе ради этого бабель не нужен, это уже код-стайл...

Хочу именно бабелем попробовать... Предстоит много автоматических замен в коде "по образцам". Начать решил с "точек с запятыми". Бабель в принципе умеет менять/преобразовывать код НЕ ЛОМАЯ его? Например когда-то писал модуль/плагин чтобы все упоминания функций объекта типа "console.*()" вырезать, но после этого код становился "изменным в КАЖДОЙ строке" (хоть и фукнкционал изменялся ТОЛЬКО в пропаже этих функций). ...хочу что-то вроде плагина к IDE написать.

Andriy F
Хочу именно бабелем попробовать... Предстоит много...

ты пытаешься решить проблему не тем инструментом, тебе надо настроить в проекте eslint и нужные правила, потом в IDE ставишь расширение для eslint и он будет тебе подсвечивать ошибки, согласно настроенным правилам, а так же можно через консоль фиксить ошибки, которые может исправить eslint

Andriy-F Автор вопроса
Илюша 🎂
ты пытаешься решить проблему не тем инструментом, ...

У меня будет СВОЙ "анализатор кода" - типа перестановки функций местами, переименовывание переменных по маске, убирать лишние параметры в функциях и др. Парсингом/анализом JS-кода лень заниматься - проще готовый бабель-парсер использовать. Но как потом "собирать назад" после изменения "дерева кода" так чтобы не подсвечивало что ВСЕ строки изменены?

Andriy F
У меня будет СВОЙ "анализатор кода" - типа переста...

Babel строит AST, после применения изменений, преобразует обратно в код. Там хранится информация о пробелах и отсупах. То есть форматирование не должно меняться.

Andriy-F Автор вопроса
Alexander G.
Babel строит AST, после применения изменений, прео...

Тоесть в принципе это возможно??? (а раньше не получалось потому что в попавшихся э

Похожие вопросы

Обсуждают сегодня

@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Заметил в ghci 9.4.8: > :t (<*>) @((->)_) (<*>) @((->)_) :: (w -> (a -> b)) -> (w -> a) -> w -> b Разве не должно (w -> (a -> b)) быть записано как (w -> a -> b)? Это баг, ил...
Михаил
13
Any electron dev here?
Sayanth Tezro
12
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
так это может кто что знает или использует что-то как макбук только не макбук? на 13…14 дюймов
Michael
9
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Кто-нибудь знает почему SPM клонирует репо целиком? Некоторые репы просто огромные, как та же swift-syntax которая нужна для использования макросов. Сначала подумал, что это...
iMike
6
Карта сайта