wiki:ThemeEnginePlugin

Version 5 (modified by coderanger, 8 years ago) (diff)

Add more information

Modular styles manager

Description

This plugin simplifies the process of distributing and deploying themes and styles.

API Basics

Most themes should simply subclass ThemeBase (in themeengine.api). This works similarly to WikiMacroBase, use you theme name followed by "Theme" as the class name, and put the description as the class's docstring. There are a number of class variable you can define to affect how your theme will be loaded, if any is set to True, it will take on a default value (see below):

header
The path to the header template. (Defaults to templates/header.cs)
footer
The path to the footer template. (Defaults to templates/footer.cs)
css
The path to the CSS template. (Defaults to templates/css.cs)
htdocs
The folder containing the static content. (Defaults to htdocs)
screenshot
The path to the screenshot file. (Defaults to htdocs/screenshot.png)
header_logo
A dict containing the data normally in [header_logo] in trac.ini. (Defaults to {})

Packaging A Theme

For lack of a decent guide right now, check out some of the existing themes.

One request, when taking screenshots please make them of the first wiki page, preferably with its default content. Also please make them match the aspect ration of 640x400.

Choosing a Theme

To select a theme you can either specify it in trac.ini (see below), or use the WebAdmin interface. The web interface does require JavaScript in your browser.

Bugs/Feature Requests

Existing bugs and feature requests for ThemeEnginePlugin are here.

If you have any issues, create a new ticket.

Download

Download the zipped source from here.

Source

You can check out ThemeEnginePlugin from here using Subversion, or browse the source with Trac.

Example

To enable:

[components]
themeengine.* = enabled

To specify a theme:

[theme]
theme = <Name>

Recent Changes

[13789] by olemis on 2014-03-22 19:28:16
ThemeEnginePlugin [ refs #11606 ] Do not copy .po and .pot files in bdist archives
Ensure that locale folder will always be deployed thus avoiding KeyError .
[13788] by olemis on 2014-03-22 18:50:02
ThemeEnginePlugin [ fixes #11638 ] Remove x if c else y expressions from templates
[13718] by olemis on 2014-03-03 17:32:52
ThemeEnginePlugin [ fixes #11606 ] : Include the right i18n distutils cmd (no js)

... formerly breaking bdist_* commands.

Author/Contributors

Author: coderanger
Contributors:

Attachments (3)

Download all attachments as: .zip