Merge branch 'themes'
commit
184f68efa8
|
@ -0,0 +1,37 @@
|
||||||
|
#!/usr/bin/perl
|
||||||
|
package IkiWiki::Plugin::theme;
|
||||||
|
|
||||||
|
use warnings;
|
||||||
|
use strict;
|
||||||
|
use IkiWiki 3.00;
|
||||||
|
|
||||||
|
sub import {
|
||||||
|
hook(type => "getsetup", id => "theme", call => \&getsetup);
|
||||||
|
hook(type => "checkconfig", id => "theme", call => \&checkconfig);
|
||||||
|
}
|
||||||
|
|
||||||
|
sub getsetup () {
|
||||||
|
return
|
||||||
|
plugin => {
|
||||||
|
safe => 1,
|
||||||
|
rebuild => 0,
|
||||||
|
section => "web",
|
||||||
|
},
|
||||||
|
theme => {
|
||||||
|
type => "string",
|
||||||
|
example => "actiontabs",
|
||||||
|
description => "name of theme to enable",
|
||||||
|
safe => 1,
|
||||||
|
rebuild => 1,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
my $added=0;
|
||||||
|
sub checkconfig () {
|
||||||
|
if (! $added && exists $config{theme} && $config{theme} =~ /^\w+$/) {
|
||||||
|
add_underlay("themes/".$config{theme});
|
||||||
|
$added=1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
1
|
|
@ -4,7 +4,6 @@ package IkiWiki::Plugin::wmd;
|
||||||
use warnings;
|
use warnings;
|
||||||
use strict;
|
use strict;
|
||||||
use IkiWiki 3.00;
|
use IkiWiki 3.00;
|
||||||
use Encode;
|
|
||||||
|
|
||||||
sub import {
|
sub import {
|
||||||
add_underlay("wmd");
|
add_underlay("wmd");
|
||||||
|
|
14
Makefile.PL
14
Makefile.PL
|
@ -75,10 +75,24 @@ underlay_install:
|
||||||
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive
|
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive
|
||||||
for file in doc/ikiwiki/directive/*; do \
|
for file in doc/ikiwiki/directive/*; do \
|
||||||
if [ -f "$$file" ]; then \
|
if [ -f "$$file" ]; then \
|
||||||
|
cp -aL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive 2>/dev/null || \
|
||||||
install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive; \
|
install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/directives/ikiwiki/directive; \
|
||||||
fi \
|
fi \
|
||||||
done
|
done
|
||||||
|
|
||||||
|
# Themes have their style.css appended to the normal one.
|
||||||
|
for theme in themes/*; do \
|
||||||
|
install -d $(DESTDIR)$(PREFIX)/share/ikiwiki/$$theme; \
|
||||||
|
for file in $$theme/*; do \
|
||||||
|
if echo "$$file" | grep -q style.css; then \
|
||||||
|
(cat doc/style.css; cat $$file) >> $(DESTDIR)$(PREFIX)/share/ikiwiki/$$theme/style.css; \
|
||||||
|
elif [ -f "$$file" ]; then \
|
||||||
|
cp -aL $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$file 2>/dev/null || \
|
||||||
|
install -m 644 $$file $(DESTDIR)$(PREFIX)/share/ikiwiki/$$file; \
|
||||||
|
fi \
|
||||||
|
done; \
|
||||||
|
done
|
||||||
|
|
||||||
extra_install: underlay_install
|
extra_install: underlay_install
|
||||||
# Install example sites.
|
# Install example sites.
|
||||||
for dir in `cd doc/examples; find . -type d ! -regex '.*\.svn.*'`; do \
|
for dir in `cd doc/examples; find . -type d ! -regex '.*\.svn.*'`; do \
|
||||||
|
|
|
@ -22,6 +22,7 @@ ikiwiki (3.20100611) UNRELEASED; urgency=low
|
||||||
* git: Gix --gettime to properly support utf8 filenames.
|
* git: Gix --gettime to properly support utf8 filenames.
|
||||||
* attachment: Support Windows paths when taking basename of client-supplied
|
* attachment: Support Windows paths when taking basename of client-supplied
|
||||||
file name.
|
file name.
|
||||||
|
* theme: New plugin, allows easily theming a site via the underlay.
|
||||||
|
|
||||||
-- Joey Hess <joeyh@debian.org> Fri, 11 Jun 2010 13:39:15 -0400
|
-- Joey Hess <joeyh@debian.org> Fri, 11 Jun 2010 13:39:15 -0400
|
||||||
|
|
||||||
|
|
|
@ -202,6 +202,14 @@ Files: underlays/openid-selector/ikiwiki/openid/jquery.js
|
||||||
Copyright: © 2005-2008 by John Resig, Branden Aaron & Jörn Zaefferer
|
Copyright: © 2005-2008 by John Resig, Branden Aaron & Jörn Zaefferer
|
||||||
License: GPL-2
|
License: GPL-2
|
||||||
|
|
||||||
|
Files: underlays/themes/bzed/*
|
||||||
|
Copyright:
|
||||||
|
© 2009,2010 Bernd Zeimetz
|
||||||
|
© 2008 Yahoo! Inc.
|
||||||
|
License: GPL-2+
|
||||||
|
Parts derived from BSD-C3 licensed YUI library.
|
||||||
|
http://developer.yahoo.com/yui/license.html
|
||||||
|
|
||||||
License: BSD-C2
|
License: BSD-C2
|
||||||
Redistribution and use in source and binary forms, with or without
|
Redistribution and use in source and binary forms, with or without
|
||||||
modification, are permitted provided that the following conditions
|
modification, are permitted provided that the following conditions
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
[[!template id=plugin name=theme author="[[Joey]]"]]
|
||||||
|
[[!tag type/web]]
|
||||||
|
|
||||||
|
The theme plugin allows easily applying a theme to your wiki, by
|
||||||
|
configuring the `theme` setting in the setup file with the name of a theme
|
||||||
|
to use. The themes you can choose from are all subdirectories, typically
|
||||||
|
inside `/usr/share/ikiwiki/themes/`.
|
||||||
|
|
||||||
|
A theme provides, via the underlay, an enhanced version of the regular
|
||||||
|
[[style.css]]. This leaves [[local.css]] free for you to further
|
||||||
|
customise. Themes can also provide header and background images.
|
|
@ -0,0 +1,123 @@
|
||||||
|
/* actiontabs theme for ikiwiki
|
||||||
|
*
|
||||||
|
* by svend
|
||||||
|
*/
|
||||||
|
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
color: #005a9c;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
hr {
|
||||||
|
border-style: none;
|
||||||
|
background-color: #999;
|
||||||
|
height: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
code, pre {
|
||||||
|
background: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
padding: .5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
font-family: sans-serif;
|
||||||
|
color: black;
|
||||||
|
background: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader {
|
||||||
|
margin: 0;
|
||||||
|
padding: 1em 2em 0 2em;
|
||||||
|
background: #eee;
|
||||||
|
border-color: #999;
|
||||||
|
border-style: none none solid none;
|
||||||
|
border-width: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.header {
|
||||||
|
font-size: 100%;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
display: block;
|
||||||
|
margin-top: .2em;
|
||||||
|
font: 140% sans-serif;
|
||||||
|
text-transform: capitalize;
|
||||||
|
}
|
||||||
|
|
||||||
|
.actions {
|
||||||
|
text-align: right;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content, #comments, #footer {
|
||||||
|
margin: 1em 2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pageinfo {
|
||||||
|
border-color: #999;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inlinepage {
|
||||||
|
margin: .4em 0;
|
||||||
|
padding: .4em 0;
|
||||||
|
border-style: none;
|
||||||
|
border-top: 1px solid #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inlineheader {
|
||||||
|
font-size: 120%;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 { font: 120% sans-serif }
|
||||||
|
h2 { font: bold 100% sans-serif }
|
||||||
|
h3 { font: italic 100% sans-serif }
|
||||||
|
h4, h5, h6 { font: small-caps 100% sans-serif }
|
||||||
|
|
||||||
|
/* Smaller headings for inline pages */
|
||||||
|
.inlinepage h1 { font-size: 110% }
|
||||||
|
.inlinepage h2 { font-size: 100% }
|
||||||
|
.inlinepage h3 { font-size: 100% }
|
||||||
|
|
||||||
|
.pageheader .actions ul {
|
||||||
|
border-style: none
|
||||||
|
}
|
||||||
|
|
||||||
|
.actions ul {
|
||||||
|
font-size: 75%;
|
||||||
|
padding: 0;
|
||||||
|
border-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.actions ul li a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.actions ul li {
|
||||||
|
margin: 0;
|
||||||
|
padding: .1em .5em 0 .5em;
|
||||||
|
background: white;
|
||||||
|
border-color: #999;
|
||||||
|
border-style: solid solid none solid;
|
||||||
|
border-width: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.recentchanges {
|
||||||
|
border-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pagecloud {
|
||||||
|
width: auto;
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 165 B |
Binary file not shown.
After Width: | Height: | Size: 52 KiB |
|
@ -0,0 +1,280 @@
|
||||||
|
/* bzed theme for ikiwiki
|
||||||
|
*
|
||||||
|
* Copyright (C) 2010 Bernd Zeimetz
|
||||||
|
* Licensed under same license as ikiwiki: GPL v2 or later
|
||||||
|
*
|
||||||
|
* Parts of this file are based on the awesome YUI,
|
||||||
|
* these parts will stay under the BSD license,
|
||||||
|
* but you're free to apply the GPLv2 to them, of course.
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* -------------------------------------------------------------------------------------------------
|
||||||
|
Based on reset-fonts-grids.css from yui.
|
||||||
|
Copyright (c) 2008, Yahoo! Inc. All rights reserved.
|
||||||
|
Code licensed under the BSD License:
|
||||||
|
http://developer.yahoo.net/yui/license.txt
|
||||||
|
version: 2.5.1
|
||||||
|
*/
|
||||||
|
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,legend,p,blockquote,th,td{margin:0;padding:0;}
|
||||||
|
table{border-collapse:collapse;border-spacing:0;}
|
||||||
|
img{border:0;}
|
||||||
|
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}
|
||||||
|
li{list-style:none;}
|
||||||
|
caption,th{text-align:left;}
|
||||||
|
h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}
|
||||||
|
q:before,q:after{content:'';}
|
||||||
|
abbr,acronym {border:0;font-variant:normal;}
|
||||||
|
sup {vertical-align:text-top;}
|
||||||
|
sub {vertical-align:text-bottom;}
|
||||||
|
input,textarea,select{font-family:inherit;font-size: 13px/1.23;font-weight:normal;}
|
||||||
|
input,textarea,select{*font-size:100%;}
|
||||||
|
legend{color:#000;}
|
||||||
|
/* body {font:13px/1.231 arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;} */
|
||||||
|
body {font:13px/1.231 "Lucida Grande",Verdana,Lucida,Helvetica,Arial,sans-serif;*font-size:small;*font:x-small;}
|
||||||
|
table {font-size:inherit;font:100%;}
|
||||||
|
pre,code,kbd,samp,tt{font-family:monospace;}
|
||||||
|
|
||||||
|
|
||||||
|
body{text-align:left;}
|
||||||
|
.inlinefooter{clear:both;}
|
||||||
|
|
||||||
|
/* #doc,#doc2,#doc3,#doc4,.yui-t1,.yui-t2,.yui-t3,.yui-t4,.yui-t5,.yui-t6,.yui-t7{margin:auto;text-align:left;width:57.69em;*width:56.25em;min-width:750px;} */
|
||||||
|
.page {margin:auto;text-align:left;width:57.69em;*width:56.25em;min-width:750px;}
|
||||||
|
|
||||||
|
/* #doc3{margin:auto 10px;width:auto;} */
|
||||||
|
.page {margin:auto 10px;width:auto;}
|
||||||
|
|
||||||
|
#pagebody, .sidebar{position:relative;}
|
||||||
|
#pagebody, .sidebar{_position:static;}
|
||||||
|
#pagebody {position:static;}
|
||||||
|
.sidebar {float:right;width:16.5em;*width:16em;}
|
||||||
|
#pagebody {margin-right:19em;*margin-right:18.5em;}
|
||||||
|
/* #content {float:none;width:auto;} */
|
||||||
|
#pagebody:after, .sidebar:after, .page:after{content:".";display:block;height:0;clear:both;visibility:hidden;}
|
||||||
|
.page f{zoom:1;}
|
||||||
|
|
||||||
|
/* ------------------------------------------------------------------------------------------------
|
||||||
|
* Taken from base.css, part of YUI's CSS Foundation
|
||||||
|
* Copyright (c) 2008, Yahoo! Inc. All rights reserved.
|
||||||
|
* Code licensed under the BSD License:
|
||||||
|
* http://developer.yahoo.net/yui/license.txt
|
||||||
|
* version: 2.5.1
|
||||||
|
*/
|
||||||
|
h1 {
|
||||||
|
/*18px via YUI Fonts CSS foundation*/
|
||||||
|
font-size:138.5%;
|
||||||
|
}
|
||||||
|
h2 {
|
||||||
|
/*16px via YUI Fonts CSS foundation*/
|
||||||
|
font-size:123.1%;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
/*14px via YUI Fonts CSS foundation*/
|
||||||
|
font-size:108%;
|
||||||
|
}
|
||||||
|
h1,h2,h3 {
|
||||||
|
/* top & bottom margin based on font size */
|
||||||
|
margin:1em 0;
|
||||||
|
}
|
||||||
|
h1,h2,h3,h4,h5,h6,strong {
|
||||||
|
/*bringing boldness back to headers and the strong element*/
|
||||||
|
font-weight:bold;
|
||||||
|
}
|
||||||
|
abbr,acronym {
|
||||||
|
/*indicating to users that more info is available */
|
||||||
|
border-bottom:1px dotted #000;
|
||||||
|
cursor:help;
|
||||||
|
}
|
||||||
|
em {
|
||||||
|
/*bringing italics back to the em element*/
|
||||||
|
font-style:italic;
|
||||||
|
}
|
||||||
|
blockquote,ul,ol,dl {
|
||||||
|
/*giving blockquotes and lists room to breath*/
|
||||||
|
margin:1em;
|
||||||
|
}
|
||||||
|
ol,ul,dl {
|
||||||
|
/*bringing lists on to the page with breathing room */
|
||||||
|
margin-left:2em;
|
||||||
|
}
|
||||||
|
ol li {
|
||||||
|
/*giving OL's LIs generated numbers*/
|
||||||
|
list-style: decimal outside;
|
||||||
|
}
|
||||||
|
ul li {
|
||||||
|
/*giving UL's LIs generated disc markers*/
|
||||||
|
list-style: disc outside;
|
||||||
|
}
|
||||||
|
dl dd {
|
||||||
|
/*giving UL's LIs generated numbers*/
|
||||||
|
margin-left:1em;
|
||||||
|
}
|
||||||
|
th,td {
|
||||||
|
/*borders and padding to make the table readable*/
|
||||||
|
border:1px solid #000;
|
||||||
|
padding:.5em;
|
||||||
|
}
|
||||||
|
th {
|
||||||
|
/*distinguishing table headers from data cells*/
|
||||||
|
font-weight:bold;
|
||||||
|
text-align:center;
|
||||||
|
}
|
||||||
|
caption {
|
||||||
|
/*coordinated margin to match cell's padding*/
|
||||||
|
margin-bottom:.5em;
|
||||||
|
/*centered so it doesn't blend in to other content*/
|
||||||
|
text-align:center;
|
||||||
|
}
|
||||||
|
p,fieldset,table,pre {
|
||||||
|
/*so things don't run into each other*/
|
||||||
|
margin-bottom:1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
#searchbox {
|
||||||
|
width:21.5em;*width:21em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* ------------------------------------------------------------------------------------------------
|
||||||
|
* All CSS below is
|
||||||
|
* Copyright (C) 2010 Bernd Zeimetz
|
||||||
|
* Licensed under same license as ikiwiki: GPL v2 or later */
|
||||||
|
|
||||||
|
.page, .pageheader, .sidebar, #content, #comments, .inlinepage, .recentchanges, .pageheader .actions ul, #pagebody {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
html, body {
|
||||||
|
color:#000;
|
||||||
|
/* background-image: url('body_background.png');
|
||||||
|
background-repeat: repeat; */
|
||||||
|
background-color: #8da1b8;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
padding-left: 5%;
|
||||||
|
padding-right: 5%;
|
||||||
|
padding-top: 1em;
|
||||||
|
padding-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.page {
|
||||||
|
background: #fff;
|
||||||
|
border: outset #ccc;
|
||||||
|
padding-left: 1em;
|
||||||
|
padding-right: 1em;
|
||||||
|
padding-top: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader {
|
||||||
|
background-image: url('header_background.png');
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
height: 100px;
|
||||||
|
padding-left: 1em;
|
||||||
|
padding-right: 1em;
|
||||||
|
padding-bottom: 1em;
|
||||||
|
padding-top: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader .header {
|
||||||
|
text-align: top;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader .header form {
|
||||||
|
padding: 0em 0em 0em 0em;
|
||||||
|
float: right;
|
||||||
|
margin-top: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader .header .title, .pageheader .header .parentlinks,
|
||||||
|
.inlinepage .inlineheader,
|
||||||
|
h1, h2, h3, h4, h5, h6 {
|
||||||
|
margin-top: 1em;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader .header .title, .pageheader .header .parentlinks, .pageheader .actions ul li, .pageheader .header span {
|
||||||
|
padding: 0.25em 0.25em 0.25em 0.25em;
|
||||||
|
background-image: url('background_darkness.png');
|
||||||
|
background-repeat: repeat;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader .header span a, .pageheader .actions ul li a, .pageheader .header .parentlinks a {
|
||||||
|
color: white;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.pageheader .actions {
|
||||||
|
text-align: right;
|
||||||
|
vertical-align: bottom;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pagebody {
|
||||||
|
padding-right: 1em;
|
||||||
|
padding-bottom: 2em;
|
||||||
|
border-right: ridge #eee;
|
||||||
|
clear: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
#content a, #comments a, .sidebar a {
|
||||||
|
color: #315485;
|
||||||
|
text-decoration: none;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar h2 {
|
||||||
|
border-bottom: ridge #eee;
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.sidebar .menu {
|
||||||
|
margin-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.inlinepage, .recentchanges, div.recentchanges {
|
||||||
|
clear: none !important;
|
||||||
|
margin-bottom: 2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inlinefooter {
|
||||||
|
border-top: 1px dotted #315485;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inlinefooter .pagedate, .inlinefooter .tags {
|
||||||
|
display: inline;
|
||||||
|
clear: none;
|
||||||
|
margin-right: 2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.calendar .month-calendar th, .calendar .month-calendar td {
|
||||||
|
padding: 0.22em;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
.sidebar, .page .pageheader .header .parentlinks {
|
||||||
|
content:".";
|
||||||
|
display:block;
|
||||||
|
height:0;
|
||||||
|
visibility:hidden;
|
||||||
|
}
|
||||||
|
.page {
|
||||||
|
padding: 1em 1em 1em 1em;
|
||||||
|
}
|
||||||
|
.pageheader .header span a, .pageheader .actions ul li a, .pageheader .header .parentlinks a {
|
||||||
|
color #315485;
|
||||||
|
}
|
||||||
|
#content, #comments, #pagebody {
|
||||||
|
margin-right: 0;
|
||||||
|
*margin-right: 0;
|
||||||
|
border-right: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue