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

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

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

8 ответов

37 просмотров

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, после применения изменений, прео...

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

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

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

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта