NAME

Padre::PluginManager - Padre plugin manager

DESCRIPTION

The PluginManager class contains logic for locating and loading Padre plugins, as well as providing part of the interface to plugin writers.

METHODS

new

The constructor returns a new Padre::PluginManager object, but you should normally access it via the main Padre object:

my $manager = Padre->ide->plugin_manager;

First argument should be a Padre object.

plugin_dir

Returns the user plugin directory (below the Padre configuration directory). This directory was added to the @INC module search path and may contain packaged plugins as PAR files.

plugins

Returns a hash (reference) of plugin names associated with their implementing module names.

This hash is only populated after load_plugins() was called.

plugin_config

Given a plugin name or namespace, returns a hash reference which corresponds to the configuration section in the Padre YAML configuration of that plugin. Any modifications of that hash reference will, on normal exit, be written to the configuration file.

If the plugin name is omitted and this method is called from a plugin namespace, the plugin name is determine automatically.

load_plugins

Scans for new plugins in the user plugin directory, in @INC, and in .par files in the user plugin directory.

Loads any given module only once, i.e. does not refresh if the plugin has changed while Padre was running.

SEE ALSO

Padre, Padre::Config

PAR for more on the plugin system.

COPYRIGHT

Copyright 2008 Gabor Szabo.

LICENSE

This program is free software; you can redistribute it and/or modify it under the same terms as Perl 5 itself.