Снегопат - программный комплекс для 1С–программистов, который делает Конфигуратор удобнее и продуктивнее, улучшая контекстную подсказку и добавляя кучу новых возможностей. Для ознакомления с возможностями Снегопата создана эта демо-версия.
Она основана на релизе 1.4.7.2
Снегопата, и включает помимо самого снегопата базовый набор
полезных скриптов, разработанных сообществом пользователей. Также уже сделаны общеупотребительные
настройки и назначены горячие клавиши. В дальнейшем вы можете их менять.
В демо-версию встроены следующие ограничения:
Большая часть функционала Снегопата реализована в виде макросов. Макрос - это команда самого снегопата или дополнительных аддинов, которая может быть вызвана пользователем. Также аддины могут сами выполнять какие-нибудь действия в ответ на происходящие в конфигураторе события.
ВАЖНО: Внимательно прочтите ВЕСЬ этот документ, с описаниями дополнительных скриптов. Это может отсеять сразу многие ваши вопросы.
Для установки достаточно просто распаковать папку куда-либо. Если вам часто приходится работать "на выезде", лучше всего держать снегопат на флешке, так он будет всегда под рукой.
ВАЖНО: Так как Снегопат хранит настройки в своей папке, у вас должны быть права на запись в папку после ее распаковки.
Далее необходимо зарегистрировать дополнительные компоненты, необходимые для работы скриптов.
Для этого запустите файл scripts\bin\regall.cmd
. Если носите на флешке, не забывайте это делать
на каждом новом рабочем месте.
Для запуска конфигуратора со снегопатом запустите программу core\starter.exe
. Она запустит стандартный
стартер 1С, и будет отслеживать запуск им Конфигуратора, после чего внедрит в запущенный Конфигуратор
snegopat.dll.
ВАЖНО: отслеживание и внедрение выполняется с помощью библиотеки inject.dll, и используемые для этого методы некоторыми антивирусами ошибочно детектируются как вирусная активность. В этом случае просто внесите ее в список исключений антивируса.
ВАЖНО: Если снегопат при запуске не может найти стандартный стартер 1С (1cestart.exe), прочитайте, как это исправить здесь.
После запуска, в открывшемся Конфигураторе появится окно Снегопата.
В окне показаны загруженные аддины, а также содержится интерфейс для выполнения некоторых действий
и настроек. Список загружаемых аддинов находится в файле addins.ini
и может быть изменен вами в соответствии
с вашими нуждами.
Хоткеи можно посмотреть и настроить, нажав кнопку Клавиатура
в окне снегопата.
Для добавления хоткея нажмите Ins
в таблице хоткеев, выберите макрос и желаемое сочетание клавиш.
После настройки, нажмите кнопку Применить
в командной панели окна. На одно сочетание клавиш может
быть назначено несколько макросов, в этом случае они выполняются последовательно, в порядке их назначения,
пока один из макросов не вернет не false.
Здесь я опишу те хоткеи, которые уже предустановленны в демо-версии:
Ctrl + M
- этот хоткей работает всегда, независимо от настройки других хоткеев. Позволяет
выбрать и выполнить макрос.Ctrl + Alt + S
- показывает и активирует окно снегопата.Ctrl + 1
- вызвать встроенное в снегопат окно со списком методов текущего модуля.Ctrl + 3
- вызвать альтернативное окно методов текущего модуля.Ctrl + Alt + Пробел
- Вызов контекстного списка Снегопата.Ctrl + Enter
- Если активно текстовое окно, то переход к определению слова под курсором,
как по нажатию F12, при этом подавляется вывод диалога выбора при переходе к методу общего модуля.
Если же находимся в дереве метаданных, то позволяет перейти к объекту метаданных, на который ссылается
текущий объект.Ctrl + Shift + Enter
- вернуться назад после нажатия Ctrl + Enter в дереве метаданных.Alt + Влево
- вернуться назад после F12, Ctrl + Enter, аналогично штатному Ctrl + -
.Alt + Вправо
- перейти вперед, аналогично штатному Ctrl + Shift + -
.Ctrl + Shift + Пробел
- показать параметры вызова текущего метода.Alt + Вниз
- листать подсказку о параметрах метода, если она отображает методы нескольких типов.Alt + Вверх
- листать подсказку о параметрах метода, если она отображает методы нескольких типов.Ctrl + 2
- быстро выбрать тип, для которого показывать подсказку о параметрах метода,
если она отображает методы нескольких типов.Alt + ,
- вставить <
в текущий текст.Alt + .
- вставить >
в текущий текст.Alt + 2
- вставить @
в текущий текст.Alt + 3
- вставить #
в текущий текст.Alt + 4
- вставить $
в текущий текст.Alt + 6
- вставить ^
в текущий текст.Alt + 7
- вставить &
в текущий текст.Alt + N
- вставить Null
в текущий текст.Alt + ~
- вставить ~
в текущий текст.Alt + [
- обрамить выделенный текст [
и ]
.Alt + Shift + [
- обрамить выделенный текст {
и }
.Alt + ]
- вставить ]
в текущий текст.Alt + Shift + ]
- вставить }
в текущий текст.Alt + '
- обрамить выделенный текст '
и '
.Alt + Shift + '
- обрамить выделенный текст "
и "
.Alt + =
- вставить =
в текущий текст.Alt + A
- скрипт Авторские комментарии - вставить маркер "Добавлено".Alt + C
- скрипт Авторские комментарии - вставить маркер "Изменено".Alt + D
- скрипт Авторские комментарии - вставить маркер "Удалено".Ctrl + Alt + T
- захватить текущий объект в хранилище.Ctrl + =
- выровнять в выделенном тексте знаки =
.Ctrl + ;
- сдвинуть блок выделенного многострочного текста влево на пробел, не сдвигая символ |
.Ctrl + '
- сдвинуть блок выделенного многострочного текста вправо на пробел, не сдвигая символ |
.Ctrl + Shift + ;
- сдвинуть блок выделенного многострочного текста влево на tab, не сдвигая символ |
.Ctrl + Shift + '
- сдвинуть блок выделенного многострочного текста вправо на tab, не сдвигая символ |
.Ctrl + D
- клонировать текущую строку текста ниже.Ctrl + Shift + U
- преобразовать регистр выделенного текста в ПРОПИСНЫЕ.Ctrl + U
- преобразовать регистр выделенного текста в строчные.Shift + 2
, Shift + '
- если есть выделенный текст, обрамить его в "
и "
, иначе просто вставить "
.Shift + 9
, Shift + 0
- если есть выделенный текст, обрамить его в (
и )
, иначе просто вставить
(
или )
.Ctrl + ~
- вызвать навигатор по метаданным.Ctrl + E
- открыть окно внешних файлов.Ctrl + W
- открыть окно альтернативной панели окон.Alt + F
- Расширенный поиск: найти текст.Ctrl + Alt + F
- Расширенный поиск: Найти во всех открытых документах.F3
- Расширенный поиск: Перейти к следующему совпадению.Shift + F3
- Расширенный поиск: Перейти к предыдущему совпадению.Ctrl + Вверх
- скрипт vimcomplete: вставить одно из предыдущих слов.Ctrl + Вниз
- скрипт vimcomplete: вставить одно из следующих слов.Ctrl + 4
- выбрать и подставить шаблон с помощью скрипта snippets.jsПомните, что в хоткеи вынесены только часто употребительные команды снегопата и аддинов, и через окно макросов можно воспользоваться еще разными командами. Изучайте поставляемые скрипты и их макросы и настройки.
Демо-версия комплектуется набором дополнительных скриптов и аддинов, расположенных в папке scripts
.
Описания скриптов можно искать на сайте и на форуме.
В разделе "Гостевой" форума могут писать и незарегистрированные пользователи, нужно только сначала
авторизоваться на основном сайте как anonymous, нажав кнопку
"Заполнить капчу".
Аддин SciColorerV8, который предоставляет альтернативный редактор модулей включен в поставку, но по-умолчанию
не подключен, для его подключения раскомментируйте нужные строки в addins.ini
.
Кратко перечислю загруженные аддины:
Позволяет при правке модуля быстро вставлять комментарии о добавлении, изменении и удалении кода.
Макросы для этого уже назначены на хоткеи.
Описание
Содержит разные плюшки для форматирования текста в текущем модуле:
Предназначен для расширения возможностей штатного механизма шаблонов кода конфигуратора 1С:Предприятия 8.
Позволяет использовать в шаблонах дополнительные управляющие конструкции, а также подставлять в шаблоны
текущий выделенный в редакторе текст ("обрамлялки").
Предустановлена настройка брать шаблоны из файла scripts\std-templates\Development8x.st
, в котором
помимо прочего добавлены шаблоны для обрамления выделенного текста в блоки Если, Пока, Для, Попытка.
Также эти шаблоны-обрамлялки вынесены в макросы этого скрипта и могут быть назначены на горячие кнопки.
Основной макрос скрипта назначен на Ctrl + 4
.
Описание
Позволяет быстро сохранить/установить цвета для редактора модулей.
Содержит три встроенные схемы - стандартную схему 1С и светлую с темной схемы из
вот этой разработки с инфостарта
При первом запуске сразу сохраняет вашу текущую цветовую схему и назначает "светлую".
Если она вам не понравится, можно восстановить сохраненную с помощью макроса
Настройка профилей цветов редактора::Применить цветовую схему
.
Описание
Позволяет быстро подобрать слово из уже набранных в тексте выше или ниже.
Принцип дополнения базируется на идее, что очередное набираемое слово уже присутствует выше или далее в тексте.
При вызове команды дополнения в качестве отправной точки используется часть набранного слова слева от позиции курсора и затем ищется ближайшее слово, начинающееся с этих же символов (вверх по тексту или вниз по тексту в зависимости от вызванного макроса). Очередной вызов макроса выполнит поиск и подстановку следующего слова и так по кругу, пока все подходящие слова не закончатся. Макросы уже назначены на хоткеи Ctrl + Вверх
и Ctrl + Вниз
.
Описание
Скрипт предназначен для помощи в свертке многострочных строк, путем быстрой вставки маркеров
группировки //{
и //}
перед и после многострочных литералов.
Содержит два макроса:
Скрипт для организации рефкаторинга. Сейчас поддерживаются extract method
и несколько дополнительных
фишек.
extract method - выделите текст, который хотите вынести в отдельный метод и вызовите макрос.
Скрипт, позволяющий сгенерировать код для создания таблицы значений.
Описание и видео
Скрипт, организующий работу различных генераторов кода. Сейчас это
Содержит ряд макросов для различного редактирования текста текущего модуля.
Один из наиболее мне нравящихся - клонировать строку (Ctrl + D
) - вставляет под текущей строкой
ее копию, а также содержит макросы (по большей части уже назначенные на хоткеи) для преобразования
регистра выделенного текста, а также обрамления его кавычками или скобками.
Скрипт позволяет получить отчет о подписках на события в разрезе объектов метаданных и быстро
переходить к подпискам, объектам и обработчикам событий.
Описание
Ряд макросов для облегчения работы с хранилищем. На Ctrl + Alt + T
назначен захват текущего редактируемого
объекта в хранилище.
Описание
Скрипт для быстрого перехода в дереве метаданных по ссылкам на текущий объект.
Очень удобно, например, находясь на реквизите, переходить к объекту - его типу.
Этот макрос уже назначен на Ctrl + Enter
.
Описание
Скрипт для быстрого поиска метаданных и перехода к ним. Основной вызов по Ctrl + ~
.
Как пользоваться - в-основном понятно по ходу работы.
Одна неочевидная возможность: если текущий выбор стоит на объекте, имеющем модуль, то набрав в строке
фильтра :
, сразу попадаем в список методов модуля, и все, что в фильтре после двоеточия - фильтрует уже
методы.
Описание
Скрипт при первом подключении к хранилищу предлагает запомнить параметры подключения и в дальнейшем при подключении сразу подставляет сохраненные параметры и нажимает Ок. Содержит макросы для сброса сохраненных данных и настройки показа сообщения при подключении.
Мощный скрипт для организации работы с внешними файлами. Создает окно с деревом файлов.
Настолько мощный, что я сам еще не знаю всех его возможностей :). Позволяет интегроваться
с системами контроля версий - fossil, git, bazaar.
Описание
Просто крутой и удобный поиск. Может искать в текущем модуле, в открытых документах, в модулях конфигурации.
Поддерживает поиск регулярными выражениями (включая многострочный), глобальный поиск в фоне и многое другое.
Описание
Альтернативное окно с методами текущего модуля. Показывает в числе прочего и кто вызывает метод, а
для обработчиков - контрол, который его вызывает. Назначен на Ctrl + 3
.
Описание
Скрипт для облегчения выбора нужного типа из списка типов.
Описание
Альтернативная панель окон, открытых в Конфигураторе. Назначена на Ctrl + W
.
Группирует окна по принадлежности к объектам метаданных, то есть окна одного объекта будут находится рядом
в списке. Поддерживает отбор окон по вхождению слов в заголовок окна. При нажатии Enter
- активирует окно,
при нажатии Ctrl + Enter
- активирует окно и закрывается. С помощью скрипта SessionManager.js позволяет
сохранять и восстанавливать сессии (наборы открытых окон) и многое другое.
Обсуждение
Супер-обработка, позволяет быстро и удобно написать и отладить регулярное выражение.
Описание
Позволяет организовывать сессии - наборы открытых окон в конфигураторе. Позволяет к примеру при запуске конфигуратора сразу открыть те объекты, которые были открыты при его закрытии.
Позволяет гибко настраивать заголовок окна Конфигуратора.
Описание
Позволяет упростить отладку с применением подсистемы "Инструменты разработчика".
Обсуждение
Скрипт автоматически при отладке показывает значения всех переменных в текущем контексте, а также
позволяет добавлять и свои выражения (как в Табло).
Описание
Позволяет быстро выбрать нужную главу справки, когда их много с одним названием.
Описание
Реализует быстрый поиск/выбор подсистем в модальном окне фильтра подсистем. Позволяет быстро включить/выключить
отбор по подсистемам в окне конфигурации.
Описание
Скрипт для быстрого выбора из вариантов подсказки параметров. Если Снегопат находит много одноименных методов
для подсказки параметров, т.е. пишет [n из M]
, то нажав Ctrl + 2
можно быстро найти тип, для метода которого
необходимо показать параметры. Сейчас я работаю над усовершенствованием этого скрипта, чтобы он по-возможности
сам отсеивал все лишнее, но когда доделаю - неизвестно.
Описание
Скрипт очищает окно сообщений перед выполнением команды синтаксической проверки.
Вместо вас отвечает на некоторые вопросы Конфигуратора, так что вы их даже не видите.
Список таких ответов лучше смотреть в самом скрипте.
Описание
Скрипт при запуске 1С автоматически подключает использование всех файлов шаблонов,
которые находятся в папках scripts\std-templates
или папка снегопата\templates
.
Полезно для часто работающих "на выезде". В поставку включен файл с очень хорошими
шаблонами с инфостарта - Development8x.st.