welcome: please sign in

The following 392 words could not be found in the dictionary of 0 words and are highlighted below:
ability   able   above   accept   actions   adapt   add   added   Additional   additional   administrator   after   After   Alias   all   also   an   and   And   any   appearance   application   archive   archives   are   area   argument   arguments   as   As   at   author   available   avoids   background   bar   be   before   best   better   between   body   builtin   but   by   cache   call   callables   called   can   change   changed   changes   changing   choose   classic   clear   clever   cms   code   color   com   common   compatible   config   configuration   Configuration   consult   containing   Contents   copy   Copy   copying   core   could   create   credits   css   csshref   Custom   Customize   customize   data   Default   default   depends   Description   Dev   Development   development   differ   different   directories   directory   disabling   discuss   distributed   do   does   download   due   during   easy   edit   Edit   editable   editing   either   element   encoding   ending   esw   example   existing   feel   few   ffffcc   file   files   filesystem   find   first   fit   follow   following   follows   Foot   footer   footer1   footer2   For   for   forced   form   forms   fragments   from   future   Generally   go   going   h1   h2   h3   h4   h5   has   have   head   header   header1   header2   headlines   Help   here   highlight   how   htdocs   html   http   iconbar   idea   If   if   img   import   in   In   incutio   index   information   inherting   inly   insert   inside   install   installation   installed   Installing   instructions   interface   interwiki   into   involved   is   it   its   just   keyword   least   left   like   likings   line   lines   List   list   loaded   located   locations   logo   look   Make   make   makes   maps   Market   markup   may   Maybe   mean   means   mechanism   media   modern   modernized   modify   Modify   modifying   moin   Moin   more   most   move   msg   much   must   mytheme   name   names   navi   navigation   needs   new   no   nofollow   noindex   None   normal   not   note   Note   now   object   Of   of   On   on   only   options   or   order   org   others   output   override   own   page   Page   pages   panel   Parameter   place   placed   plain   Please   please   plugin   plugins   posts   pre   preferences   prefix   programmer   put   putting   py   Python   queries   query   referring   relogin   rename   request   requests   reside   restart   rightsidebar   robots   rowbgcolor   same   script   search   see   sent   sequence   serve   server   serves   settings   setup   shared   should   side   single   site   small   so   some   somepath   specific   standard   start   static   static190   steps   string   strings   stuff   styles   stylesheets   subset   sure   system   Table   tag   tags   take   that   That   The   the   Theme   theme   themes   Themes   then   Then   there   these   things   this   This   those   title   to   To   too   top   topic   touched   touching   trail   True   tuples   two   types   Unpack   upgrade   url   use   used   user   username   usually   value   variable   version   very   view   visit   visual   w3   want   way   we   web   When   Where   where   whole   wiki   will   wish   with   without   work   writing   You   you   Your   your  

Clear message
location: HelpOnThemes

Themes

MoinMoin has a theme plugin system that makes it easy to change the look and feel without touching the core code. As a user you can choose between different themes that are pre-installed1 As a user you may be able to change the theme you can view by going to the user preferences (it does not work if the wiki administrator has forced a specific theme, disabling the ability to change the theme).

Installing Themes

You can find additional themes if you visit ThemeMarket and download the archives there. Please make sure that the theme you choose is compatible with your version of MoinMoin!

You can not just copy the whole directory to a themes directory. That will not work. To install a new theme follow the instructions by the theme author. Generally you have two different locations:

  1. The directory where all the static files of the themes reside
    • Unpack the archive and put the theme directory here (containing two directories: css/ and img/).

  2. The data/plugin/theme directory where theme code can reside

    • move the theme script here (that has the same name as the theme but with a .py ending).

Your theme should be available now. Maybe you have to relogin or clear the cache to see it. For configuration options please go to HelpOnConfiguration.

Customize Themes

