Перейти к содержимому

Как отформатировать код в 1с

  • автор:

Группа параметров «V8 — Встроенный язык — Форматирование»

Группа параметров Встроенный язык: Форматирование позволяет вам настраивать правила форматирования модулей.

Команды форматирования

В соответствии с этими настройками вы можете отформатировать выбранный текст или открытый модуль, нажав в контекстном меню Источник > Формат .

Если вы хотите отформатировать все модули, которые есть в проекте, в панели Навигатор нажмите Отформатировать все модули встроенного языка в контекстном меню проекта.

Назначение команд

Назначение полей

Вкладка «Общие» Максимальная длина строки Ширина страницы в редакторе встроенного языка. Если заданы правила автоматического переноса (вкладка Автоперенос ), то строки, превышающие эту длину, будут переноситься. Размер табуляции Если для синтаксического отступа используются не символы табуляции (вкладка Отступ ), то в этом поле указывается количество символов, содержащихся в одном синтаксическом отступе. Если для синтаксического отступа используются символы табуляции, то это поле игнорируется, а один синтаксический отступ всегда содержит один символ табуляции. Включить форматирование Если флажок установлен, то команды форматирования используют перечисленные правила. Если флажок снят, то команды форматирования не выполняют никаких действий. Вкладка «Пустые строки» Минимальное значение пустых строк, идущих подряд Если количество пустых строк между инструкциями меньше этого числа, их количество будет увеличено до этого значения. Максимальное значение пустых строк, идущих подряд Если количество пустых строк, идущих подряд, превышает это число, их количество будет уменьшено до значения, указанного в поле Минимальное значение пустых строк, идущих подряд . Пробел между параметрами в методе Если флажок установлен, параметры метода будут отделены друг от друга пробелами. Если флажок снят, параметры метода не будут отделяться пробелами друг от друга. Пробел между пустыми параметрами в вызове метода Если флажок установлен, вместо пустого параметра в вызове метода будет вставлен пробел. Если флажок снят, пустой параметр метода не будет выделен никак. Вкладка «Отступ» Отступ внутри метода Если флажок установлен, перед всеми дочерними инструкциями будет один синтаксический отступ. Если флажок снят, все дочерние инструкции будут начинаться с той же позиции, что и объявление метода. Использовать пробелы для табуляции Если флажок установлен, для синтаксического отступа будут использованы пробелы том количестве, которое указано на вкладке Общие в поле Размер табуляции . Если флажок снят, для синтаксического отступа будут использованы символы табуляции: один отступ — один символ табуляции. Вкладка «Автоперенос» Тип переноса для бинарных выражений Если выбрано значение Без переноса , то каждый оператор будет записан в одну строку без переносов. Если выбрано значение Отступ , то текст, превышающий длину строки, переносится с одним синтаксическим отступом. Если выбрано значение Выравнивание , то каждый операнд переносится на новую строку, и эти строки выравниваются по позиции первого операнда. Тип переноса в вызове методов Если выбрано значение Без переноса , то каждый оператор будет записан в одну строку без переносов. Если выбрано значение Отступ , то текст, превышающий длину строки, переносится с одним синтаксическим отступом. Если выбрано значение Выравнивание , то каждый параметр переносится на новую строку, и эти строки выравниваются по позиции первого параметра. Тип переноса для параметров метода Если выбрано значение Без переноса , то каждый оператор будет записан в одну строку без переносов. Если выбрано значение Отступ , то текст, превышающий длину строки, переносится с одним синтаксическим отступом. Если выбрано значение Выравнивание , то каждый параметр переносится на новую строку, и эти строки выравниваются по позиции первого параметра. Применять нестрогое форматирование к оператору присваивания Если флажок установлен, то операция присваивания и выражение, находящееся справа от нее, могут располагаться в произвольном месте модуля и их положение не будет изменено. Если флажок снят, то операция присваивания будет находиться между левым и правым выражением, отделенная от них одним пробелом. Вкладка «Эталоны» Эталоны для ключевых слов Если выбрано значение СмешанныйРегистр , то ключевые слова будут записаны с использованием и верхнего, и нижнего регистра (в стиле CamelCase). Если выбрано значение нижнийрегистр , то ключевые слова будут записаны с использованием только нижнего регистра. Если выбрано значение ВЕРХНИЙРЕГИСТР , то ключевые слова будут записаны с использованием только верхнего регистра. Пустые скобки при создании объекта без параметров Если выбрано значение Всегда без скобок , то после идентификатора типа скобки не указываются. Если выбрано значение Всегда скобки , то после идентификатора типа будут указаны скобки. Если выбрано значение Не обрабатывать , то имеющийся вариант написания изменен не будет. Всегда заканчивать последнее выражение точкой с запятой Если флажок установлен, то последнее выражение всегда будет заканчиваться точкой с запятой. Если флажок снят, то имеющийся вариант написания изменен не будет, например, после Валюта точка с запятой может отсутствовать. Вкладка «Препроцессор» Не учитывать отступ для препроцессора Если флажок установлен, то инструкции препроцессора будут записаны без синтаксического отступа, а текст, содержащийся внутри них, будет отформатирован без учета этих инструкций. Если флажок снят, то инструкции препроцессора будут записаны с синтаксическим отступом, а текст, содержащийся внутри них, будет отформатирован с учетом этих инструкций.

