Changes To snippets.js Вы: nobody
Вход

Initial version of "snippets.js"

            1  +Скрипт <b>"Шаблоны кода"</b> (snippets.js)
            2  +
            3  +Предназначен для расширения возможностей штатного механизма шаблонов кода конфигуратора 1С:Предприяти 8.
            4  +
            5  +<h2>Возможности скрипта</h2>
            6  +
            7  +<h3>Вставка шаблонов из списка шаблонов</h3>
            8  +
            9  +Штатный механизм шаблонов включает все шаблоны в список контекстной подсказки, что не для всех удобно.
           10  +Скрипт "Шаблоны кода" содержит макрос "Выполнить подстановку шаблона", который позволяет отдельный открыть список доступных 
           11  +шаблонов.
           12  +
           13  +После выбора шаблона будет произведен его парсинг и вставка в текущую позицию курсора (или вместо выделенного текста, 
           14  +если было установлено выделение).
           15  +
           16  +<h3>При помощи скрипта шаблон "применять" к текущему выделению.</h3>
           17  +
           18  +Любые шаблоны, содержащие в себе штатную конструкцию "Установка курсора" (&lt;?&gt;) могут быть не просто вставлены 
           19  +в текст модуля в текущую позицию, но и "применены" к выделенному тексту.
           20  +
           21  +Это означает, что выделенный текст перед вставкой шаблона будет подставлен в текст шаблона вместо управляющей конструкции 
           22  +"Установка курсора" (&lt;?&gt;), а затем полученный код будет вставлен в текст модуля вместо выделенного текста.
           23  +
           24  +<h3>Возможность указывать альтернативную позицию установки курсора</h3>
           25  +
           26  +В шаблоне, который предполагается использовать одновременно для создания нового кода и для "применения" к выделенному тексту 
           27  +можно указать альтернативную позицию установки курсора. 
           28  +
           29  +Например, шаблон "Если" может быть настроен таким образом, чтобы когда шаблон применяется к выделению, выделенный текст обрамляется 
           30  +конструкцией "Если", а курсор устанавливается в позицию, обозначенную |:
           31  +
           32  +<verbatim>
           33  +Если | Тогда
           34  +    // Здесь будет выделенный текст
           35  +КонецЕсли;
           36  +</verbatim>
           37  +
           38  +Для указания в шаблоне места альтернативной установки курсора используется штатная управляющая конструкция 
           39  +"Произвольный запрос" (&lt;?&quot;&quot;&gt;), подсказка которого начинается с символа "|" (например, &lt;?&quot;|Условие&quot;&gt;). 
           40  +
           41  +Для приведенного примера шаблон будет выглядеть следующим образом:
           42  +
           43  +<verbatim>
           44  +Если <?"|Условие"> Тогда
           45  +    <?>	
           46  +КонецЕсли;
           47  +</verbatim>
           48  +
           49  +Если такой шаблон вставляется "традиционно" - без выделения, то место вставки курсора будет определяться управляющей конструкцией &lt;?&gt;, 
           50  +иначе будет использована альтернативная позиция.
           51  +
           52  +<h3>Возможность задавать шаблонам индивидуальные горячие клавиши</h3>
           53  +
           54  +Шаблоны, которым вы хотите назначить индивидуальный хоткей, должны первой строчкой содержать следующую управляющую конструкцию:
           55  +<verbatim><%Макрос "<Имя макроса шаблона>"></verbatim>
           56  +
           57  +где &lt;Имя макроса шаблона&gt; - имя, под которым макрос для вставки этого шаблона появится в списке макросов скрипта "Шаблоны кода".
           58  +
           59  +Назначение хоткея такому макросу осуществляется в окне настройки горячих клавиш Снегопата.
           60  +
           61  +Перед вставкой шаблона при помощи "Шаблоны кода" строка с управляющей конструкцией будет удалена.
           62  +
           63  +Индивидуальные макросы можно использовать для реализации шаблонов - "авторских комментариев". Пример такого шаблона:
           64  +<verbatim>
           65  +<%Макрос "Авторский комментарий: Добавление">;
           66  +//{Добавлено - Начало. <?"", ИмяПользователяХранилищаКонфигурации> - <?"", ДатаВремя, "ДФ=гггг-ММ-дд">
           67  +<?>
           68  +//}Добавлено - Конец.
           69  +</verbatim>
           70  +
           71  +При наличии такого шаблона в макросы "Шаблоны кода" будет добавлен макрос с именем "Вставить шаблон Авторский комментарий: Добавление", которому можно будет назначить свою горячую клавишу.
           72  +
           73  +<h3>Дополнительные управляющие конструкции для использования в шаблонах</h3>
           74  +
           75  +Скрипт "Шаблоны кода" добавляет поддержку дополнительных управляющих конструкций для вставки значений свойств основной конфигурации, 
           76  +а также для вставки имени пользователя операционной системы, в сеансе которого запущен конфигуратор.
           77  +
           78  +Назначение каждой конструкции понятно из ее представления:
           79  +
           80  +<verbatim>
           81  +<%Конфигурация.Имя>
           82  +<%Конфигурация.Синоним>
           83  +<%Конфигурация.Комментарий>
           84  +<%Конфигурация.Поставщик>
           85  +<%Конфигурация.Версия>
           86  +<%Конфигурация.АвторскиеПрава>
           87  +<%Конфигурация.КраткаяИнформация>
           88  +<%Конфигурация.ПодробнаяИнформация>
           89  +<%Конфигурация.АдресИнформацииОКонфигурации>
           90  +<%Конфигурация.АдресИнформацииОПоставщике>
           91  +<%ИмяПользователяОС>
           92  +</verbatim>
           93  +
           94  +Обратите внимание, что в отличии от штатных управляющих конструкций дополнительные конструкции используют немного отличающийся синтаксис: 
           95  +<ul>
           96  +<li>вместо знака вопроса(?) используют знак процента (%)</li>
           97  +<li>указание подсказки для пользователя писать не надо, т.к. она не нужна, потому что никаких запросов у пользователя не делается</li>
           98  +</ul>
           99  +
          100  +Для вставки этих управляющих конструкций в шаблон при его редактировании штатным редактором шаблонов "1С:Предприятия 8" используйте макрос 
          101  +скрипта "ВставитьРасширеннуюУправляющуюКонструкцию".
          102  +
          103  +<h3>Скрипт использует штатный формат файлов шаблонов 1С (*.st)</h3>
          104  +
          105  +Скрипт полностью совместим по формату хранения шаблонов со штатным механизмом и не требует конвертации уже имеющихся шаблонов. 
          106  +Расширение управляющих конструкций не "ломает" штатные шаблоны (все расширение укладывается в рамки существующего синтаксиса), 
          107  +поэтому "расширенные" и "обычные" шаблоны можно использовать одновременно.
          108  +
          109  +Для редактирования шаблонов можно использовать штатный редактор шаблонов. 
          110  +
          111  +Начиная с версии 1.1.3.1 "Снегопата" расширенные конструкции работают в том числе и при вставке шаблонов штатными средствами 1С, например
          112  +при перетаскивании шаблона в код из окна шаблонов мышкой или при использовании вставки шаблона из списка автодополнения и т.п.
          113  +
          114  +<h2>Ссылки:</h2>
          115  +  *  [/finfo?name=snippets.js|История версий]
          116  +  *  [http://snegopat.ru/forum/|Обсуждение на форуме]