You can customize the pre-installed theme but it is much better to start with a copy. To do this make the following steps (we take theme modern as an example):

  1. Make a copy of the 'modern' theme in the static files directory and call it 'mytheme'
  2. Copy the script of this theme MoinMoin/theme/modern.pyto data/plugins/theme/mytheme.py'

  3. Edit the file 'mytheme.py' and change at least the variable name = "modern" to {name ="mytheme"

  4. Then you should be able to see your new theme. If not, restart the web server.
  5. After that start editing the files in the theme's static files directory.

Where the static files directory is located depends on the installation of the wiki:

The best way to change the visual appearance of your wiki site is by inherting the default MoinMoin styles and only changing those things you want to adapt to your likings. This avoids the work involved in copying new styles added during development to your own stylesheets. To do this, we use the CSS @import mechanism like this:

   1 @import url("/moin_static190/modern/css/common.css");
   2 
   3 h1,h2,h3,h4,h5 {
   4     background-color: #88CCFF;
   5 }

In the first line, we import the default common styles as distributed with MoinMoin. You may have to change the URL to fit your system setup and/or MoinMoin version.

In the following lines, we change the background color of headlines. And that's it.

For more see the css-discuss wiki.

For a very clever idea to make CSS wiki editable, see plain.css.

Modify wiki configuration

Parameter

Default value

Description

page_footer1

""

Custom HTML markup sent before the system footer.

page_footer2

""

Custom HTML markup sent after the system footer.

page_header1

""

Custom HTML markup sent before the system header / title area but after the body tag.

page_header2

""

Custom HTML markup sent after the system header / title area (and body tag).

stylesheets

[(mediacsshref), ...]

List of tuples (media, csshref) to insert after theme css, before user css.

html_head

""

Additional <HEAD> tags for all pages

html_head_posts

robotsnoindex,nofollow

Additional <HEAD> tags for POST requests

html_head_index

robotsindex,follow

Additional <HEAD> tags for some few index pages

html_head_normal

robotsindex,nofollow

Additional <HEAD> tags for most normal pages

html_head_queries

robotsnoindex,nofollow

Additional <HEAD> tags for requests with query strings, like actions

You can customize your wiki by modifying the wiki configuration as follows:

  1. head
    • config.html_head is added into the <head> element for all pages

    • config.html_head_index, config.html_head_normal, config.html_head_queries, config.html_head_posts are added for different types of pages (see above)

  2. body
    • you can use some html fragments to customize moin's output (we are referring to standard themes, others could differ) – here is the sequence how stuff is output:
    • header:
      • config.page_header1

      • config.logo_stringuse this to modify the logo (usually at top left)

      • search form
      • username (on side panel in rightsidebar theme), interwiki, title

      • trail
      • iconbar (used inly in classic theme)

      • config.navi_baris a list of page names that are added to the title area, if None, add no navigation bar. In rightsidebar theme it is placed on side panel.

      • msg
      • config.page_header2 (in rightsidebar theme this markup is placed before side bar and msg string)

    • wiki page
    • footer:
      • Page information
      • config.page_footer1

      • edit bar (on rightsidebar it is on side panel), search forms (only in classic theme), actions (only in classic theme)

      • config.credits

      • version
      • config.page_footer2

  3. as a wiki user, you can override theme CSS settings by putting your own user CSS URL into your user preferencesthis CSS is loaded after the theme CSS, so you can override all you want changed. Your CSS file must be in UTF-8 encoding (ASCII is OK, too, as it is a subset of UTF-8).

page_header1, page_header2, page_footer1 and page_footer2 can now be callables and will be called with the "request" object as a single argument (note that you should accept any keyword arguments in order to be compatible to future changes).

Make a new Theme

If you wish you can also create a new theme. The best way is to copy an existing theme like modern. You will also have to rename the theme script and change the variable name inside this script. If you are a Python programmer you can also start writing a new user interface by writing a new theme script for your theme. When you upgrade MoinMoin, your own themes are not touched - it will work with the new version, or needs only small changes due to theme API changes. (For more see also MoinDev/ThemeDevelopment)

  1. On a standard MoinMoin 1.9 installation these are "classic", "modern", "modernized", "modernized_cms" and "rightsidebar" (1)