Author: hannes
Date: Mon Nov 7 18:26:47 2005
New Revision: 10355
Modified:
trunk/libraries/koala/sources/examples/wiki/parser.dylan
trunk/libraries/koala/sources/examples/wiki/wiki.dylan
trunk/libraries/koala/www/wiki/edit.dsp
trunk/libraries/koala/www/wiki/footer.dsp
trunk/libraries/koala/www/wiki/header.dsp
trunk/libraries/koala/www/wiki/recent.dsp
trunk/libraries/koala/www/wiki/search.dsp
trunk/libraries/koala/www/wiki/view.dsp
trunk/libraries/koala/www/wiki/wiki.css
Log:
Bug: 7219
applied patches from Sebastian Kratzert (krase AT in-chemnitz.de):
* removed CR from dsp files
* implemented show-revisions tag
* improved parser
Modified: trunk/libraries/koala/sources/examples/wiki/parser.dylan
==============================================================================
--- trunk/libraries/koala/sources/examples/wiki/parser.dylan (original)
+++ trunk/libraries/koala/sources/examples/wiki/parser.dylan Mon Nov 7
18:26:47 2005
@@ -129,7 +129,8 @@
(out :: <stream>, markup :: <string>, start :: <integer>)
=> (end-pos :: false-or(<integer>))
let newline = find(markup, '\n', start: start) | markup.size;
- let (#rest idxs) = regexp-position(markup, "(==+)([^=\n]+)(==+)\\s*(\n|$)",
+ // let (#rest idxs) = regexp-position(markup, "(==+)([^=\n]+)(==+)\\s*(\n|$)",
+ let (#rest idxs) = regexp-position(markup, "(==+)([^=\n]+)(==+|$)",
start: start, end: newline);
if (idxs.size > 1)
let tag = copy-sequence(markup, start: idxs[2], end: idxs[3]);
@@ -146,14 +147,27 @@
=> (end-pos :: false-or(<integer>))
// links can't span multiple lines
let close = find(markup, method (x) x == ']' | x == '\n' end, start: start);
- if (close & markup[close] == ']')
+ //format(out, "start: %d, close: %d\n", start, close);
+ if (close)
+ if(markup[close] == ']')
+ close := make-link(out, markup, start, close);
+ elseif(markup[close] == '\n')
+ note-form-message("The link %s is invalid wiki markup.",
+ copy-sequence(markup, start: start, end: close));
+ close := make-link(out, markup, start, close);
+ close := close - 1;
+ end if;
+ close;
+ end if;
+end method parse-link;
+
+define method make-link
+ (out :: <stream>, markup :: <string>, start :: <integer>, close ::
<integer>)
+ if (close)
let wiki-link? = (markup[start + 1] == '[');
if (wiki-link?)
- close := close + 1;
- if (markup.size <= close | markup[close] ~== ']')
- note-form-message("The link %s is invalid wiki markup.",
- copy-sequence(markup, start: start, end: close));
- close := close - 1;
+ if (markup[close] == ']')
+ close := close + 1;
end;
let title = copy-sequence(markup, start: start + 2, end: close - 1);
format(out, "<a href=\"%s%s\">%s%s</a>",
@@ -168,8 +182,8 @@
format(out, "<a href=\"%s\">%s</a>", url, label | url);
end if;
end if;
- close + 1
-end method parse-link;
+ close + 1;
+end method make-link;
define method parse-bulleted-list
(out :: <stream>, markup :: <string>, start :: <integer>)
@@ -192,7 +206,7 @@
start: start,
end: list-end | markup.size),
separator: "\n", trim?: #t);
- write(stream, "<p>\n");
+// write(stream, "<p>\n");
let depth :: <integer> = 0;
let regex2 = format-to-string("^\\s*([%s]+)", bullet-char);
for (line in lines)
@@ -202,22 +216,26 @@
let bullet-end = indexes[3];
let num-bullets = bullet-end - bullet-start;
let item-html = wiki-markup-to-html(line, start: bullet-end);
+ item-html := copy-sequence(item-html, start: 0, end: item-html.size - 1);
case
+ depth = 0 =>
+ format(stream, "<%s>\n<li>%s", tag, item-html);
+ inc!(depth);
num-bullets < depth =>
- format(stream, "</%s>\n<li>%s</li>", tag, item-html);
+ format(stream, "</li>\n</%s></li>\n<li>%s", tag, item-html);
dec!(depth);
num-bullets = depth =>
- format(stream, "<li>%s</li>\n", item-html);
+ format(stream, "</li>\n<li>%s", item-html);
num-bullets > depth =>
- format(stream, "<%s>\n<li>%s</li>", tag, item-html);
+ format(stream, "\n<%s>\n<li>%s", tag, item-html);
inc!(depth);
end case;
end if;
end for;
for (i from 0 below depth)
- format(stream, "</%s>\n", tag);
+ format(stream, "</li>\n</%s>\n", tag);
end;
- write(stream, "</p>\n");
+// write(stream, "</p>\n");
list-end | markup.size
end method generate-list;
Modified: trunk/libraries/koala/sources/examples/wiki/wiki.dylan
==============================================================================
--- trunk/libraries/koala/sources/examples/wiki/wiki.dylan (original)
+++ trunk/libraries/koala/sources/examples/wiki/wiki.dylan Mon Nov 7
18:26:47 2005
@@ -531,10 +531,41 @@
| *content* | "");
end;
-define tag show-revisions in wiki
+define body tag show-revisions in wiki
+ (page :: <wiki-page>, response :: <response>, do-body :: <function>)
+ (first :: <string>, last :: <string>)
+ let revisions = make(<list>);
+ let last = as(<integer>,last);
+ local method find-revisions (dir-loc, file-name, file-type)
+ if (file-type == #"file")
+ let loc = merge-locators(as(<file-locator>, file-name), dir-loc);
+ let (base, version) = split-version(file-name);
+ let title = ignore-errors(base64-decode(base));
+ if (title & (title = *title*))
+ revisions := add!(revisions, version);
+ end;
+ end;
+ end;
+ do-directory(find-revisions, *database-directory*);
+ log-debug("%=", revisions);
+ let esize = 0;
+ if (size(revisions) <= last)
+ esize := size(revisions);
+ else
+ esize := last;
+ end;
+ revisions := copy-sequence (reverse!(sort(revisions)), start:
as(<integer>, first), end: esize);
+ for(rev in revisions)
+ dynamic-bind (*search-result* = rev)
+ do-body();
+ end;
+ end;
+end;
+
+define tag version in wiki
(page :: <wiki-page>, response :: <response>)
()
- // TODO
+ write(output-stream(response), integer-to-string(*search-result*));
end;
define tag username in wiki
Modified: trunk/libraries/koala/www/wiki/edit.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/edit.dsp (original)
+++ trunk/libraries/koala/www/wiki/edit.dsp Mon Nov 7 18:26:47 2005
@@ -1,37 +1,37 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<%dsp:taglib name="wiki"/>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
- <title>Dylan Wiki: <wiki:show-title/></title>
- <link rel="stylesheet" href="/wiki/wiki.css"/>
-</head>
-
-<body>
-
- <%dsp:include url="header.dsp"/>
-
- <div id="form-notes">
- <dsp:show-form-notes/>
- </div>
-
- <dsp:if test="logged-in?">
- <dsp:then>
- <form action="/wiki/edit.dsp" method="post">
- <div id="edit">
- Title: <input type="text" name="title" value="<wiki:show-title/>"/>
- <br/>
- <textarea name="page-content" cols="80" rows="20"><wiki:show-content
format="raw"/></textarea>
- <br/>
- <input type="submit" value="Save"/>
- </div>
- </form>
- </dsp:then>
- <dsp:else>
- Error: you're not allowed to edit <wiki:show-title/>.
- </dsp:else>
- </dsp:if>
-
- <%dsp:include url="footer.dsp"/>
-
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<%dsp:taglib name="wiki"/>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>Dylan Wiki: <wiki:show-title/></title>
+ <link rel="stylesheet" href="/wiki/wiki.css"/>
+</head>
+
+<body>
+
+ <%dsp:include url="header.dsp"/>
+
+ <div id="form-notes">
+ <dsp:show-form-notes/>
+ </div>
+
+ <dsp:if test="logged-in?">
+ <dsp:then>
+ <form action="/wiki/edit.dsp" method="post">
+ <div id="edit">
+ Title: <input type="text" name="title" value="<wiki:show-title/>"/>
+ <br/>
+ <textarea name="page-content" cols="80" rows="20"><wiki:show-content
format="raw"/></textarea>
+ <br/>
+ <input type="submit" value="Save"/>
+ </div>
+ </form>
+ </dsp:then>
+ <dsp:else>
+ Error: you're not allowed to edit <wiki:show-title/>.
+ </dsp:else>
+ </dsp:if>
+
+ <%dsp:include url="footer.dsp"/>
+
+</body>
+</html>
Modified: trunk/libraries/koala/www/wiki/footer.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/footer.dsp (original)
+++ trunk/libraries/koala/www/wiki/footer.dsp Mon Nov 7 18:26:47 2005
@@ -1,23 +1,29 @@
-<%dsp:taglib name="wiki"/>
-
-<!-- standard wiki footer -->
-<div id="footer">
- <a href="/wiki/recent.dsp">Recent Changes</a>
- <dsp:when test="editable?">
- <a href="/wiki/edit.dsp?title=<wiki:show-title v="true"
for-url="true"/>">Edit This Page</a>
- </dsp:when>
- <dsp:if test="logged-in?">
- <dsp:then>
- Logged in as <wiki:username/>.
- <a href="/wiki/logout.dsp">Logout</a>
- </dsp:then>
- <dsp:else>
- <a href="/wiki/login.dsp">Login</a>
- </dsp:else>
- </dsp:if>
-
- <wiki:show-revisions/>
- <p>
- <a href="http://validator.w3.org/check?uri=referer"><img
src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31"
width="88" /></a>
- </p>
-</div>
+<%dsp:taglib name="wiki"/>
+<!-- standard wiki footer -->
+<div id="footer">
+<br/>
+<div class="navbar">
+ <a href="/wiki/recent.dsp">Recent Changes</a>
+ <dsp:when test="editable?">
+ <a href="/wiki/edit.dsp?title=<wiki:show-title v="true"
for-url="true"/>">Edit This Page</a>
+ </dsp:when>
+
+ <dsp:if test="logged-in?">
+ <dsp:then>
+ Logged in as <wiki:username/>.
+ <a href="/wiki/logout.dsp">Logout</a>
+ </dsp:then>
+ <dsp:else>
+ <a href="/wiki/login.dsp">Login</a>
+ </dsp:else>
+ </dsp:if>
+ <span class="lastrevisions">
+ <wiki:show-revisions first="0" last="10">
+ <a class="revisionlink"
href="/wiki/view.dsp?title=<wiki:show-title/>&v=<wiki:version/>">[<wiki:version/>]</a>
+ </wiki:show-revisions>
+ </span>
+</div>
+<p>
+ <a href="http://validator.w3.org/check?uri=referer"><img
src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!" height="31"
width="88" /></a>
+</p>
+</div>
Modified: trunk/libraries/koala/www/wiki/header.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/header.dsp (original)
+++ trunk/libraries/koala/www/wiki/header.dsp Mon Nov 7 18:26:47 2005
@@ -1,22 +1,21 @@
-<%dsp:taglib name="wiki"/>
-
-
-<div id="header">
- <!-- standard wiki header -->
- <div id="logo"><p><a href="http://www.gwydiondylan.org/dylan-wiki.html"
class="logo">Dylan Wiki</a></p></div>
- <form action="/wiki/search.dsp" method="post">
- <div class="search">
- <input type="text" name="search-terms" size="20"/>
- <input type="submit" value="search"/>
- </div>
- </form>
- <div id="navbar">
- <a href="/wiki/view.dsp?title=Home">Home</a>
- <a href="/wiki/new.dsp">New Page</a>
- <a href="/wiki/view.dsp?title=Markup">Wiki Markup</a>
- <dsp:when test="editable?">
- <a href="/wiki/edit.dsp?title=<wiki:show-title v="true"
for-url="true"/>">Edit This Page</a>
- </dsp:when>
- </div>
-</div>
-<!-- begin user-generated page content -->
+<%dsp:taglib name="wiki"/>
+<!-- standard wiki header -->
+<div id="header">
+ <div id="logo"><a href="http://www.gwydiondylan.org/dylan-wiki.html"
class="logo">Dylan Wiki</a></div>
+ <form action="/wiki/search.dsp" method="post">
+ <div class="search">
+ <input type="text" name="search-terms" size="20"/>
+ <input type="submit" value="search"/>
+ </div>
+ </form>
+ <div class="navbar">
+ <a href="/wiki/view.dsp?title=Home">Home</a>
+ <a href="/wiki/new.dsp">New Page</a>
+ <a href="/wiki/view.dsp?title=Markup">Wiki Markup</a>
+ <dsp:when test="editable?">
+ <a href="/wiki/edit.dsp?title=<wiki:show-title v="true"
for-url="true"/>">Edit This Page</a>
+ </dsp:when>
+ </div>
+ <dsp:show-form-notes/>
+</div>
+<!-- begin user-generated page content -->
Modified: trunk/libraries/koala/www/wiki/recent.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/recent.dsp (original)
+++ trunk/libraries/koala/www/wiki/recent.dsp Mon Nov 7 18:26:47 2005
@@ -1,19 +1,19 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<%dsp:taglib name="wiki"/>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
- <title>Dylan Wiki: Recent Changes</title>
-</head>
-
-<body>
- <%dsp:include url="header.dsp"/>
- <div id="content">
-
- <dsp:show-form-notes/>
- <h3>Recent Changes</h3>
- Recent changes listings are not yet implemented.
-
- </div>
- <%dsp:include url="footer.dsp"/>
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<%dsp:taglib name="wiki"/>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>Dylan Wiki: Recent Changes</title>
+</head>
+
+<body>
+ <%dsp:include url="header.dsp"/>
+ <div id="content">
+
+ <dsp:show-form-notes/>
+ <h3>Recent Changes</h3>
+ Recent changes listings are not yet implemented.
+
+ </div>
+ <%dsp:include url="footer.dsp"/>
+</body>
+</html>
Modified: trunk/libraries/koala/www/wiki/search.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/search.dsp (original)
+++ trunk/libraries/koala/www/wiki/search.dsp Mon Nov 7 18:26:47 2005
@@ -1,35 +1,35 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<%dsp:taglib name="wiki"/>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
- <title>Dylan Wiki: Search Results</title>
- <link rel="stylesheet" href="/wiki/wiki.css"/>
-</head>
-
-<body>
- <%dsp:include url="header.dsp"/>
- <div id="content">
- <dsp:show-form-notes/>
- <h3>Search Results</h3>
- <dsp:table border="0" cellspacing="2" generator="gen-search-results">
- <dsp:no-rows>
- <dsp:cell>No matches found.</dsp:cell>
- </dsp:no-rows>
- <dsp:row>
- <dsp:cell nowrap width="1%"><dsp:row-number/>.</dsp:cell>
- <dsp:cell nowrap width="10%"><a
href="/wiki/view.dsp?title=<wiki:sr-title/>&v=<wiki:sr-version/>"><wiki:sr-title/>
[<wiki:sr-version/>]</a></dsp:cell>
- <dsp:cell nowrap width="89%">
- <wiki:do-versions>
- <a
href="/wiki/view.dsp?title=<wiki:sr-title/>&v=<wiki:sr-version/>">[<wiki:sr-version/>]</a>
- </wiki:do-versions>
- </dsp:cell>
- </dsp:row>
- <dsp:row>
- <dsp:cell> </dsp:cell>
- <dsp:cell colspan="2"><wiki:sr-summary/></dsp:cell>
- </dsp:row>
- </dsp:table>
- </div>
- <%dsp:include url="footer.dsp"/>
-</body>
-</html>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<%dsp:taglib name="wiki"/>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>Dylan Wiki: Search Results</title>
+ <link rel="stylesheet" href="/wiki/wiki.css"/>
+</head>
+
+<body>
+ <%dsp:include url="header.dsp"/>
+ <div id="content">
+ <dsp:show-form-notes/>
+ <h3>Search Results</h3>
+ <dsp:table border="0" cellspacing="2" generator="gen-search-results">
+ <dsp:no-rows>
+ <dsp:cell>No matches found.</dsp:cell>
+ </dsp:no-rows>
+ <dsp:row>
+ <dsp:cell nowrap="nowrap" width="1%"><dsp:row-number/>.</dsp:cell>
+ <dsp:cell nowrap="nowrap" width="10%"><a
href="/wiki/view.dsp?title=<wiki:sr-title/>&v=<wiki:sr-version/>"><wiki:sr-title/>
[<wiki:sr-version/>]</a></dsp:cell>
+ <dsp:cell width="89%">
+ <wiki:do-versions>
+ <a
href="/wiki/view.dsp?title=<wiki:sr-title/>&v=<wiki:sr-version/>">[<wiki:sr-version/>]</a>
+ </wiki:do-versions>
+ </dsp:cell>
+ </dsp:row>
+ <dsp:row>
+ <dsp:cell> </dsp:cell>
+ <dsp:cell colspan="2"><wiki:sr-summary/></dsp:cell>
+ </dsp:row>
+ </dsp:table>
+ </div>
+ <%dsp:include url="footer.dsp"/>
+</body>
+</html>
Modified: trunk/libraries/koala/www/wiki/view.dsp
==============================================================================
--- trunk/libraries/koala/www/wiki/view.dsp (original)
+++ trunk/libraries/koala/www/wiki/view.dsp Mon Nov 7 18:26:47 2005
@@ -1,17 +1,18 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<%dsp:taglib name="wiki"/>
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
- <title>Dylan Wiki: <wiki:show-title/></title>
- <link rel="stylesheet" href="/wiki/wiki.css"/>
-</head>
-
-<body>
- <%dsp:include url="header.dsp"/>
- <div id="content">
- <h1><wiki:show-title v="true" for-url="false"/></h1>
- <wiki:show-content format="html"/>
- </div>
- <%dsp:include url="footer.dsp"/>
-</body>
-</html>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<%dsp:taglib name="wiki"/>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>Dylan Wiki: <wiki:show-title/></title>
+ <link rel="stylesheet" href="/wiki/wiki.css"/>
+</head>
+
+<body>
+ <%dsp:include url="header.dsp"/>
+ <div id="content">
+ <h1><wiki:show-title v="true" for-url="false"/></h1>
+ <wiki:show-content format="html"/>
+ </div>
+ <%dsp:include url="footer.dsp"/>
+</body>
+</html>
Modified: trunk/libraries/koala/www/wiki/wiki.css
==============================================================================
--- trunk/libraries/koala/www/wiki/wiki.css (original)
+++ trunk/libraries/koala/www/wiki/wiki.css Mon Nov 7 18:26:47 2005
@@ -1,126 +1,154 @@
-/*
- * Much of this file was shamelessly lifted from cliki.net
- */
-
-body
-{
- background: white;
- color: black;
- font-family: serif;
- margin: 0; padding: 0.5em;
-}
-
-h1, h2, h3, h4, h5
-{
- color: #999;
- font-family: sans-serif;
-}
-
-hr { border: 0; background: black; height: 1px }
-a.internal { color: #0077bb ; }
-a:visited.internal { color: #004488; }
-a.hyperspec { font-weight: bold; }
-
-a[href]:hover { background: #ff9 }
-
-table { border-collapse: collapse; border: 1px solid #aaa; }
-th
-{
- font-family: sans-serif;
- background: royalblue;
- color: white;
- text-transform: lowercase
-}
-th, td { padding: 0.2em 0.3em }
-
-ul li { list-style-type: square }
-
-pre
-{
- background: #cdf;
- border: 1px solid #679;
- color: #235;
- font-size: 90%;
- padding: 0.3em;
-}
-
-/*
- * header
- */
-#header
-{
- background: steelblue;
- border: 1px solid black;
- color: white;
- margin: 0; padding: 0.5em 0.5em 1.5em;
-}
-#header a { color: white; font-weight: normal; text-decoration: none; padding:
0 }
-#header a:hover { background: transparent; color: white }
-#header a:hover.logo { text-decoration: none }
-#header a.logo { font-family: serif; font-weight: bold; font-size: 150%;
border-width: 0px }
-#header a.logo .sub
-{
- color: #E5794B;
- font-size: 90%;
- position: relative; top: -0.3em;
-}
-
-.search
-{
- float: right;
- text-align: right;
- padding: 1em 0 0;
-}
-.search input { border: 1px solid black }
-
-.login
-{
- padding: 1em 0 0;
-}
-.login input { border: 1px solid black }
-
-#navbar { margin: 1em 0 -0.5em 0 }
-#navbar a
-{
- border: 1px solid #E5794B;
- border-width: 1px 0 1px 0;
- font-size: 90%;
- margin: 0 1em; padding: 0 0.2em
-}
-#navbar a:hover
-{
- border: 1px solid white;
- border-width: 1px 0 1px 0;
-}
-
-.lastedit
-{
- color: #E5794B;
- float: right;
- text-align: right;
- text-transform: lowercase;
- margin: 0; padding: 0
-}
-
-/*
- * content
- */
-#content
-{
- clear: both;
- margin: 0; padding: 0 1.5em;
-}
-
-/*
- * footer
- */
-#footer
-{
- background: steelblue;
- color: white;
- border: 1px solid black;
- font-family: serif;
- margin-top: 0.5em; padding: 0.01em;
-}
-#footer a[href] { color: #E5794B; text-decoration: none }
-#footer a[href]:hover { background: transparent; color: #E5794B }
+/*
+ * Much of this file was shamelessly lifted from cliki.net
+ */
+
+body
+{
+ background: white;
+ color: black;
+ font-family: serif;
+ margin: 0; padding: 0.5em;
+}
+
+h1, h2, h3, h4, h5
+{
+ color: #999;
+ font-family: sans-serif;
+}
+
+hr { border: 0; background: black; height: 1px }
+a.internal { color: #0077bb ; }
+a:visited.internal { color: #004488; }
+a.hyperspec { font-weight: bold; }
+
+a[href]:hover { background: #ff9 }
+
+table { border-collapse: collapse; border: 1px solid #aaa; }
+th
+{
+ font-family: sans-serif;
+ background: royalblue;
+ color: white;
+ text-transform: lowercase
+}
+th, td { padding: 0.2em 0.3em }
+
+ul li { list-style-type: square }
+
+pre
+{
+ background: #cdf;
+ border: 1px solid #679;
+ color: #235;
+ font-size: 90%;
+ padding: 0.3em;
+}
+
+/*
+ * header
+ */
+#header
+{
+ background: steelblue;
+ color: white;
+ border: 1px solid black;
+ margin: 0; padding: 0.5em 0.5em 1.5em;
+}
+#header a.logo {
+ font-family: serif;
+ font-weight: bold;
+ font-size: 150%;
+ border-width: 0px;
+ color: white;
+}
+#header a.logo:hover {
+ background: transparent;
+}
+
+.search
+{
+ float: right;
+ text-align: right;
+ padding: 1em 0 0;
+}
+.search input { border: 1px solid black }
+
+.login
+{
+ padding: 1em 0 0;
+}
+.login input { border: 1px solid black }
+
+.navbar {
+ margin: 1em 0 -0.5em 0
+ color: white;
+ font-weight: normal;
+ text-decoration: none;
+ padding: 0;
+}
+.navbar a
+{
+ color: white;
+ border: 1px solid #E5794B;
+ border-width: 1px 0 1px 0;
+ font-size: 90%;
+ margin: 0 1em;
+ padding: 0 0.2em;
+}
+.navbar a:hover
+{
+ border: 1px solid white;
+ border-width: 1px 0 1px 0;
+ background: transparent;
+ color: white;
+ text-decoration: none;
+}
+
+.lastedit
+{
+ color: #E5794B;
+ float: right;
+ text-align: right;
+ text-transform: lowercase;
+ margin: 0; padding: 0
+}
+
+/*
+ * content
+ */
+#content
+{
+ clear: both;
+ margin: 0; padding: 0 1.5em;
+}
+
+#content h1 {
+ color: #E5794B;
+}
+
+/*
+ * footer
+ */
+#footer
+{
+ background: steelblue;
+ color: white;
+ border: 1px solid black;
+ font-family: serif;
+ margin-top: 0.5em; padding: 0.01em;
+}
+
+span.lastrevisions {
+ font-size: small;
+ float: right;
+ margin-right: 1em;
+}
+
+a.revisionlink {
+ border: none;
+ color: black;
+ margin: 0.2em 0;
+ padding: 0 0;
+ text-decoration: default;
+}
+
--
Gd-chatter mailing list
Gd-chatter@xxxxxxxxxxxxxxxx
https://gauss.gwydiondylan.org/mailman/listinfo/gd-chatter
|