Tags:
dev_essential2Add my vote for this tag development1Add my vote for this tag process1Add my vote for this tag twiki_community2Add my vote for this tag create new tag
, view all tags

Introduction

TWiki has the following types of TWikiExtensions:

  • A PluginPackage allows authors to add certain kinds of new behaviour without requiring changes to the core TWiki code. The main way this is done is by plugins writing handlers that are called from the TWiki core at specified points in the core functionality.
  • A SkinPackage changes the visual appearance of pages, but leaves the topic contents exactly the same. For example the Printable link at the bottom of every page here on TWiki.org uses the PrintSkin to render the topic in a way more suitable for printing.
  • An AddOnPackage implements a script that goes into the bin directory and can be called from a TWiki topic. In contrast, a Tool is designed to go into the tools directory and can only be called from the shell. Most tools are written by core developers.
  • A ContribPackage is reusable code that is available for use by other extensions. Its functionality is made available by using the package name (via use) in your perl code.

Each released TWikiExtension -- that is, each stable release -- is zipped and attached to its homepage in this web, either manually or through SVN. Some extensions will work on any version of TWiki; some will only work with specified ones. The latest "bleeding-edge" version of the TWiki extension may reside in the DEVELOP SVN repository and is only available that way.

Developers:

  • Learn how to be a good developer
  • Learn how to create and publish Plugins.
  • Please note the ModificationPolicy! If it says PleaseFeelFreeToModify then anyone (including YOU) can release the new version - don't just attach patches! Otherwise, please check with the authors.
  • Please review the PluginsApiPolicies that describes a stable API that you can rely on. This is important! Not following these policies may lead to your plugin breaking. It's in the interest of everyone to try to ensure reliable plugins. This will also help you from having to do extra recoding in the future.
  • TWiki is constantly improved, and older versions of the code may not have all the functions that are available in the version that you are using (and some older functions will be deprecated). If at all possible, please consider keeping your plugin compatible with older code versions.
  • If possible, use Subversion to maintain your extensions. See also in DakarDevelopersPleaseNote how to use the BuildContrib for easy plugin install/uninstall.
    • Note: You do not have to use subversion and BuildContrib to write or maintain your plugin: you can publish extensions by attaching the ZIP file to its homepage in this web.
  • Internationalise your plugin through InternationalisationGuidelines - simple changes to make your plugin work with international characters (part of I18N), opening it up to much wider user base across the world.

-- Contributors: AndreaSterbini, CrawfordCurrie, MattWilkie, PeterThoeny, MeredithLesly

Topic revision: r39 - 2010-09-03 - PeterThoeny
 
Twitter Delicious Facebook Digg Google Bookmarks E-mail LinkedIn Reddit StumbleUpon    
  • Download TWiki
TWiki logo Powered by PerlIdeas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2012 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.