уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.

Продолжаем разбираться с IDE Delphi 2010 и сегодня рассмотрим ещё один момент работы — шаблоны кода (templates). Впервые возможность использования собственных шаблонов кода при работе в Delphi была реализована (если я не ошибаюсь) ещё в Borland Delphi 2006. Но, тем не менее, далеко не все и не всегда пользуются этой замечательной возможностью.
Для чего нужны Templates? Основная их задача — автоматизировать процесс написания часто используемых частей кода. Думаю, что большинство тех, кто перешел на новую версию Delphi, скажем, с Delphi 6-7 были приятно удивлены, когда при после написания begin в редакторе и нажатии Enter в редактор автоматически добавился end. Аналогично могут завершаться try..except..end, if..then..else и т.д. Главное настроить шаблоны так как Вам это необходимо.

Все шаблоны кода Delphi 2010 представляют собой xml-файлы, которые хранятся в директории (при установке по умолчанию):
c:\Program Files\Embarcadero\RAD Studio\7.0\ObjRepos\en\Code_Templates\Delphi\
Всего в начале Вам доступно 33 шаблона. Чтобы просмотреть все доступные шаблоны кода можно выбрать в меню Delphi «View — Templates»

В редакторе шаблонов можно изменить шаблон, добавить новый, удалить и т.д. Конечно 33 различных шаблона вполне достаточно для работы, но может оказаться так, что и их окажется недостаточно. Например, Вы пишете программу, которая использует какие-либо данные из Интернет. Часто в таких программах присутствуют функции открытия ссылки в браузере по умолчанию. Код выглядит следующим образом:

ShellExecute(Application.Handle,
     PChar('open'),
     PChar('www.webdelphi.ru'),
     PChar(0),
     nil,
     SW_NORMAL) ;

По сути единственное, что будет меняться в параметрах — это URL страницы, а остальное — повторяется каждый раз. Если в программе часто используется эта функция, то логично будет создать для неё отдельный шаблон.
Для того чтобы создать новый шаблон выбираем в меню «File — New — Other — Other Files — Code Template«:

Откроется новое окно редактора, содержащее «скелет» нового шаблона:

Рассмотрим процесс создания шаблона по пунктам:
1. Заполняем атрибут name — название шаблона. Пусть название будет url.
2. Определяем значение атрибута invoke. invoke определяет то как шаблон будет вставляться в редактор кода и может принимать значения auto, т.е. шаблон вставиться автоматически после нажатия пробела, либо manual — вручную. Во втором случае шаблон будет вставляться после того как в редакторе будет написано название шаблона и нажат кнопка TAB. Также шаблон можно вставлять из списка, открывающегося по нажатию горячих клавиш Ctrl+J. Наш шаблон будет вставляться автоматически, поэтому записываем в invoke значение auto.
3. Заполняем значения тегов Author и Description. Значения тегов — произвольные строки. Например, в description можно записать «Open new URL in browser» и т.д.
4. Теперь необходимо определить части кода, которые будут вставляться в редактор и впоследствии изменяться программистом, т.е. так называемые jump point’ы. В нашем случае для ShellExecute — это строка www.webdelphi.ru. Схема описания jump point следующая:

<point name=»url»>
<text>
www.webdelphi.ru
</text>
<hint>
URL of the page
</hint>
</point>

name — имя точки, используемое парсером при вставке шаблона
hint — подсказка.
все теги point вставляются после description до раздела code. Если в шаблоне необходимо определить 2 точки, то, соответственно в коде шаблона должны быть определены 2 тега point и т.д.
5. Записываем код шаблона. В начале определяем необходимые значения атрибутов узла code.
language — язык в котом используется шаблон. В нашем случае — это Delphi.
delimiter — разделитель. Разделители используются для того, чтобы парсер мог определить в каком месте вставлять jump point. Обычно, в качестве разделителя ипользуется символ «|».
Код Delphi, который будет вставляться в редактор записывается в секции CDATA узла code. После того как определены атрибуты у узла code и записан код шаблона у Вас должно получиться примерно следующее:

