Алексей Федорчук
Всякому профессиональному сочинителю (то есть тому, кто сочинительством зарабатывает на хлеб насущный) приходится писать не только отдельные статьи или заметки, но и их циклы или серии (а то и, страшно сказать, книги). И при этом часто работа над такими циклами/сериями разной тематики проходит в параллельном режиме, так что требуется быстрое переключение из окружения одного цикла (а это не только сами тексты, но и иллюстрирующие их картинки, а также всякого рода служебные материалы) в среду другого.
Тут-то на помощь сочинителю приходят встроенные в текстовый редактор средства управления проектами — если, конечно, они в нём есть. Благо, в Geany такие средства имеются, и даже не в единственном экземпляре: одно штатное и два внештатных, обеспечивающихся отдельными плагинами.
Как нетрудно догадаться, работа с проектами осуществляется через одноимённый пункт главного меню. Столь же очевидно, что начинается эта работа с создания проекта через пункт Новый:
Однако прежде не плохо выполнить некоторые глобальные настройки, общие для всех проектов. Которые выполняются через пункты Правка -> Настройки -> Общее. Сначала по вкладке Запуск указывается общий путь к файлам проекта. Поскольку проект наверняка будет не один (иначе не стоило бы и огород городить), есть смысл задать его в максимально обобщённом виде, а далее дописывать конкретные подкаталоги:
Здесь же полезно задать стартовый каталог (для меня удобно, чтобы он совпадал с путём к подкаталогам проектов, но это уж каждый для себя решит сам) и включить загрузку файлов из последней сессии. После чего перейти на вкладку Прочее и там в секции Проекты отметить пункт Использовать файлы сессий для проектов. В сочетании с загрузкой файлов из последней сессии на предыдущей вкладке это приведёт к тому, что при старте Geany будет открываться последний проект в том самом состоянии, в каком работа с ним была прервана:
А вот пункт Хранить файл проекта внутри основного каталога проекта включается по желанию. По умолчанию Geany хранит все файлы описания проектов (вида project_name.geany
)в отдельном каталоге, который так и называется — path2/projetcs
(или, в русской локализации, path2/проекты
). Если же включить означенный пункт, то файл описания проекта будет размещаться непосредственно в его каталоге. Мне это представляется удобным, особенно при сохранении резервных копий, однако применителю следует определить это для себя.
Теперь можно взяться за создание проекта, для чего в меню Проект выбирается пункт Новый. Если при этом был окрыт какой-либо ранее существовавший проект — последует предложение его закрыть, с чем следует согласиться: два одновременно открытых проекта Geany не поддерживает. После чего возникает вот такая панель — разумеется, пока без имени проекта:
Если все настройки были сделаны, как описано выше — то достаточно задать это самое имя проекта (совпадающее с именем каталога с его файлами), и нажать кнопку Создать. И проект, вместе с файлом его описания (в данном случае /home/data/current/alv.me/distros/distros.geany
), будет создан.
Для открытия существующего проекта предназначен пункт меню Проект -> Открыть, после чего в дереве файловой иерархии потребуется отыскать каталог проекта, а в нём — файло описания:
Это может быть достаточно скучно. И потому между существующими проектами проще переключаться через Проект -> Последние проекты:
Впрочем, и в том, и в другом случае, как я уже говорил, проект будет открыт точно в том состоянии, в котором с ним была прекращена работа — то есть со всеми файлами, открытыми в последней сессии.
Основные данные о проекте можно посмотреть через Проект -> Свойства. Здесь, в частности, можно поменять имя проекта, его описание и рабочий каталог:
А вот изменить путь к файлу описания проекта здесь не получится. Но это можно сделать через конфигурационный файла Geany — ~/.config/geany/geany.conf
. Это простой текстовый файл, в котором отражаются все настройки редактора, выполненные интерактивно. Но который можно и отредактировать непосредственно. В частности, именно здесь, в секции [project]
, можно изменить путь к файлу описания проекта — например, если его рабочий каталог был перемещён в другое место файловой иерархии.
Кроме штатной системы управления проектами, для этой цели в Geany существует два плагина — geany-plugin-gproject
и geany-plugin-prj
. Первый является дополнением штатного средства, предлагая управление проектами Geany на основе шаблонов. Включение его через Инструменты -> Менеджер модулей приводит к появлению в боковой панели вкладки Проект с несколькими пиктограммами. Честно говоря, я так и не придумал, как прикрутить шаблоны к своим проектам — и главное, зачем мне это нужно. И потому отключил этот плагин.
Плагин же geany-plugin-prj
представляет собой полную систему управления проектами, альтернативную штатной. При его включении в боковой панели также появляется вкладка Проект — абсолютно пустая, но с контекстным меню по правой кнопке мыши:
Вследствие своей альтернативности этот плагин игнорирует штатные файлы описания проектов — для него их надо создавать с нуля, как можно видеть на приведённом скриншоте. Выбор пункта Новый проект вызывает такую вот панель:
В ней указывается имя проекта, определяются расположение файла его описания (это dot-файл geanyprj и рабочий каталог. После нажатия кнопки Создать все файлы рабочего каталога включаются в проект и выводятся в соответствующей вкладке боковой панели, и генерируется файл описания:
После создания проекта через контекстное меню на его вкладке в боковой панели становятся доступными, помимо прочих, пункты Найти в проекте и Настройки. Собственно, поиск в проекте — это главная особенность альтернативного управления проектами:
Результаты поиска выводятся в окне сообщений, как это видно на скриншоте, предшествующем последнему.
Ну а через пункт Настройки, как и в штатном «управителе проектами», можно поменять его имя и базовый каталог (но не положение и имя файла описания проекта):
Все функции контекстного меню дублируются также в меню главном — Инструменты -> Проект.
Повозившись с альтернативным «управителем проектов», я пришёл к выводу, что использование его имеет смысл действительно как альтернатива — совместное применение его со штатным средством этого назначения приводит к путанице. А поскольку главным для меня в этом деле — простой способ быстрого переключения между проектами (что в штатном средстве реализовано лучше), я в конце концов отключил «альтернативщика». Но возможно, что кому-то он покажется более удобным.