bsl_console
bsl_console copied to clipboard
Дополнительное форматирование.
Хотелось бы улучшить движок форматирования кода дополнительными функциями, которые можно было бы задействовать или нет. Например есть код:
Если ТипЗнч(Макет) = Тип("ОбъектМетаданных") Тогда
Шаблон = новый структура("ТипМакета");
перем1 = 1;перем2="А";
перем3 = 1;
перем4наименование = 2;
перем5код = 3;
заполнитьЗначениясвойств(Шаблон,Макет);
ТипМакета = Неопределено;
если Шаблон.свойство("ТипМакета", ТипМакета)
тогдА
Возврат ТипМакета <> Неопределено;
КонецЕсли;
КонецЕсли;
При форматировании хотелось бы выполнение следующих действий:
- Приведение имен ключевых слов кода и методов к каноническому виду
- Автоматическое удаление лишних отступов в пустых строках и в концах строк
- Автоматическое выравнивание последовательно идущих присваиваний переменным
- Разбивка строки кода команд разделенных символом ";" на несколько последовательных строк
- Возврат ключевых слов на позиции где они должны быть (напр. в Если ... Тогда, ключевое слово "Тогда" вернуть обратно на строку с Если).
- Автоматический отступ от запятой в перечислении параметров методов/функций/процедур
Желаемый результат относительно примера выше:
Если ТипЗнч(Макет) = Тип("ОбъектМетаданных") Тогда
Шаблон = Новый Структура("ТипМакета");
перем1 = 1;
перем2 = "А";
перем3 = 1;
перем4наименование = 2;
перем5код = 3;
ЗаполнитьЗначениясвойств(Шаблон, Макет);
ТипМакета = Неопределено;
Если Шаблон.Свойство("ТипМакета", ТипМакета) Тогда
Возврат ТипМакета <> Неопределено;
КонецЕсли;
КонецЕсли;
Хотелось бы улучшить движок форматирования кода дополнительными функциями, которые можно было бы задействовать или нет.
Постараюсь что-нибудь придумать.
Поддерживаю, если что-то из перечисленного будет, было бы здорово. Есть спорные моменты, я например люблю писать логические ИЛИ, НЕ, И большими буквами. Возврат Тогда на место мне кажется лишним может автор так задумал бывают длинные условия