bsl_console icon indicating copy to clipboard operation
bsl_console copied to clipboard

Дополнительное форматирование.

Open PerlAmutor opened this issue 3 years ago • 2 comments

Хотелось бы улучшить движок форматирования кода дополнительными функциями, которые можно было бы задействовать или нет. Например есть код:


	Если ТипЗнч(Макет) = Тип("ОбъектМетаданных") Тогда
		Шаблон = новый структура("ТипМакета");
		перем1 = 1;перем2="А";
		перем3 = 1;
		перем4наименование = 2;
		перем5код = 3;
		заполнитьЗначениясвойств(Шаблон,Макет);
		ТипМакета = Неопределено;
		если Шаблон.свойство("ТипМакета", ТипМакета)
			тогдА
			Возврат ТипМакета <> Неопределено;
		КонецЕсли;
		
	КонецЕсли;


При форматировании хотелось бы выполнение следующих действий:

  • Приведение имен ключевых слов кода и методов к каноническому виду
  • Автоматическое удаление лишних отступов в пустых строках и в концах строк
  • Автоматическое выравнивание последовательно идущих присваиваний переменным
  • Разбивка строки кода команд разделенных символом ";" на несколько последовательных строк
  • Возврат ключевых слов на позиции где они должны быть (напр. в Если ... Тогда, ключевое слово "Тогда" вернуть обратно на строку с Если).
  • Автоматический отступ от запятой в перечислении параметров методов/функций/процедур

Желаемый результат относительно примера выше:


	Если ТипЗнч(Макет) = Тип("ОбъектМетаданных") Тогда

		Шаблон             = Новый Структура("ТипМакета");
		перем1             = 1;
		перем2             = "А";
		перем3             = 1;
		перем4наименование = 2;
		перем5код          = 3;

		ЗаполнитьЗначениясвойств(Шаблон, Макет);

		ТипМакета = Неопределено;

		Если Шаблон.Свойство("ТипМакета", ТипМакета) Тогда
			Возврат ТипМакета <> Неопределено;
		КонецЕсли;

	КонецЕсли;


PerlAmutor avatar Dec 06 '21 07:12 PerlAmutor

Хотелось бы улучшить движок форматирования кода дополнительными функциями, которые можно было бы задействовать или нет.

Постараюсь что-нибудь придумать.

salexdv avatar Dec 06 '21 07:12 salexdv

Поддерживаю, если что-то из перечисленного будет, было бы здорово. Есть спорные моменты, я например люблю писать логические ИЛИ, НЕ, И большими буквами. Возврат Тогда на место мне кажется лишним может автор так задумал бывают длинные условия

Evg-lylyk avatar Feb 18 '22 10:02 Evg-lylyk