<code language=»Delphi» delimiter=»|»>
<![CDATA[ShellExecute(Application.Handle,
PChar(‘open’),
PChar(‘|url|’),
PChar(0),
nil,
SW_NORMAL) ;
]]>
</code>

Как видите, название jump point обрамлено двумя delimiter’ами.
6. Сохраняем шаблон с названием url.
Теперь можете открыть редактор кода какого-нибудь своего приложения, набрать url и нажать пробел. Вместо url должен вставиться наш только что созданный шаблон.
В приведенном выше примере мы использовали простой шаблон, автоматизирующий вставку метода ShellExecute. Также можно создавать более сложные шаблоны, которые могут использоваться, например, для обрамления (surround) частей кода.

Книжная полка

Описание Подробно рассматривается библиотека FM, позволяющая создавать полнофункциональное программное обеспечение для операционных систем Windows и OS X, а также для смартфонов и планшетных компьютеров, работающих под управлением Android и iOS
купить книгу delphi на ЛитРес
Описание: Рассмотрены практические вопросы по разработке клиент-серверных приложений в среде Delphi 7 и Delphi 2005 с использованием СУБД MS SQL Server 2000, InterBase и Firebird. Приведена информация о теории построения реляционных баз данных и языке SQL. Освещены вопросы эксплуатации и администрирования СУБД.
купить книгу delphi на ЛитРес
Описание: Рассмотрены малоосвещенные вопросы программирования в Delphi. Описаны методы интеграции VCL и API. Показаны внутренние механизмы VCL и приведены примеры вмешательства в эти механизмы. Рассмотрено использование сокетов в Delphi: различные режимы их работы, особенности для протоколов TCP и UDP и др.
купить книгу delphi на ЛитРес
Описание: Книга рассчитана на подготовленного пользователя ПК, желающего самостоятельно научиться программировать и разрабатывать приложения и базы данных в среде Delphi. Опытные программисты смогут использовать издание как справочник. В тексте подробно описаны более 80 компонентов VCL, функции Object Pascal и Win32 API.
купить книгу delphi на ЛитРес
Автор: Юрий Магда
Описание: Описаны общие подходы к программированию приложений MS Office. Даны программные методы реализации функций MS Excel, MS Word, MS Access и MS Outlook в среде Delphi.
купить книгу delphi на ЛитРес
5 1 голос
Рейтинг статьи
уважаемые посетители блога, если Вам понравилась, то, пожалуйста, помогите автору с лечением. Подробности тут.
Подписаться
Уведомить о
11 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии
Евгений
Евгений
10/01/2011 02:45

Скорее не шаблоны появились (я ими пользовался еще в Delphi 6), а функция автозавершения (autocomplite) кода.

Илья
Илья
28/02/2011 22:00

Спасибо большое за урок

Dozent
Dozent
19/08/2013 16:06

Можете подсказать как в шаблоне скопировать выделеное?
Хочется чтобы выглядело так

{$ifndef no_ado}
|selected| overload; deprecated ‘Use AppData’;
{$endif}
|selected| overload;
//———————————————————————-

Dozent
Dozent
19/08/2013 16:28

вот такой вот шаблон есть. но хочется ешё упростить своою работу

no ado

BVA


Dozent
Dozent
19/08/2013 16:29

no ado

BVA


Dozent
Dozent
19/08/2013 16:30

Как код шаблона вставить?))

Dozent
Dozent
19/08/2013 16:30

?xml version=»1.0″ encoding=»utf-8″ ?>

no ado

BVA


/codetemplate>

Dozent
Dozent
30/11/2013 13:56

добрый день, помогите разобратся с шаблоном вот таким
comment image
выделяю ServiceList юзаю шаблон и такая бяка получается)

akella225
akella225
07/12/2020 17:41

А как потом найти и отредактировать средствами IDE?

akella225
akella225
07/12/2020 17:44

Автор забыл написать, что Delphi нужно перезагружать после добавления шаблона