Текстовый редактор системы 1С:Предприятие предоставляет пользователю все основные функции, необходимые при редактировании текстов. Он используется для редактирования текстовых документов, программных модулей и модулей форм.
Разработчик помимо конфигурирования объектов большую часть времени использует встроенный язык 1С для написания программного кода, который редактируется с помощью редактора текстов, поэтому важно знать возможности и уметь пользоваться данным редактором.
Выделение цветом синтаксических конструкций
Для удобства редактирования текстов модулей текстовый редактор имеет возможность выделения цветом элементов встроенного языка ‑ ключевых слов; констант типа «Число», «Строка», «Дата»; операторов, комментариев и т.д. Свойства и методы глобального контекста к конструкциям встроенного языка не относятся, поэтому цветом не выделяются, цвет совпадает с цветом идентификаторов.
Список операторов и синтаксических конструкций можно посмотреть в Синтакс-помощнике в разделе «Общее описание встроенного языка – Операторы и синтаксические конструкции». Список операторов и синтаксических конструкций подсвечивается по умолчанию красным цветом, можно посмотреть в Синтакс-помощнике в разделе «Общее описание встроенного языка – Операторы и синтаксические конструкции». Все остальное подсвечивается по умолчанию синим цветом.
Настроить выделение цветом синтаксических конструкций можно, вызвав пункт «Сервис ‑ Параметры», закладка «Редактирование», закладка «Модули», группа параметров «Выделение цветом синтаксических конструкций». Здесь же можно настроить параметр «Запретить выделение цветом» синтаксические конструкции, тогда ключевые слова, такие как функция, процедура, цикл и другие, выделяться в модуле не будут.
Когда текстовый редактор открывается для редактирования текста модуля, автоматически включается режим «Встроенного языка». Но если открываем текстовый модуль из внешнего файла, то он не распознается как программный модуль и будет считаться обычным текстовым документом, в таком случае режим «Встроенного языка» автоматически не включается. Для его включения служит пункт «Текст ‑ Встроенный язык».
Сохранение печатных форм
Печатную форму текстового документа можно сохранить только в текстовый файл.
Синтаксический контроль
Редактируемый модуль может быть проверен на правильность использования синтаксических конструкций встроенного языка. Для выполнения синтаксического контроля модуля необходимо воспользоваться пунктом «Текст ‑ Проверка модуля» или комбинацией клавиш «Ctrl + F7». После успешной проверки модуля появится служебное сообщение «Синтаксических ошибок не обнаружено!», при наличии ошибок появится служебное сообщение с их описанием и адресом местонахождения, указанного в скобках, например, (3,25) – строка 3, колонка 25. Если два раза щелкнуть по строке ошибки, курсор мышки автоматически устанавливается в модуле на проблемном участке кода.
Синтаксический контроль можно выполнять в любой момент редактирования модуля. Если включен режим «Автоматической проверки модуля», при закрытии текста модуля или сохранении всей конфигурации будет выполняться синтаксический контроль модуля. Режим «Автоматической проверки модуля» находится в параметрах (пункт главного меню «Сервис ‑ Параметры»), закладка «Модули», закладка «Проверка», свойство «Проверять автоматически».
Группировки и области
Группировка
В модулях или в текстовых документах, просматриваемых в режиме «Встроенный язык», некоторые синтаксические конструкции (условия, циклы, процедуры и д.р.) автоматически объединяются в группы, которые можно сворачивать и разворачивать. Группы позволяют лучше воспринимать различные части текста, а также переносить и копировать группу целиком.
При наведении курсора на значок свернутого текста можно посмотреть содержимое свернутой группы. Если текст группы достаточно большой, то выводится только его начальная часть.
Область
В процессе разработки возникает необходимость группировать произвольные строки модуля. Это можно сделать с помощью инструкций препроцессора #Область … #КонецОбласти.
При наведении курсора на свернутую область можно посмотреть содержимое свернутой области. Если текст области достаточно большой, то выводится только его начальная часть.
При открытии модуля по умолчанию процедуры, функции, комментарии процедур и функций, циклы, условия, области и комментарии областей могут быть сразу свернуты или развернуты, все зависит от настроек.
Автоматическая группировка и сворачивание
Настройку автоматической группировки и автоматического сворачивания синтаксических конструкций при открытии модуля можно выполнить в пункте главного меню «Сервис ‑ Параметры», закладка «Модули», закладка «Группировка».
Чтобы просмотреть текст свернутой группировки, нужно нажать на маркер в виде «+» в начале строки группировки или в настройках отключить сворачивание группировок.
Работа с закладками
В процессе работы с текстом модуля может появиться необходимость отметить какую-либо строку для дальнейшего быстрого возврата к ней. Для этих целей используются закладки в меню «Текст». По закладкам в пределах одного модуля можно перемещаться, все закладки одного модуля можно удалить.
Список всех установленных закладок можно посмотреть в специальном окне «Закладки», вызванного из пункта меню «Правка – Список закладок». В этом окне можно выполнить переход к нужной закладке, удалить ее или удалить все закладки. Список закладок сохраняется между сеансами работы в конфигураторе.
Форматирование модуля
Редактор текстов позволяет выполнять форматирование синтаксических конструкций, что облегчает просмотр и редактирование модуля.
Хорошим тоном написания модулей считается использование синтаксического отступа – это выделения лидирующими пробелами (табуляцией) управляющих конструкций встроенного языка системы 1С:Предприятие. Такой отформатированный текст с синтаксическими отступами удобнее в восприятии и проще в отладке. Ниже приведен пример.
Текстовый редактор способен автоматически форматировать управляющие конструкции встроенного языка, смещая вправо уже введенный текст, расположенный внутри управляющих конструкций, за счет добавления в начало строк необходимого количества знаков табуляции. Для настройки автоматического форматирования в меню «Сервис – Параметры», закладка «Модули», закладка «Редактирование» свойство «Автоотступ» можно установить один из трех режимов: Отключить, Включить и Синтаксический.
Кроме автоматического форматирования текста модуля можно также отформатировать уже введенный текст. Для этого необходимо выделить блок текста, который требуется отформатировать, и выбрать пункт «Текст – Блок – Форматировать». При этом текстовый редактор проанализирует текст модуля и выполнит его форматирование, при котором содержимое каждой синтаксической конструкции будет сдвинуто вправо на величину табуляции.
Дополнительно можно при форматировании увеличить или уменьшить отступ; добавить или удалить комментарий; добавить или удалить перенос строк используя пункт меню «Текст – Блок».
Работа с комментариями
При работе с текстом модуля иногда появляется необходимость часть кода отключить (закомментировать), а также хорошим тоном написания кода является комментирование основных блоков или некоторых процедур, функций, параметров, переменных для понимания их назначения и функционала. Для комментирования используются два слеша //. Для добавления комментария используется пункт меню «Текст – Блок – Добавить комментарий», для удаления – «Текст – Блок – Удалить комментарий».
Переход по процедурам и функциям
Поиск нужной функции в текущем модуле удобно осуществлять с помощью режима поиска процедур и функций, пункт меню «Текст – Процедуры и функции». На экран будет выведено окно, содержащее список всех процедур и функций редактируемого модуля.
Имена процедур и функций в списке выводятся в порядке их расположения в модуле. Если установлен флаг «Сортировка», список будет отсортирован по алфавиту. Имена процедур и функций, уже расположенных в форме, имеют пиктограмму или слева от наименования.
Также поиск процедур и функций можно осуществлять через пункт меню «Правка – Найти».
Переход к определению процедур и функций
Редактор текстов позволяет автоматически перейти к определению процедуры или функции, для этого необходимо установить курсор на имени нужной процедуры или функции в теле модуля и нажать «F12» или выполнить команду контекстного меню «Перейти к определению».
При переходе к определению этой же процедуры или функции откроется текст процедуры или функции (раскроется группировка). Если установить курсор на имени свернутой функции в теле модуля и выполнить команду контекстного меню «Перейти к определению», текст функции раскроется, раскроется группировка.
Если установить курсор на имени развернутой функции в теле модуля и выполнить команду контекстного меню «Перейти к определению», то ничего не произойдет, так как курсор установлен на определении функции и группировка раскрыта.
Для возврата в точку, откуда был осуществлен переход к определению, необходимо нажать комбинацию клавиш «Ctrl + –». Клавиша «-», расположенную в группе «Алфавитно-цифровых клавиш» клавиатуры.
Поиск мест использования процедур и функций
Текстовый редактор позволяет осуществить поиск мест использования функции или процедуры во всей конфигурации. Для поиска нужно курсор поместить на процедуру или функцию, и в контекстном меню выбрать пункт «Найти использование». После поиска откроется окно с результатами. Двойным щелчком по требуемой строке можно перейти к соответствующему месту в модуле.
Синий восклицательный знак символизирует о достоверном и точном определении, а красный восклицательный знак символизирует о неточном определении.
Контекстная подсказка
Текстовый редактор предоставляет средство контекстного ввода выражений с мощной на текущий момент подсказкой. Контекстный список позволяет выбрать нужное свойство, метод, функцию и т.д., при этом в контекстный список могут быть включены шаблоны текстов и ключевые слова.
Контекстная подсказка вызывается нажатием комбинации клавиш «Ctrl+Пробел» на любой стадии набора выражения или автоматически после ввода символа «.» (точки) после выражения, представляющего собой объект, имеющий свойства и/или методы. Если список подсказок состоит только из одной строчки, то нажатие комбинации клавиш «Ctrl+Пробел» приводит к непосредственной вставке этой строки. «Контекстная подсказка» позволяет быстро и правильно набирать текст модулей.
Контекстная подсказка параметров выбранного метода
Контекстная подсказка позволяет отображать перечень параметров выбранного метода, а также его тип. Это позволяет быстро и правильно писать программный код. Для вызова перечня параметров, необходимо после скобки «(» поставить курсор и нажать комбинацию клавиш «Ctrl + Shift + Пробел». Если у метода есть несколько вариантов, то, используя в подсказке стрелки, можно выбрать нужный вариант.
Ваганов Сергей, эксперт в области разработки прикладных решений на платформе 1С:Предприятие, преподаватель-методист CORS Academy и автор курса «Разработчик 1С с нуля до профессионала».
Статья создана на основе материалов курса «Разработчик 1С с нуля до профессионала».
