| <<O>> Difference Topic TWikiPlugins (30 - 2005-03-27 - TWikiContributor) |
| Line: 1 to 1 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
On this page:
TWiki Plugins | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Plug-in enhanced feature add-ons, with a Plugin API for developers | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Add functionality to TWiki with readily available Plugins; create Plugins based on APIs | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Overview | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | You can add Plugins to extend TWiki's functionality, without altering the core program code. A plug-in approach lets you: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | You can add Plugins to extend TWiki functionality, without altering the core code. A plug-in approach lets you: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Line: 15 to 15 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Everything to do with TWiki Plugins - demos, new releases, downloads, development, general discussion - is available at TWiki.org, in the TWiki:Plugins | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Preinstalled Plugins | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | TWiki Plugins are developed and contributed by interested members of the community. Plugins are provided on an 'as is' basis; they are not a part of TWiki, but are independently developed and maintained. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | TWiki comes with a set of Plugins as part of the standard installation.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Installing Plugins | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Each TWikiPlugin comes with full documentation: step-by-step installation instructions, a detailed description of any special requirements, version details, and a working example for testing. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Each TWiki Plugin comes with its own documentation: step-by-step installation instructions, a detailed description of any special requirements, version details, and a working example for testing. Many Plugins have an install script that automates these steps for you. Special Requirements: Some Plugins need certain Perl modules to be preinstalled on the host system. Plugins may also use other resources, like graphics, other modules, applications, and templates. You should be able to find detailed instructions in the Plugin's documentation. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Most Plugins can be installed in three easy steps, with no programming skills required:
SomePlugin), there's a separate development page.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Each Plugin has a standard release topic, located in the TWiki:Plugins | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
On-Site Pretesting | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | To test new Plugins on your installation before making them public, you may want to use one of these two approaches:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | The recommended approach to testing new Plugins before making them public is to create a second local TWiki installation, and test the Plugin there. You can allow selected users access to the test area. Once you are satisifed that it won't compromise your main installation, you can install it there as well. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | InstalledPlugins shows which Plugins are: 1) installed, 2) loading properly, and 3) what TWiki:Codev.PluginHandlers%FAILEDPLUGINS% variable can be used to debug failures. You may also want to check your webserver error log and the various TWiki log files. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Checking that Plugins are Working on a Live Server | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Some Notes on Plugin Performance | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | InstalledPlugins shows which Plugins are: 1) installed, 2) loading properly and 3) what TWiki:Codev.PluginHandlers | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | The performance of the system depends to some extent on the number of Plugins installed and on the Plugin implementation. Some Plugins impose no measurable performance decrease, some do. For example, a Plugin might use many Perl libraries that need to be initialized with each page view (unless you run mod_perl). You can only really tell the performance impact by installing the Plugin and by measuring the performance with and without the new Plugin. Use the TWiki:Plugins.PluginBenchmarkAddOnab utility. Example on Unix:time wget -qO /dev/null /twiki/bin/view/TWiki/AbcPlugin | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | A Note on Plugin Performance | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | The performance of the system depends on the number of Plugins installed and on the Plugin implementation. Some Plugins impose no measurable performance decrease, some do. For example, outsidePREHandler is an expensive callback function, or a Plugin might use many Perl libraries that need to be initialized with each page view (unless you run mod_perl). It is recommended to measure the performance with and without a new Plugin. Example for Unix:time wget -qO /dev/null http://dayawane.ihep.ac.cn/twiki/bin/view/TWiki/AbcPlugin | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > |
Managing Installed Plugins | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | In case you need to install an "expensive" Plugin and you need its functionality only in one web you can place the Plugin topic into that web. TWiki will initialize the Plugin only if the Plugin topic is found (which won't be the case for other webs.) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Some Plugins require additional settings or offer extra options that you have to select. Also, you may want to make a Plugin available only in certain webs, or temporarily disable it. And may want to list all available Plugins in certain topics. You can handle all of these management tasks with simple procedures: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Managing Plugins | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Enabling Plugins | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | When you finish installing a Plugin, you should be able to read the user instructions and go. In fact, some Plugins require additional settings or offer extra options that you have to select. Also, you may want to make a Plugin available only in certain webs, or temporarily disable it. And may want to list all available Plugins in certain topics. You can handle all of these management tasks with simple procedures. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Plugins can be enabled and disabled with the configure script. An installed Plugin needs to be enabled before it can be used. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Setting Preferences | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Plugin Evaluation Order | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Installed Plugins can be toggled on or off, site-wide or by web, through TWikiPreferences and individual WebPreferences: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | By default, TWiki executes Plugins in alphabetical order on Plugin name. It is possible to change the order, for example to evaluate database variables before the speadsheet CALCs. This can be done with {PluginsOrder} in the Plugins section of configure. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Plugin-Specific Settings | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Plugin execution order in TWiki is determined by searching Plugin topics in a specific sequence: First, full web.topicname name, if specified in INSTALLEDPLUGINS; next, the TWiki web is searched; and finally, the current web.
Plugin-specific settings are done in individual Plugin topics. Two settings are standard for each Plugin: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Plugin-specific settings are done in individual Plugin topics. Two settings are standard for each Plugin: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Listing Active Plugins | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Plugin status variables let you list all active Plugins wherever needed. There are two list formats:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | Plugin status variables let you list all active Plugins wherever needed. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | DEMO: Automatically List Active Plugins Using Variables | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > |
On this TWiki site, the enabled Plugins are: SpreadSheetPlugin, BackupRestorePlugin, ColorPickerPlugin, CommentPlugin, DatePickerPlugin, EditTablePlugin, EmptyPlugin, HeadlinesPlugin, InterwikiPlugin, JQueryPlugin, PreferencesPlugin, RenderListPlugin, SetGetPlugin, SlideShowPlugin, SmiliesPlugin, TablePlugin, TagMePlugin, TinyMCEPlugin, TwistyPlugin, WatchlistPlugin, WysiwygPlugin. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | Using %ACTIVATEDPLUGINS%:On this TWiki site, the active Plugins are: SpreadSheetPlugin, BackupRestorePlugin, ColorPickerPlugin, CommentPlugin, DatePickerPlugin, EditTablePlugin, EmptyPlugin, HeadlinesPlugin, InterwikiPlugin, JQueryPlugin, PreferencesPlugin, RenderListPlugin, SetGetPlugin, SlideShowPlugin, SmiliesPlugin, TablePlugin, TagMePlugin, TinyMCEPlugin, TwistyPlugin, WatchlistPlugin, WysiwygPlugin. Using %:You can use any of these active TWiki Plugins: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > | | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Changed: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| < < | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| > > |
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Plugin | Errors |
|---|---|
| SpreadSheetPlugin | none |
| BackupRestorePlugin | none |
| CalendarPlugin |
TWiki::Plugins::CalendarPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/CalendarPlugin.pm in @INC (you may need to install the TWiki::Plugins::CalendarPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 45) line 1. BEGIN failed--compilation aborted at (eval 45) line 1. ---- |
| ColorPickerPlugin | none |
| CommentPlugin | none |
| DatabasePlugin |
TWiki::Plugins::DatabasePlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/DatabasePlugin.pm in @INC (you may need to install the TWiki::Plugins::DatabasePlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 52) line 1. BEGIN failed--compilation aborted at (eval 52) line 1. ---- |
| DatePickerPlugin | none |
| EditTablePlugin | none |
| EmptyPlugin | none |
| ExcelImportExportPlugin |
TWiki::Plugins::ExcelImportExportPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/ExcelImportExportPlugin.pm in @INC (you may need to install the TWiki::Plugins::ExcelImportExportPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 62) line 1. BEGIN failed--compilation aborted at (eval 62) line 1. ---- |
| ExplicitNumberingPlugin |
TWiki::Plugins::ExplicitNumberingPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/ExplicitNumberingPlugin.pm in @INC (you may need to install the TWiki::Plugins::ExplicitNumberingPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 63) line 1. BEGIN failed--compilation aborted at (eval 63) line 1. ---- |
| ExternalLinkPlugin |
TWiki::Plugins::ExternalLinkPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/ExternalLinkPlugin.pm in @INC (you may need to install the TWiki::Plugins::ExternalLinkPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 64) line 1. BEGIN failed--compilation aborted at (eval 64) line 1. ---- |
| FilterPlugin |
TWiki::Plugins::FilterPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/FilterPlugin.pm in @INC (you may need to install the TWiki::Plugins::FilterPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 65) line 1. BEGIN failed--compilation aborted at (eval 65) line 1. ---- |
| FlexWebListPlugin |
TWiki::Plugins::FlexWebListPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/FlexWebListPlugin.pm in @INC (you may need to install the TWiki::Plugins::FlexWebListPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 66) line 1. BEGIN failed--compilation aborted at (eval 66) line 1. ---- |
| FormPlugin |
TWiki::Plugins::FormPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/FormPlugin.pm in @INC (you may need to install the TWiki::Plugins::FormPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 67) line 1. BEGIN failed--compilation aborted at (eval 67) line 1. ---- |
| GluePlugin |
TWiki::Plugins::GluePlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/GluePlugin.pm in @INC (you may need to install the TWiki::Plugins::GluePlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 68) line 1. BEGIN failed--compilation aborted at (eval 68) line 1. ---- |
| HeadlinesPlugin | none |
| ImageGalleryPlugin |
TWiki::Plugins::ImageGalleryPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/ImageGalleryPlugin.pm in @INC (you may need to install the TWiki::Plugins::ImageGalleryPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 72) line 1. BEGIN failed--compilation aborted at (eval 72) line 1. ---- |
| InterwikiPlugin | none |
| JQueryPlugin | none |
| LatexModePlugin |
TWiki::Plugins::LatexModePlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/LatexModePlugin.pm in @INC (you may need to install the TWiki::Plugins::LatexModePlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 79) line 1. BEGIN failed--compilation aborted at (eval 79) line 1. ---- |
| PreferencesPlugin | none |
| RedDotPlugin |
TWiki::Plugins::RedDotPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/RedDotPlugin.pm in @INC (you may need to install the TWiki::Plugins::RedDotPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 83) line 1. BEGIN failed--compilation aborted at (eval 83) line 1. ---- |
| RenderListPlugin | none |
| SetGetPlugin | none |
| SlideShowPlugin | none |
| SmiliesPlugin | none |
| TablePlugin | none |
| TagMePlugin | none |
| TinyMCEPlugin | none |
| TocPlugin |
TWiki::Plugins::TocPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/TocPlugin.pm in @INC (you may need to install the TWiki::Plugins::TocPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 105) line 1. BEGIN failed--compilation aborted at (eval 105) line 1. ---- |
| TreeBrowserPlugin |
TWiki::Plugins::TreeBrowserPlugin could not be loaded. Errors were: Can't locate TWiki/Plugins/TreeBrowserPlugin.pm in @INC (you may need to install the TWiki::Plugins::TreeBrowserPlugin module) (@INC contains: /home/twiki/lib . /usr/local/lib64/perl5/5.32 /usr/local/share/perl5/5.32 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 /home/twiki/lib/CPAN/lib//arch /home/twiki/lib/CPAN/lib//5.32.1/x86_64-linux-thread-multi /home/twiki/lib/CPAN/lib//5.32.1 /home/twiki/lib/CPAN/lib/) at (eval 106) line 1. BEGIN failed--compilation aborted at (eval 106) line 1. ---- |
| TwistyPlugin | none |
| WatchlistPlugin | none |
| WysiwygPlugin | none |
| Handler | Plugins |
|---|---|
| afterEditHandler | WysiwygPlugin |
| afterRenameHandler | TagMePlugin WatchlistPlugin |
| afterSaveHandler | TagMePlugin WatchlistPlugin |
| beforeCommonTagsHandler | EditTablePlugin PreferencesPlugin TwistyPlugin WysiwygPlugin |
| beforeEditHandler | TinyMCEPlugin WysiwygPlugin |
| beforeMergeHandler | WysiwygPlugin |
| beforeSaveHandler | CommentPlugin WatchlistPlugin WysiwygPlugin |
| commonTagsHandler | SpreadSheetPlugin BackupRestorePlugin CommentPlugin EditTablePlugin JQueryPlugin SlideShowPlugin SmiliesPlugin |
| initPlugin | SpreadSheetPlugin BackupRestorePlugin ColorPickerPlugin CommentPlugin DatePickerPlugin EditTablePlugin EmptyPlugin HeadlinesPlugin InterwikiPlugin JQueryPlugin PreferencesPlugin RenderListPlugin SetGetPlugin SlideShowPlugin SmiliesPlugin TablePlugin TagMePlugin TinyMCEPlugin TwistyPlugin WatchlistPlugin WysiwygPlugin |
| modifyHeaderHandler | WysiwygPlugin |
| postRenderingHandler | PreferencesPlugin WysiwygPlugin |
| preRenderingHandler | InterwikiPlugin SmiliesPlugin TablePlugin |
| startRenderingHandler | RenderListPlugin This handler is deprecated - please check for updated versions of the plugins that use it! |
lib/TWiki/Func.pm) implements ALL official Plugin functions. Plugins should ONLY use functions published in this module.lib/TWiki/Func.pm) describes all the interfaces available to Plugins. Plugins should only use the interfaces described in this module.Func.pm, you run the risk of creating security holes. Also, your Plugin will likely break and require updating when you upgrade to a new version of TWiki.Func.pm, you run the risk of creating security holes. Also, your Plugin will likely break and require updating when you upgrade to a new version of TWiki.lib/TWiki/Plugins/EmptyPlugin.pm module.lib/TWiki/Plugins/EmptyPlugin.pm module.DISABLE_ from the function name.
outsidePREHandler and insidePREHandler are particularly expensive.
commonTagsHandler or startRenderingHandler for rendering tasks: commonTagsHandler: Use it to expand %XYZPLUGIN% and %XYZPLUGIN{...}% variables
startRenderingHandler: Use it for your own rendering rules or to overload TWiki's internal rendering like [[links]]
eval block like:eval block like this:eval { require IPC::Run } return "<font color=\"red\">SamplePlugin: Can't load required modules ($@)</font>" if $@;initPlugin handler).
$TWiki::Plugins::VERSION in the TWiki::Plugins module contains the TWiki Plugin API version, currently 6.01.
%PLUGINVERSION{}% variable to query the Plugin API version or the version of installed Plugins.
%TWiki::cfg hash than adding it as preferences in the Plugin topic MyFirstPlugin, press enter and create the new topic
OUTLINE: Doc Topic Contents
Plugin, ex: MyFirstPlugin.pm, and a documentation page with the same name(MyFirstPlugin.txt).Plugin, ex: MyFirstPlugin.pm, and a documentation page with the same name(MyFirstPlugin.txt).lib/TWiki/Plugins/MyFirstPlugin.pm
data/TWiki/MyFirstPlugin.txt
pub/TWiki/MyFirstPlugin/uparrow.gif [a required graphic]
MyFirstPlugin
MyFirstPlugin.zip
Dev, ex: MyFirstPluginDev. This is the discussion page for future development. (User support for Plugins is handled in TWiki:Support
TWiki::Func::getWorkArea() function, which gives you a persistant directory where you can store data files. By default they will not be web accessible. The directory is guaranteed to exist, and to be writable by the webserver user. For convenience, TWiki::Func::storeFile() and TWiki::Func::readFile() are provided to persistently store and retrieve simple data in this area.
TWiki::Func::saveAttachment() function to store the data.
Recommendation for file name: _FooBarPlugin_img123.gif
TWiki::Func::saveAttachment() function to store the data.
Recommendation for file names in Plugin attachment area: _Main_roundedge-ul.gif
Dev, such as MyFirstPluginDev. The Plugin development topic is a great resource to discuss feature enhancements and to get feedback from the TWiki community.
pubdir/Installweb/FooBarPlugin Installweb refers to the name of the web where the Plugin is installed
%PUBURL%/Installweb/FooBarPlugin
_any_name.ext getPubDir() to get the attachment root directory
getUrlHost() and getPubUrlPath() to build the URL in case you create content for the browser
$installWeb to get the name of the web where the Plugin is installed
pubdir/Webname/TopicName
%PUBURL%/Webname/TopicName
_FooBarPlugin_any_name.ext getPubDir() to get the attachment root directory
getUrlHost() and getPubUrlPath() to build the URL in case you create content for the browser
TWiki::Plugins version in which the handler was first deprecated. For example, if we need to define the endRenderingHandler for compatibility with TWiki::Plugins versions before 1.1, we would add this to the plugin:TWiki::Plugins before 1.1 will still call the handler as required.