From ff9e9009c63b300eb7e19033cccceaa6ca7ee0a1 Mon Sep 17 00:00:00 2001 From: supahgreg Date: Sun, 5 Oct 2025 19:36:03 +0000 Subject: First pass at fixing links and some formatting. --- Making-Plugins.md | 70 +++++++++++++++++++++++++++---------------------------- 1 file changed, 35 insertions(+), 35 deletions(-) (limited to 'Making-Plugins.md') diff --git a/Making-Plugins.md b/Making-Plugins.md index e230191..ad42e71 100644 --- a/Making-Plugins.md +++ b/Making-Plugins.md @@ -1,35 +1,35 @@ -# Making Plugins - -Plugins may render new preference panes or embed themselves into several -existing one, store data using simple key -\> value data or directly in -the database, modify how articles are rendered, alter feed data, and -much more. - -You can use sample plugins bundled with tt-rss and [other -plugins](../Plugins.md) as a starting point. Ask on the forums if you need help -with anything specific. - -Some useful information may be found here: - -- https://github.com/supahgreg/tt-rss/blob/main/classes/PluginHost.php -- https://github.com/supahgreg/tt-rss/blob/main/classes/Plugin.php - -Frontend (JS) uses different hooks, which are defined in [PluginHost.js](https://github.com/supahgreg/tt-rss/blob/main/js/PluginHost.js) - -## Localization support - -See ``time_to_read`` plugin for a complete example [here](https://github.com/supahgreg/tt-rss-plugin-time-to-read) - -### Implementation - -- Plugin translations are placed in a separate Gettext domain (name equals lowercase plugin class). -- Translation (.po) file in ``(plugin dir)/locale/(LANG)/LC_MESSAGES/`` name should correspond to Gettext domain name. - -### Using gettext - -- On the PHP side, either use helper methods defined in ``classes/plugin.php`` - (base class for all plugins) or call ``_dgettext`` group of functions - directly. -- On the Javascript side, all translations are merged so you can use the usual - ``__()`` shortcut function. - +# Making Plugins + +Plugins may render new preference panes or embed themselves into several +existing one, store data using simple key -\> value data or directly in +the database, modify how articles are rendered, alter feed data, and +much more. + +You can use sample plugins bundled with tt-rss and [other +plugins](Plugins) as a starting point. Ask on the forums if you need help +with anything specific. + +Some useful information may be found here: + +- https://github.com/supahgreg/tt-rss/blob/main/classes/PluginHost.php +- https://github.com/supahgreg/tt-rss/blob/main/classes/Plugin.php + +Frontend (JS) uses different hooks, which are defined in [PluginHost.js](https://github.com/supahgreg/tt-rss/blob/main/js/PluginHost.js) + +## Localization support + +See ``time_to_read`` plugin for a complete example [here](https://github.com/supahgreg/tt-rss-plugin-time-to-read) + +### Implementation + +- Plugin translations are placed in a separate Gettext domain (name equals lowercase plugin class). +- Translation (.po) file in ``(plugin dir)/locale/(LANG)/LC_MESSAGES/`` name should correspond to Gettext domain name. + +### Using gettext + +- On the PHP side, either use helper methods defined in ``classes/plugin.php`` + (base class for all plugins) or call ``_dgettext`` group of functions + directly. +- On the Javascript side, all translations are merged so you can use the usual + ``__()`` shortcut function. + -- cgit v1.2.3-54-g00ecf