summaryrefslogtreecommitdiffstats
path: root/docs/plugins/base_plugin.rst
diff options
context:
space:
mode:
authorGravatar X3n0m0rph59 <X3n0m0rph59@googlemail.com> 2012-04-22 16:54:06 +0200
committerGravatar X3n0m0rph59 <X3n0m0rph59@googlemail.com> 2012-04-22 16:54:06 +0200
commit5a7f415a25d8e036a37851fcd5e9be81caae2804 (patch)
treedf0152bd22a770a3c268dc5ad3c264209d092121 /docs/plugins/base_plugin.rst
parentcaptcha decrypting for all plugin types, new interaction manager (diff)
downloadpyload-5a7f415a25d8e036a37851fcd5e9be81caae2804.tar.xz
Fixed spelling in the documentation
Diffstat (limited to 'docs/plugins/base_plugin.rst')
-rw-r--r--docs/plugins/base_plugin.rst36
1 files changed, 18 insertions, 18 deletions
diff --git a/docs/plugins/base_plugin.rst b/docs/plugins/base_plugin.rst
index 911f5d429..91a6eef44 100644
--- a/docs/plugins/base_plugin.rst
+++ b/docs/plugins/base_plugin.rst
@@ -8,43 +8,43 @@ All different plugin types inherit from :class:`Base <module.plugins.Base.Base>`
and meta data. You should read this section carefully, because it's the base for all plugin development. It
is also a good idea to look at the class diagram [1]_ for all plugin types to get an overview.
At last you should look at several already existing plugin to get a more detailed idea of how
-they have to look like and whats possible with them.
+they have to look like and what is possible with them.
Meta Data
---------
All important data which must be known by pyLoad is set using class attributes pre- and suffixed with ``__``.
-An overview of acceptible values can be found in :class:`Base <module.plugins.Base.Base>` source code.
-Non needed attributes can be left out, except ``__version__``. Nevertheless please fill out most information
-as you can, when you want to submit your plugin to the public repo.
+An overview of acceptable values can be found in :class:`Base <module.plugins.Base.Base>` source code.
+Unneeded attributes can be left out, except ``__version__``. Nevertheless please fill out most information
+as you can, when you want to submit your plugin to the public repository.
Additionally :class:`Crypter <module.plugins.Crypter.Crypter>` and :class:`Crypter <module.plugins.Hoster.Hoster>`
-needs to have a specific regexp [2]_ ``__pattern__``. This will be matched against input urls and if a suited
+needs to have a specific regexp [2]_ ``__pattern__``. This will be matched against input url's and if a suited
plugin is found it is selected to handle the url.
For localization pyLoad supports gettext [3]_, to mark strings for translation surround them with ``_("...")``.
You don't need to subclass :class:`Base <module.plugins.Base.Base>` directly, but the
-intermediate type according to your plugin. As example we choose an Hoster plugin, but the same is true for all
+intermediate type according to your plugin. As an example we choose a hoster plugin, but the same is true for all
plugin types.
-How basic hoster plugin header could look like::
+How a basic hoster plugin header could look like::
from module.plugin.Hoster import Hoster
class MyFileHoster(Hoster):
__version__ = "0.1"
__description__ = _("Short description of the plugin")
- __long_description = _("""A even longer description
- is not needed for hoster plugin,
- but hook plugin should have it so the user knows what they doing.""")
+ __long_description = _("""An even longer description
+ is not needed for hoster plugins,
+ but the hook plugin should have it, so the users know what they are doing.""")
In future examples the meta data will be left out, but remember it's required in every plugin!
Config Entries
--------------
-Every plugin is allowed to add entries to the config. These are defined via ``__config__`` and consists
+Every plugin is allowed to add entries to the configuration. These are defined via ``__config__`` and consist
of a list with tuples in the format of ``(name, type, verbose_name, default_value)`` or
``(name, type, verbose_name, short_description, default_value)``.
@@ -56,7 +56,7 @@ Example from Youtube plugin::
(".mp4", "bool", _("Allow .mp4"), True)]
-At runtime the desired config values can be retrieved with ``self.getConfig(name)`` and setted with
+At runtime the desired config values can be retrieved with ``self.getConfig(name)`` and set with
``self.setConfig(name, value)``.
Tagging Guidelines
@@ -72,9 +72,9 @@ Keyword Meaning
image Anything related to image(hoster)
video Anything related to video(hoster)
captcha A plugin that needs captcha decrypting
-interaction A plugin that makes uses of interaction with user
+interaction A plugin that makes use of interaction with the user
free A hoster without any premium service
-premium_only A hoster only useable with account
+premium_only A hoster only usable with account
ip_check A hoster that checks ip, that can be avoided with reconnect
=============== ===========================================================
@@ -89,7 +89,7 @@ and the :class:`Api <module.Api.Api>` at ``self.core.api``
With ``self.load(...)`` you can load any url and get the result. This method is only available to Hoster and Crypter.
For other plugins use ``getURL(...)`` or ``getRequest()``.
-Use ``self.store(...)`` and ``self.retrieve(...)`` to store data persistantly into the database.
+Use ``self.store(...)`` and ``self.retrieve(...)`` to store data persistently into the database.
Make use of ``logInfo, logError, logWarning, logDebug`` for logging purposes.
@@ -98,15 +98,15 @@ Debugging
One of the most important aspects in software programming is debugging. It is especially important
for plugins which heavily rely on external input, which is true for all hoster and crypter plugins.
-To enable debugging functionality start pyLoad with ``-d`` option or enable it in the config.
+To enable debugging functionality start pyLoad with the ``-d`` option or enable it in the config.
You should use ``self.logDebug(msg)`` when ever it is reasonable. It is a good pratice to log server output
-or the calculation of results and then check in the log if it really it what you are expecting.
+or the calculation of results and then check in the log if it really is what you are expecting.
For further debugging you can install ipython [4]_, and set breakpoints with ``self.core.breakpoint()``.
It will open the python debugger [5]_ and pause the plugin thread.
To open a ipython shell in the running programm use ``self.shell()``.
-These methods are usefull to gain access to the code flow at runtime and check or modify variables.
+These methods are useful to gain access to the code flow at runtime and check or modify variables.
.. rubric:: Footnotes