Script sources: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
m (Ned Scott moved page Script Sources to Script sources: caps)
m (Bot: Automated text replacement (-class="wikitable" +class="prettytable" & -Available Tags +Available tags & -<source +<syntaxhighlight & -</source> +</syntaxhighlight>))
Line 3: Line 3:
For XBMC to know what to do with your addon, we require your script, and an addon.xml file. See [[Add-ons for XBMC (Developement)|add-ons for XBMC]] for more information on addon.xml, including how you add descriptions to your addon for users. A plugin source extends XBMC via the xbmc.python.script extension point. The layout of the XML describing this extension point is as follows:
For XBMC to know what to do with your addon, we require your script, and an addon.xml file. See [[Add-ons for XBMC (Developement)|add-ons for XBMC]] for more information on addon.xml, including how you add descriptions to your addon for users. A plugin source extends XBMC via the xbmc.python.script extension point. The layout of the XML describing this extension point is as follows:


<source lang="xml">
<syntaxhighlight lang="xml">
   <extension point="xbmc.python.script"
   <extension point="xbmc.python.script"
             library="default.py" />
             library="default.py" />
</source>
</syntaxhighlight>


list of extension points and their explanation:
list of extension points and their explanation:
Line 21: Line 21:


Example of "xbmc.python.script":
Example of "xbmc.python.script":
<source lang="xml">
<syntaxhighlight lang="xml">
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="script.rss.editor"
<addon id="script.rss.editor"
Line 39: Line 39:
   </extension>
   </extension>
</addon>
</addon>
</source>
</syntaxhighlight>


== Interacting with XBMC ==
== Interacting with XBMC ==

Revision as of 06:10, 14 March 2014

Home icon grey.png   ▶ Development ▶ Add-on development ▶ Python development ▶ Script sources

What XBMC requires for your add-on

For XBMC to know what to do with your addon, we require your script, and an addon.xml file. See add-ons for XBMC for more information on addon.xml, including how you add descriptions to your addon for users. A plugin source extends XBMC via the xbmc.python.script extension point. The layout of the XML describing this extension point is as follows:

  <extension point="xbmc.python.script"
             library="default.py" />

list of extension points and their explanation:

  "xbmc.python.script"          This is the standard Script extension point

below listed extensions will not appear in the Scripts/Programs window and can only be run via skin shortcuts

  "xbmc.python.weather"        Used for weather scripts
  "xbmc.python.subtitles"      Used for subtitle scripts
  "xbmc.python.lyrics"         Used for lyrics scripts
  "xbmc.python.library"        Used for skin dependent scripts (e.g. recently added script)


Example of "xbmc.python.script":

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="script.rss.editor"
       name="RSS Editor"
       version="1.5.6"
       provider-name="rwparris2">
  <requires>
    <import addon="xbmc.python" version="1.0"/>
  </requires>
  <extension point="xbmc.python.script"
             library="default.py" />
  <extension point="xbmc.addon.metadata">
    <platform>all</platform>
    <minversion>28764</minversion>
    <summary lang="en">A Script for editing XBMC's built in RSS Ticker</summary>
    <description lang="en">A Script for editing XBMC's built in RSS Ticker</description>
  </extension>
</addon>

Interacting with XBMC

Given that your script can return information to the user, you may wish to allow some (or all) of the information you provide to be translatable. You do this by providing a strings.xml file (in resources/language/<name_of_language>/strings.xml) which associates integer id's with each label. XBMC then handles loading these string files and ensuring that the users' locale information is taken into account. To display strings you use the getString function in the xbmcaddon module.


See also

Development: