githubEdit

Установка плагинов

Краткое описание

Функция плагинов позволяет запускать пользовательские Python-скрипты непосредственно из меню Synfig Studio. Каждый скрипт принимает файл .sif в качестве первого аргумента и должен каким-либо образом изменять его содержимое. После завершения выполнения скрипта файл автоматически повторно открывается в Synfig Studio.

Все плагины расположены в подменю «Плагины» холста (canvas).

Обоснование

Пользователи часто создают скрипты для автоматизации и добавления полезных функций в файлы Synfig (.sif). Большинство таких скриптов написаны на Python.

Однако запуск пользовательских скриптов через терминал может быть затруднительным для обычных пользователей. Функция плагинов позволяет устанавливать скрипты так же просто, как копирование файлов, и запускать их напрямую из меню Synfig Studio — так же, как стандартные команды программы.

Кроме того, запуск скриптов из меню выполняется быстрее и удобнее, чем через терминал, что значительно улучшает рабочий процесс, особенно для опытных пользователей.

Наличие этой функции позволяет легко расширять возможности Synfig Studio, добавляя новые инструменты с помощью Python-скриптов.

Как установить плагины

Плагин — это каталог, содержащий Python-скрипт (*.py), файл plugin.xml и, при необходимости, другие файлы, требуемые скриптом.

Для установки плагина необходимо скопировать его каталог в одно из следующих расположений:

  • Windows Vista / 7 / 8: C:\Users\ИМЯ_ПОЛЬЗОВАТЕЛЯ\Synfig\plugins

  • Windows XP: C:\Documents and Settings\ИМЯ_ПОЛЬЗОВАТЕЛЯ\Synfig\plugins

  • Linux: ~/.config/synfig/plugins

  • macOS: /Users/ИМЯ_ПОЛЬЗОВАТЕЛЯ/Library/Synfig/plugins

Общесистемное расположение плагинов: USER_DIRECTORY/SYNFIG_CONFIGURATION_DIR/plugins

Где найти плагины

Структура плагина

Плагин хранит все свои файлы внутри собственного каталога, как описано выше.

Synfig анализирует файл plugin.xml, расположенный в каталоге каждого плагина. Этот файл определяет метаданные плагина и способы вызова скрипта.

В этом разделе описываются доступные XML-элементы и то, что они делают.

<плагин>

Корневой элемент. Может содержать следующее:

  • <имя> Название плагина должно иметь версию не ниже версии по умолчанию

  • <exec> Скрипт для запуска, когда пользователь нажимает на меню плагина. Может быть опущен, если есть импортеры или экспортеры.

  • <экспортер> Определяет экспортер, у плагина может быть несколько из них

  • <импортер> Определяет импортера, у плагина может быть несколько из них

<название>

Название плагина может быть указано несколько раз для предоставления переводов

Пример:

circle-info

<exec>

Определяет скрипт для запуска, текстовое содержимое должно представлять собой путь (относительно каталога плагинов) к запускаемому скрипту.

Если он присутствует внутри <plugin>, плагин будет показан в меню плагинов, и скрипт будет вызван при нажатии на соответствующий пункт меню.

У него есть несколько атрибутов, все необязательные.

Тип

Python выбирает интерпретатор (в настоящее время поддерживается только Python)

стандартный вывод

игнорировать То, что делать со стандартным выводом скрипта:

  • игнорировать вывод отбрасывается

  • журнал результаты отображаются в журнале Synfig

  • сообщение пользователю отображается сообщение об ошибке

stderr

сообщение такое же, как указано выше, но со стандартной ошибкой

Пример:

circle-info

Изменение поведения потока:

<экспортер>

Определяет новый экспортер, используемый для преобразования файлов synfig в другие форматы.

Плагин может определять несколько экспортеров.

Экспортеры будут показаны в диалоговом окне экспорта.

Экспортер содержит следующие подэлементы:

  • <exec> должен иметь точно один из этих

  • <расширение> должно иметь хотя бы один из них

  • <описание> должна иметь версию по умолчанию

Пример:

<импортер>

Работает так же, как <экспортер>, но предоставляет скрипт для преобразования из других форматов в synfig.

Плагин может определять несколько импортеров.

Импортеры будут показаны в диалоговом окне «Открыть файл».

Пример:

<расширение>

Для <импортера> и <экспортера>, какие расширения поддерживаются.

В импортере или экспортере может присутствовать несколько элементов <extension> (требуется хотя бы один)

Пример:

<описание>

Для <importer> и <exporter> текст должен отображаться в диалоговом окне файла.

Аналогично <name> это можно перевести с помощью xml:lang

Пример:

Вызов скрипта

Меню плагинов

Для скриптов, запускаемых при нажатии пользователем на название плагина в меню Плагинов, Synfig сохранит копию открытого canvas и передаст путь к этому файлу в качестве аргумента скрипту.

Затем скрипт может изменить этот файл, и Synfig перезагрузит canvas, чтобы отразить любые изменения.

Экспортер

Для экспортёра Synfig передаёт скрипту два аргумента:

  1. Путь к файлу Synfig, содержащему открытый холст (canvas).

  2. Имя файла для экспорта.

Импортер

Для импортера Synfig передаст файл, выбранный в диалоговом окне «Открыть», в качестве первого аргумента и путь к временному файлу Synfig в качестве второго аргумента.

Как только скрипт будет завершен, Synfig загрузит этот второй файл, поэтому скрипт плагина должен заполнить его соответствующим образом.

Last updated