Сниппет — это небольшой фрагмент исходного кода для повторного использования. Главная задача сниппета – упростить работу программиста. Сниппеты можно представить в виде «фрагментов» кода, каждый под своим названием.
Создание сниппета
Сниппеты создаются и хранятся при помощи плагина CodeSnippets, встроенного в среду CodeBlocks. Если при работе с проектом вы не видите маленькое окно CodeSnippets, то необходимо активировать плагин, перейдя во вкладку Вид и поставив галочку в пункте Фрагменты программы.
10 настроек CodeBlocks, которые надо сделать сразу после установки
Удобнее всего располагать окно со сниппетами под окном Диспетчера (Management) на панели слева от кода программы, но можно и перетащить сниппеты в любое удобное место по вашему усмотрению.
Сниппеты хранятся либо в корневом разделе Codesnippets, либо в его подразделах.
Создать сниппет можно двумя способами:
– нажать правой клавишей мыши на соответствующий раздел в окне CodeSnippets, выбрать Добавить фрагмент программы и в появившемся окне ввести название сниппета и непосредственно фрагмент программы, который вы хотите сохранить для дальнейшего использования. Можно скопировать текст фрагмента из основного кода программы.
– выделить необходимый фрагмент в основном редакторе кода и мышкой перетащить его в соответствующую папку в окне CodeSnippets. Внимание: при этом способе фрагмент кода исчезает из самого кода программы, окончательно присоединяясь к сниппетам. Чтобы этого избежать, нужно при перетаскивании фрагмента держать нажатой клавишу Ctrl.
Чтобы создать подраздел (папку), необходимо нажать правой клавишей на уже существующий раздел, выбрать Добавить подкатегорию и ввести название.
Использование сниппета
Воспользоваться нужным сниппетом также очень просто — можно либо перетащить сниппет в редактор кода, либо нажать на сниппет правой клавишей мыши и выбрать Append to active window. При этом способе сниппет встанет на место курсора в редакторе кода.
Чтобы удалить ненужный сниппет, нужно нажать правой клавишей мыши и выбрать удалить. При этом он не удаляется безвозвратно — плагин CodeSnippets перемещает удаляемые фрагменты в корзину (подраздел .trash) — если у вас ее нет, то она автоматически появится, когда вы удалите хотя бы один сниппет.
Если у вас накопилось большое количество сниппетов и стало трудно найти нужный, то можно воспользоваться поиском по сниппетам — наверху в окне Codesnippets имеется строка поиска. По умолчанию она предназначена для поиска по сниппетам и разделам, можно разделить поиск, нажав на кнопку “>”.
Сниппеты в виде ссылок на файлы
Выше мы рассмотрели сниппет как фрагмент программы с названием. Но есть еще одна конфигурация сниппета — ссылка на файл. Чтобы понять, что это значит, проделайте следующие операции:
1) нажмите на любой ранее сохраненный сниппет правой клавишей мыши и выберите Преобразовать в ссылку на файл;
2) выберите месторасположение сохраняемого файла, ссылкой на который отныне будет являться сниппет.
Теперь если вы перетащите измененный сниппет в текст программы, то вместо фрагмента кода у вас появится ссылка на ранее сохраненный файл. Кроме того, у сниппетов-ссылок на файлы отличаются иконки— F вместо T.
Расположение сниппетов
Плагин CodeSnippets хранит все сниппеты в одном файле формата XML. Этот файл расположен по соседству с основной папкой CodeBlocks. Если открыть файл со сниппетами через блокнот, то увидим следующую картину:
<?xml version=»1.0″ encoding=»UTF-8″ standalone=»yes» ?>
<!—Trust me. I know what I’m doing.—>
<snippets>
<item name=».trash» type=»category» ID=»1″>
<item name=»Fill» type=»snippet» ID=»2″>
<snippet> cairo_fill(cr);</snippet>
</item>
</item>
<item name=»Libs» type=»category» ID=»3″>
<item name=»Cairo» type=»snippet» ID=»4″>
<snippet>#include <cairo.h></snippet>
</item>
</item>
<item name=»Line» type=»snippet» ID=»5″>
<snippet>cairo_line_to(cr, 400, 50);</snippet>
</item>
</snippets>
В файле хранится вся иерархия разделов и сниппетов в каждом разделе, включая корзину. Этот файл позволяет делиться сниппетами с другими программистами, либо вносить правки в сниппеты без участия CodeBlocks.
Итак, рассмотрев назначение сниппетов, их конфигурации и свойства, можно прийти к выводу, что при соответствующем применении они могут существенно облегчить работу разработчика программы.