On Sunday 21 July 2013 06:36:01 Emmanuel Mayssat wrote: > I would like to change the style of headers for a subset of pages. > How can I inject my css stylesheet in a particular page?
For all pages, you can obviously change the "stylesheets" configuration setting like this (not tested): stylesheets = [("screen", "/css/mystyles.css")] This augments the stylesheets mentioned in the theme class. See the ThemeBase class in MoinMoin/theme/__init__.py for the default definitions. To affect only some pages, it might be necessary to change the theme code or to override a theme with extra code to insert references to styles and scripts (with regard to your other question). The html_head method in a theme (see the ThemeBase class for details) invokes various other methods to do this work and either those methods or html_head itself could be customised to insert extra stylesheet and script references in a more flexible fashion. You might test the page name and insert extra stuff in html_head like this: html = ... if d["page"].page_name in ("SpecialPage", ...): # Refer to .../common/js/special.js html.append(self.externalScript("special")) # Refer to .../theme/css/mystyles.css # (you have to install mystyles.css in the theme's css directory) html.append(self._stylesheet_link(True, "screen", "mystyles.css")) return '\n'.join(html) You could make a new theme and override html_head, adding your own stylesheet and script references to the string that comes back from the superclass's html_head, or you could change the existing themes. I can't think of a nice and quick way of doing this for all themes at the moment, but maybe there are some tricks that can be used. (You could change html_stylesheets in ThemeBase, for example, but that would leave you with local modifications to Moin itself, which isn't always desirable.) Paul ------------------------------------------------------------------------------ See everything from the browser to the database with AppDynamics Get end-to-end visibility with application monitoring from AppDynamics Isolate bottlenecks and diagnose root cause in seconds. Start your free trial of AppDynamics Pro today! http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk _______________________________________________ Moin-user mailing list Moin-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/moin-user