Перейти на главную страничку сайта (список статей, файлы для скачивания)
Скрипты для платформы OpenConf, о которых пойдёт речь в этой статье, предназначены для повышения удобства навигации по коду конфигурации или внешних обработок 1С:Предприятия. Данные скрипты требуют наличия работающего OpenConf. Получить информацию об OpenConf (в том числе и о том, где его можно скачать вместе со скриптами, о которых пойдёт речь в этой статье) вы можете в статье "Проект OpenConf (Открытый Конфигуратор)" на этом сайте. Скрипты для платформы OpenConf распространяются свободно.
Установка скриптов сводится к следующему:
Установленные скрипты содержат макросы (состав макросов вы можете изучить в дереве на вкладке OpenConf окна конфигурации), каждому из которых вы можете назначить сочетание клавиш через меню "OpenConf" - "Макросы" - "Клавиатура...". Перед установкой сочетаний клавиш вы можете запустить любой макрос вручную, находясь в любом режиме работы, нажав Ctrl+M и выбрав нужный макрос в специальном диалоговом окне.
Скрипт Переходы по модулю.vbs содержит следующие полезные макросы:
Макрос | Описание |
---|---|
GotoBeginOfMethod | Позволяет быстро перейти к началу текущей процедуры/функции. Текущее положение курсора при этом запоминается, и к нему можно будет вернуться с помощью вызова макроса ReturnToSavedPosition. |
GotoEndOfMethod | Позволяет быстро перейти к завершению текущей процедуры/функции. Текущее положение курсора при этом запоминается, и к нему можно будет вернуться с помощью вызова макроса ReturnToSavedPosition. |
ReturnToSavedPosition | Позволяет быстро вернуться на позицию курсора, которую он занимал перед последним прыжком, сделанным с помощью GotoBeginOfMethod или GotoEndOfMethod. |
SelectProcedure | Позволяет быстро выделить весь текст текущей процедуры/функции, чтобы например, затем быстро скопировать его в буфер обмена или удалить. |
Скрипт ScriptMethodList.vbs содержит полезный макрос "ShowMethodsList". В ветви дерева "Скрипты" вкладки "OpenConf" в окне Конфигурации каждый скрипт представлен одним элементом. Двойной щелчок мыши, либо нажатие ENTER на самом элементе скрипта открывает скрипт для редактирования в текстовом редакторе 1С:Предприятия. Если вы находитесь в таком окне скрипта (vbs, js), макрос "ShowMethodsList" показывает список методов этого скрипта (для быстрого перехода к выбранному методу), а иначе просто показывает окно "Методы модуля" от OpenConf. Этому макросу удобно назначить сочетание клавиш Ctrl+1, сделав таким образом команду вызова списка методов универсальной - она будет правильно работать как в текстовом окне модуля, так и в текстовом окне скрипта. Это может оказаться удобным для просмотра или разработки скриптов OpenConf в текстовом редакторе 1С:Предприятия.
Примечание: иногда при работе со скриптами в текстовом редакторе 1С:Предприятия при наличии установленной бета-версии плагина "Телепат" возможны "вылеты" Конфигуратора (как правило, на больших скриптах). Поэтому используйте эту возможность осторожно.
Скрипт navigator.js предназначен для быстрого доступа к формам и модулям объектов метаданных конфигурации или объектам файловой системы, задаваемых в тексте модуля полным или относительным путём. Например, имея в тексте модуля подстроки типа "Справочник.Номенклатура" или "Журнал.Общий", вы можете мгновенно открыть любую из форм объекта в визуальном редакторе форм или любой из модулей объекта, если курсор стоит в пределах такой подстроки. Имея в тексте модуля подстроку, содержащую путь к файлу или папке, вы можете мгновенно открыть файл ассоциированной программой или папку в проводнике (в качестве базы для разрешения относительного пути до абсолютного используется каталог информационной базы). Работа осуществляется с помощью двух макросов: ОткрытьМодульДляОбъектаПодКурсором и ОткрытьФормуДляОбъектаПодКурсором, смысл которых ясен из идентификаторов. Если строка содержит путь файловой системы, то оба макроса работают одинаково, за исключением случая, когда внешний файл - это отчёт или обработка. Если открытие не срабатывает (например, из-за пробелов в пути), попробуйте предварительно выделить подстроку. Если вариантов открытия может быть несколько, выдаётся специальный диалог выбора. Макросам удобно назначить горячие клавиши:
Если установлен плагин "Телепат", то в подменю "Шаблоны" контекстного меню редактора текстов 1С:Предприятия будут добавлены два пункта: "Открыть форму..." и "Открыть модуль...", соответствующие описанным выше макросам.
Скрипт Навигация.vbs предназначен в основном для похожих целей, что и navigator.js, но работает несколько в другом стиле + имеет дополнительные возможности. Макросы скрипта:
Макрос | Описание |
---|---|
GoToObject | Выполняет переход к объекту, его модулям или месту инициализации переменной, или открывает файл (используя текст под курсором или элемент, который находится в фокусе). Поведение макроса достаточно подробно описано в комментариях в начале самого скрипта (дублировать эту информацию здесь большого смысла нет). Может выдаваться список вариантов, куда перейти. В частности, позволяет быстро перейти к процедуре модуля из формулы на кнопке или создать такую процедуру, если её ещё нет, перейти к объекту в дереве метаданных из реквизита диалога (по типу реквизита диалога), осуществлять прыжки внутри дерева метаданных (по типу объектов) и т.п. Поэксперементируйте с этим макросом в различных ситуациях, назначив ему сочетание клавиш (например, Ctrl+Shift+O). Использует NavigationTools.vbs (прочитайте комментарии в начале этого скрипта) и Открыть файл из директивы ЗагрузитьИзФайла.vbs. |
SelectAndNavigateToClasses | Служит для получения списка всех установленных классов 1С++, выбора из списка и открытия файла с телом класса, после чего показывается окно "Методы модуля" для быстрого перехода к нужному методу. Удобен для быстрой навигации по классам 1С++ и их коду. |
ToggleWorkbookPage | Переключение страниц Диалог/Модуль. Имеет смысл назначить клавишу F12, как в Delphi. |
GoToDialogPage | Переключение на страницу Диалога. |
GoToModulePage | Переключение на страницу Модуля. |
GoToMXLPage | Переключение на страницу шаблона Таблицы. Если шаблонов несколько, то выдаётся список для выбора. |
GoToPage | Переключение на страницу Диалога/Модуля/Таблицы. Выдаётся список всех страниц, и производится переход к выбранной странице. |
Скрипт NavigationTools.vbs используется макросом "GoToObject" скрипта "Навигация.vbs", а также имеет полезные макросы:
Макрос | Описание |
---|---|
ActivateFindEdit | Устанавливает фокус ввода в поле поиска на панели инструментов "Стандартная" и вставляет туда текст из буфера обмена (можно назначить ему сочетание клавиш Ctrl+F). |
SelectMetadataAndGotoObj | Осуществляет быстрый переход в дерево метаданных из любого режима работы (выдаётся список метаданных для выбора). В списке для выбора возможна мгновенная фильтрация по вхождению нескольких подстрок. Можно назначить макросу сочетание клавиш Ctrl+Shift+M. |
Скрипт Открыть файл из директивы ЗагрузитьИзФайла.vbs используется макросом "GoToObject" скрипта "Навигация.vbs".
Скрипт jumper.vbs реализует функционал для быстрого перемещения по тексту модуля по управляющим конструкциям "Если", "Пока", "Процедура" и т.п. Функционал реализован в трёх стилях (различающихся "размахом" прыжка) в виде трёх пар макросов для прыжков вверх и вниз. Выберите подходящий вам стиль и назначьте сочетания клавиш для прыжков вверх и вниз (например, Ctrl+Shift+U и Ctrl+Shift+D). Прочитайте комментарии в начале скрипта.
Скрипт FindText.vbs реализует функционал поиска текста в текущем модуле с установкой закладок с помощью регулярных выражений. Полезные макросы скрипта:
Макрос | Описание |
---|---|
FindWithAddBookmarks | При вызове макроса откроется окно поиска с двумя готовыми шаблонами: для поиска только в комментариях и только НЕ в комментариях. Для использования этих шаблонов замените текст в конце шаблона ("ВыражениеТолькоНеКомментариях" или "ВыражениеТолькоВКомментариях") на свой текст и нажмите Enter. Вы получите список найденного с номерами строк, из которого можно мгновенно перейти к любому найденному месту (обратите внимание, что размеры окна с этим списком можно изменять). В модуле будут автоматически установлены закладки на каждом найденном фрагменте (вы можете просмотреть их все, перемещаясь по модулю с помощью клавиши F2). При следующем вызове макроса список предлагаемых шаблонов поиска будет пополнен вашим шаблоном. |
FindWithoutAddBookmarks | То же, что и FindWithAddBookmarks, но закладки в модуле не устанавливаются. |
Макрос SelectFromComboBox скрипта Выбрать из списка.vbs позволяет осуществить быстрый выбор из выпадающего списка, в котором находится фокус ввода. Выбор производится с помощью удобного фильтрующегося списка (можно фильтровать по вхождению нескольких подстрок). Это удобно при выборе типа реквизита метаданного в диалоге "Свойства Реквизита" или при выборе типа реквизита диалога в окне "Свойства", когда фокус ввода находится в выпадающем списке. Скрипт также работает и в "обычных" списках, например при поиске в синтаксис-помощнике. Если "повесить" макрос на горячую клавишу (например, Alt+F7), то он отработает и в модальных окнах.
Людоговский Александр
Перейти на главную страничку сайта (список статей, файлы для скачивания)
© 2007 http://www.script-coding.com При любом использовании материалов сайта обязательна ссылка на него как на источник информации, а также сохранение целостности и авторства материалов.