← Back to team overview

zim-wiki team mailing list archive

Re: Disabling/Enabling plugins per Notebook



I think we're almost there; I added support for "styles" per profile
too, and aded the field "Profile" to the properties dialog, so we now
have a (basic) UI for configuring the profiles.

Maybe it should be a "combo box" showing the profiles instead of a
text field... but I'll leave that for someone with more GTK expertise

The branch is here:

I've been using this branch for the last week, without problems.

Jaap, would you take a look at this when you have some time? I'd like
to know what do you think of the code and the implementation in
general before adding a formal merge proposal in Launchpad.

This would be a brief summary of the features implemented in the branch:
- notebooks can have a profile
    - the profile is part of the notebook properties
    - profiles are stored in XDG_CONFIG_HOME/zim/profiles, and they
are standard zim conf files
    - all the preferences (including active plugins, and its
preferences) are stored by profile
    - profiles can be shared, i.e., several notebooks can use the same profile
- a plugin can claim to be "profile independent"
    - automount is the only plugin with this flag set to True at the moment
    - independent plugins are loaded before opening the notebook
    - non-independent plugins are loaded after opening the notebook,
once we know if the notebook uses a specific profile
    - preferences for the non-independent plugins in a profile are
ignored: an independent plugin always uses the configuration from the
general preferences
- styles can (optionally) be defined by profile
    - profile styles are stored in XDG_CONFIG_HOME/zim/styles
    - if a notebook uses a specific profile, and there is a style for
that profile, the notebook will use that specific style; otherwise,
the general style is used