[IPython-dev] Configuration, hooks and plugins
Tue Jun 30 17:54:42 CDT 2009
On 2009-06-30 17:44, Brian Granger wrote:
>> I like Mercurial's approach. Plugins are just Python packages/modules
>> exposing a
>> particular API. Having those packages installed *does not* enable them. To
>> enable them, you list the ones you want in the configuration file. Truth be
>> told, that's fairly similar to the current situation: you just import the
>> appropriate things in your ipy_user_conf.py and maybe activate them, except
>> there is no standardized plugin API.
> I too like this approach and a definitely think installing and
> enabling should be two different steps.
> How does Mercurial declare/discover plugins? Does it use setuptools?
No. It reads the configuration files (~/.hgrc and the current repo's .hg/hgrc,
if any) for a section that looks like this:
The "foo=" lines are those plugins which are distributed with Mercurial itself,
so there is a standard place to look for them. You can specify a particular path
if it is not one of the standard plugins like the ones that I have commented out.
> I will look at this. Because IPython plugin's are often extremely
> lightweight, it would be nice if users could simply drop them into
> .ipython/plugins for installation.
We already add ~/.ipython to the sys.path. If you want to to stop doing that,
and only add ~/.ipython/plugins to the sys.path, that might be cleaner.
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
More information about the IPython-dev