CSS Themes

Thomas Schilling nominolo at googlemail.com
Wed Jul 21 16:42:06 EDT 2010

On 21 July 2010 19:24, Mark Lentczner <markl at glyphic.com> wrote:
> Well, that was certainly unanimous!
> I'm implementing the following:
> 1) Themes will be one each in sub directories under the html directory. That way theme dependent images can be grouped and only included if needed. The name of the directory is the user visible name of the theme. There should be only one css file in the directory.
> 2) We'll include these themes in the source:
>        Classic
>        Tibbe
>        Snappy
>        Nomi <-- better name? This is Thomas' theme
> (I think it is good to show some alternatives)
> 3) Nomi will be the default. I'm assuming this is going to be the one we tweak to perfection.
> 4) When haddock runs, it assembles list of themes to include. If there are more than one, then you get switcher, otherwise, it's just one theme.
> 5) The switcher will remain the simple thing it is now. I'll move the common css and javascript for it into files only included if it is used. That way themes don't have to think about it.
> 6) Command line options:
>        (the theme list starts empty)
>        --css=<file>     = add a theme, implemented by a single CSS file
>        --css=<dir>      = add a theme from a directory
>        --themes=<dir>   = add all themes from a directory (.css files and sub-dirs)
>        --default-themes = add the default themes (essentially --themes=html
>        (if the theme list is still empty, then add Nomi)
>        (if there is more than one theme, include a switcher)
> Sounds like a lot of work - but I'm most of the way there, actually!

Sounds great!

Regarding (1) and (6): How does Haddock know which directories are
themes and which ones are part of the document structure?  Will only
themes live in subdirectories of 'html'?  Or will it be, say,
'html/themes/<name>' ?

Regarding (2),the name:  I don't really go by "Nomi" ;)  A few names
I'd like better:

  - "Nominolo" (i.e., full nick, like Tibbe)
  - "Modern" (as opposed to "Classic")
  - "Hawiki"/"Haskellwiki" since this is going to be the new Haskell wiki style.
  - "Ocean" or "Ocean Sunset" since the colours are a greenish blue
and orange (like here

One more thing:

7) One note regarding collapsable synopsis.  I don't think that should
be theme-specific, so it could be included with the generic javascript

/ Thomas

More information about the Haddock mailing list