mirror of
https://git.pwmt.org/pwmt/zathura.git
synced 2024-11-10 20:33:46 +01:00
27 lines
1.2 KiB
ReStructuredText
27 lines
1.2 KiB
ReStructuredText
|
Plugin system
|
||
|
=============
|
||
|
|
||
|
zathura's plugin system is quite simple. At startup zathura searches
|
||
|
through a specified directory for shared objects and tries to load them
|
||
|
as plugins. Each plugin has to register itself by a name, its version, a
|
||
|
special function as well as its supported mimetypes to zathura. After
|
||
|
the registration of the plugin zathura will automatically use it to open
|
||
|
files with the previous defined mimetypes. That's it.
|
||
|
|
||
|
Each plugin has to implement a basic set of functionality so that it can
|
||
|
be used in a meaningful way with zathura. For instance it would not make
|
||
|
any sense if the plugin was not able to render any page at all. On the
|
||
|
contrary the export of images out of the document might not be
|
||
|
considered as that important.
|
||
|
|
||
|
We have predefined a certain set of functionality that a plugin can have
|
||
|
and that can be used by zathura if it has been implemented by the
|
||
|
plugin. When a plugin is loaded, zathura calls a certain function that
|
||
|
the plugin **must implemented** in order to work correctly. This
|
||
|
function gets a data structure which has to be filled with function
|
||
|
pointers by the plugin, which are then used by the main application.
|
||
|
|
||
|
.. toctree::
|
||
|
|
||
|
plugin-development
|