Как отформатировать код в 1с

телефон программиста 1С8(495)005-62-29

skype: live:di-sem

Связь с программистом 1с через телеграм@programmist_1C

Заявка программисту 1СОтправить заявку

Советы программистам 1с при работе с конфигуратором

conf

Подсветка текущего идентификатора

1tekId

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

Выделяются все идентикаторы у которых такое же имя.

Очень удобно для поиска идентификатора по тексту кода.

Отладка под определенным пользователем

2otladkaPodPolz

Позволяет запускать отладку под определенным пользователем.

Незаменимо когда ошибка появляетося только у определенного пользователя или когда пользователю не хватает прав, но неизвестно каких.

Работа с открытыми окнами в конфигураторе

3okna

Позволяет расположить окна в удобном виде.

Выделить их все и закрыть.

Форматирование текста кода

Выделить нужный фрагмент кода и нажать Alt+Shift+F

либо через меню:

4format p2

4format do

4format p

Предположим, вы дорабатываете незнакомую конфигурацию и в каком-то модуле вам попался неотформатированный текст. Вам трудно в нем разобраться и вы хотите улучшить его читаемость, да и вообще сделать более «приличным».
В этом случае вам не нужно вручную двигать строки текста с помощью клавиши Tab, так как это гораздо удобнее и быстрее сделать с помощью форматирования блока текста.
Для этого выделите этот фрагмент текста (или сразу весь модуль – Ctrl + A) и нажмите кнопку Форматировать (Alt + Shift + F) в командной панели Текст.

Вывод списка всех процедур модуля + заготовки предопределенных процедур

5proc

Вернуться в исходное место после команды «Перейти к определению».

Во время анализа кода мы хотим посмотреть что за процедура или функция вызывается. Жмем ПКМ и выбираем перейти к определению и переходим к нужной процедуре/функции.

6perehod1 1

Но после просмотра функции мы хотим вернуться обратно. Для этого жмем «CTRL» + «-«:

6perehod2 2

Посмотреть где используется выделенная процедура/функция

6perehod3

Откуда была вызвана процедура/функция? Стек вызовов.

Допустим что в этой процедуре у нас ошибка мы ставим точку останова, но видим что в процедуру уже поступают неверные параметры.

7steck1

Нужно узнать откуда была вызвана данная процедура. Вызываем стек вызовов:

7steck2

Видим все процедуры из которорых мы перешли к текущей:

7steck3

Вырезать часть кода в отдельную процедуру/функцию

8 1

Мы хотим часть кода вывести в отдельную процедуру чтобы использовать ее в других процедурах.

Для этого выделим нужную часть, вызовем контекстное меню и сделаем так:

8 2

8 3

Закладки и перейти к строке.

Бывает что код достаточно большой и нужно «прыгать» от одного места к другому.

Искать место глазами совсем неудобно.

Лучше воспользоваться следующими инструментами.

1 Переход к строке.

Запоминаем номер строки, он написан в правой нижней части экрана

9 0

Жмем в любом месте этого модуля кнопку или сочетание клавиш

9

В нужной строке жмем Alt+F2 либо через меню

9 1

Переход по закладкам горячие клавиши:

F2 — Следующая закладка

Shift+F2 — Предыдущая закладка

Остановить отладчик до наступления ошибки.

Отладчик будет остановлен на строке на которой будет ошибка.

10 1

10 2

10

Проверим что скажет отладчик.

10 3

и остановит процедуру на нужной строке

10 4

Вычислять выражение не меняя код.

В контекстном меню при остановке отладчика есть команда «Вычислить выражение». Shift+F9

11 1

11 2

В поле «Выражение» мы можем написать любой код и тут же получить ответ. Например:

11 3

Контекстная подсказка по параметрам

podskParam

Принудительно вызвать обычную контекстную подсказку: CTRL+Пробел

При изменении объекта метаданных отключить автоматический поиск ссылок на него.

Инструмент безусловно полезный, но нужен он не всегда.

refact 1

Отключается в Сервис-Параметры. Убрать галочки в группе «Рефакторинг при изменениях в метаданных и формах»:

refact 2

Перейти от окна к объекту в дереве конфигурации

Когда открыто много окон и нужно найти объект в дереве конфигуратора, то приходится его долго искать.

Горячие клавишы CTRL+T позволяют тут же перейти из окна к объекту в дереве конфигурации

ctrl T

  • Главная
  • Блог
  • В помощь 1с программисту
  • Советы программистам 1с при работе с конфигуратором

1с форматирование блока кода

Для того что бы программный код было удобно читать и разбираться в нем, следует использовать форматирование кода. Заключается оно установке одного или нескольких отступов размером в 4 пробела(Tab) перед строкой кода в зависимости от ее иерархии в пределах модуля.

Например код внутри условного оператора находится на следующем уровне иерархии от самого условного оператора и должен отстоять от его начала на один Tab. Такие же условия действуют и для операторов внутри цикла, процедуры, функции, попытки и т.д.

В данном примере Функция находится на первом уровне иерархии кода и для нее не требуется отступов, операторы внутри функции образуют второй уровень иерархии и перед ними ставится один отступ, оператор внутри условия находится на третьем уровне иерархии и перед ним ставится два отступа относительно функции или один относительно условного оператора.

Правильно отформатировать программный код можно не только вручную, а также выделив блок кода и нажав сочетание клавиш Alt + Shift + F (или Меню Текст -> Блок -> Форматировать).

Оформление кода в модуле

В системе 1С, при работе с модулем используется единое оформление. Данное оформление модуля можно изменить.

Стандартное оформление:

Цвета:

Красным цветом выделяются операторы и ключевые слова.

Зеленым оформляются комментарии.

А синим оформляются идентификаторы.

Отступ у вложенных блоков, к примеру у операторах цикла имеют отступ 4 символа.

Изменение оформления:

Данное оформление можно изменить, к примеру если у вам маленький экран. Для этого необходимо зайти в меню «Сервис > Параметры». В открывшемся окне «Параметры», откроем закладку Модули, а в ней Редактирование.

В данной закладке можно:

    • Настроить выделение синтаксических конструкций, для этого есть список Выделение цветом синтаксических конструкций .
    • Запретить выделение цветом
    • включить Автозамену , об этом расскажу позже. В общем данная опция позволяет автоматически заменять вводимый текст, на текст из шаблонов.
    • включить автоматическую замену в комментариях.
    • Заменять табуляцию при вводе , включая данную опцию табуляция будет заменятся на пробелы.
    • Ширина табуляции позволяет указать отступ в конструкции встроенного языка.
    • Автоотступ — позволяет обрабатывать автоотступ при переноси строки. По умолчанию обрабатывается с учетом синтаксических конструкций.
    • И последние, это возможность выбора шрифта .

    Лично я, не изменяю ничего кроме Автозамена. Еще я уменьшаю Ширина табуляции, на 2 символа, но только для нетбука.

    Форматирование кода

    В 1С можно автоматически форматировать текст кода, т.е. расставлять отступы. У меня на картинке изображен кусок кода который оформлен не верно. Что бы привести в порядок код, выделим его и нажмем на кнопку 1.

    Такого рода конструкции можно писать сразу нормально, т.к. при переносе система сама ставит отступы. Но бывает когда код занимает много места и из него удаляется цикл, что влечет за собой смещение операторов внутри цикла.

    Так же в 1С, можно смещать выделенные строки 1 знак табуляции влево и вправо. Для этого есть кнопка 2 и 3, которые изображены на рисунке.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *