Move back to m4, but with Jam this time.

This commit is contained in:
Neale Pickett 2009-11-10 23:06:12 -06:00
parent 25f7d7d5c6
commit 0376f48a52
131 changed files with 679 additions and 839 deletions

5
.gitignore vendored
View File

@ -1,2 +1,3 @@
/.ikiwiki
/recentchanges
*~
*.html

View File

@ -1,13 +0,0 @@
[[meta title="Nintendo DS Links"]]
* [NDS Homebrew](http://www.ndshb.com/)
----
* [DS Frotz](http://gugusse.central.free.fr/papafuji/DSFrotz.html) for playing Infocom ZIP files
* [Rick Dangerous](http://gpf.dcemu.co.uk/xrickds.shtml)
* [robotfindskitten](http://gpf.dcemu.co.uk/robotfindskitten.shtml)
* [ScummVM](http://scummvm.drunkencoders.com/)
* [Python](http://www.develer.com/~lmancini/dspython/)
* [MythTV Remote](http://grizzly.thewaffleiron.net/mythremote/)
* [PAlib](http://www.palib.info) for writing my own stuff

View File

@ -1,8 +0,0 @@
[[meta title="House Todo"]]
* Front door
* Paint the house
* Take up carpet in living room
* Wood stove
* Fix upstairs attic doors
* Insulate floors

8
Jamfile Normal file
View File

@ -0,0 +1,8 @@
SubDir TOP ;
Webify index.mdwn ;
SubInclude TOP papers ;
SubInclude TOP poems ;
SubInclude TOP src ;
SubInclude TOP toys ;

41
Jamrules Normal file
View File

@ -0,0 +1,41 @@
MDWNTOHTML = $(TOP)/mdwntohtml ;
DIRLIST = $(TOP)/dirlist ;
TEMPLATE = $(TOP)/template.xml ;
rule Copy {
local tgt = $(1:D=$(SUBDIR)) ;
File $(tgt) : $(2) ;
Clean clean : $(tgt) ;
}
rule AutoIndex {
local tgt = $(1:D=$(SUBDIR)) ;
local src = $(3:D=$(SUBDIR)) ;
local head = $(2:D=$(SUBDIR)) ;
HEAD on $(tgt) = $(head) ;
Depends $(tgt) : $(src) $(head) $(DIRLIST) ;
Clean clean : $(tgt) ;
DirList $(tgt) : $(src) ;
}
rule Webify {
local html ;
for i in $(1:D=$(SUBDIR)) {
html = $(i:S=.html) ;
Depends $(html) : $(i) $(TEMPLATE) $(MDWNTOHTML) ;
Depends all : $(html) ;
Clean clean : $(html) ;
MdwnToHtml $(html) : $(i) ;
}
}
actions MdwnToHtml {
$(MDWNTOHTML) $(TEMPLATE) < $(2) > $(1)
}
actions DirList {
$(DIRLIST) $(HEAD) $(2) > $(1)
}

View File

@ -1,2 +0,0 @@
all:
ikiwiki --setup ~/lib/wiki/ikiwiki.setup --wrappers

View File

@ -1,9 +0,0 @@
Amy and I got this crazy notion that we'd keep bees. On this page you can laugh at our follies.
New Mexico Bee Stuff
--------------------
* I wish we had known about [Zia Queen Bees](http://ziaqueenbees.com/) before we ordered our package.
* The [Sangre De Cristo Beekeepers List](http://pets.groups.yahoo.com/group/SDCBeekeepers/) is full of helpful people.
[[!inline pages="link(bees)" show="0" reverse="yes" postform="no" actions="yes" description="Neale's Bees" author="Neale Pickett"]]

View File

@ -1,62 +0,0 @@
[[meta title="Bike Todo"]]
General
=======
* Spare shifter cables
* Spare brake cables
* Spare shifter housing
* Spare brake housing
* Spare housing end caps
* Spare cable crimp-on end thingies
* A couple extra patch kits and tire levers for classes
Amy's Rodriguez
===============
* New helmet
Doosoo
======
* Another rear light
* Spare tube
* Spare tire
Neale's Rodriguez
=================
* Clean off remaining bug guts
* Maybe put on the Biopace chainrings
ALAN
============
* Put components back on (derailers, shifters, handlebars)
* Brake and shifter cables
* Needs tires and tubes
* Needs new brake hoods
* Bar tape (yellow, maybe?)
* May as well buy a couple spare 6sp freewheels while I can still get them. Bikeman sells a 6sp Mega-range freewheel.
Bike Friday
===========
* Spare tube
* Spare tire
* Multi-tool
* Tire levers
* Patch kit
* Wedge pack
* Normal brake levers
* Move bar-end shifters from Fuji
* Bar tape (definitely violet)
* Might want to get a couple 7sp freewheels (also for tandem) before they become endangered. Mega-range FTW.
Tandem
======
* Put the damned fenders on
* Get some 7sp freewheels (also used on Bike Friday) before they become endangered.

View File

@ -1,4 +0,0 @@
[[!meta title="Neale's Blog"]]
[[!meta author="Neale Pickett" authorurl="http://woozle.org/~neale/"]]
[[!inline pages="blog/* and !blog/*/*" show="10" postform="no" actions="yes" description="Neale's Blog" author="Neale Pickett"]]
[[older_entries|BlogArchive]]

View File

@ -1,2 +0,0 @@
[[!meta title="All blog entries"]]
[[!inline pages="blog/* and !blog/*/*" rootpage="blog" feeds="no" archive="yes"]]

View File

@ -1,10 +0,0 @@
DatedBlog
---------
[[!datedblog pages="blog/* and !blog/*/*" rootpage="blog" archive="yes" show="2"]]
Inline
--------
[[!inline pages="blog/* and !blog/*/*" rootpage="blog" archive="yes" show="2"]]

View File

@ -1,25 +1,19 @@
/*
* Global
*/
html {
color:#061208;
background:#bfb8a6;
body {
max-width: 40em;
background-color: #eee;
}
body {
background:#e1d8c9;
border: solid black 1px;
font-family: serif;
color: #000;
margin: 1em auto;
padding: 2px;
min-width: 20em;
max-width: 50em;
p, li, dd {
text-align: justify;
}
h1:first-child {
background-color: #cc8;
margin-top: 0;
}
h1, h2, h3, h4, h5, h6 {
font-family: "MgOpen Moderna", sans-serif;
font-family: "URW Gothic L", sans-serif;
color: #c17f6f;
}
@ -35,201 +29,24 @@ a:hover {
}
pre {
background: silver;
background: #ccc;
margin: 1em 2em;
padding: 1em;
border: solid black 1px;
}
.notice {
background: yellow;
}
.figure {
float: right;
text-align: center;
background-color: #eeeeee;
border: solid gray 2px;
padding: 4px;
margin: 5px 15px;
}
.left {
float: left;
}
.right {
float: right;
}
/*
* Header elements
*/
h1#head {
background:#5c5f80;
border: 1px solid black;
text-align: left;
padding: 0em 0px 1em 10px;
margin: 0em;
font: normal 2em "URW Gothic L" sans-serif;
letter-spacing: 0.33em;
}
#head a {
color: #ffe;
}
#head img {
float: right;
border: 2px solid black;
margin: 0px 30px 5px 0px;
}
/*
* Navigation menu
*
* IE6 doesn't understand CSS selectors. So we use the > selector to
* specify stuff IE6 shouldn't see. This has the effect of permanently
* hiding the pop-up menus.
*/
#nav {
position: absolute;
top: 4em;
text-align: left;
padding: 0em 1em;
margin: 0px auto;
padding: 0;
text-align: center;
}
#nav li {
display: inline;
}
#nav li a {
background: #bdcde4;
color: #5c5f80;
padding: 1px 10px;
}
#nav li a:hover {
color: yellow;
}
#nav li ul {
background:#bdcde4;
display: none;
}
#nav > li ul li {
display: list-item;
padding: 0px;
}
#nav > li:hover {
position: relative;
}
#nav > li:hover ul {
color: white;
text-align: left;
display: block;
position: absolute;
top: 1.2em;
left: 0px;
margin: 0px 0px;
padding: 5px 5px;
min-width: 10em;
list-style-type: square;
}
#nav > li ul li {
display: list-item;
margin-left: 1em;
}
#nav ul.this {
color: #555;
}
/*
* Main body
*/
#body {
margin: 10px;
#nav li + li:before {
content: " | ";
}
address {
background:#5c5f80;
color: #bdcde4;
border: 1px solid black;
margin: 0;
clear: both;
padding: 0.5em;
font-size: 80%;
}
address a {
color: #ffe;
}
/*
* IkiWiki crap
*/
.actions {
font-size: 80%;
margin: 0;
padding: 1px 5px;
text-align: right;
}
.actions:hover ul {
visibility: visible;
}
.actions ul {
margin: 0;
visibility: hidden;
}
.actions li {
display: inline;
padding: 2px;
margin: 0;
}
.inlinepage {
border: solid black 1px;
margin: 1em 2em;
background: #eee;
padding: 0em 1em;
}
.inlinepage .header a {
font-size: 150%;
}
/* Orange feed button. */
.feedbutton {
background: #f60;
color: white;
border: outset black 1px;
padding: 0px 0.5em 0px 0.5em;
font: bold 8pt sans-serif;
}
.feedbutton:hover {
background: #f90;
}
.pagedate {
color: #666;
font-size: 75%;
}
table.img {
float: right;
background-color: #eef;
border: solid #ccd;
border-width: 1px 1px 0px 1px;
}
table.img caption {
font-size: 80%;
caption-side: bottom;
text-align: center;
background-color: #eef;
border: solid #ccd;
border-width: 0px 1px 1px 1px;
font-size: small;
}

13
dirlist Executable file
View File

@ -0,0 +1,13 @@
#! /bin/sh
cat $1; shift
echo '<dl>'
for i in "$@"; do
size=$(du --si $i | cut -f1)
desc=$(sed -n '1,3 s/.*\(Description: \|Title: \|-- \)//p' $i)
fn=$(basename $i)
echo " <dt><a href=\"$fn\">$fn</a> ($size)</dt>"
echo " <dd>$desc</dd>"
done
echo '</dl>'

View File

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1,12 +1,8 @@
[[!meta title="Neale Pickett Page"]]
Title: Neale Pickett Page
<img src="face.png" style="float: left; padding: 0.5em" />
One day a pirate walks into a bar with a steering wheel attached to his
crotch. So the bartender says to him, "You know you have a steering
wheel attached to your crotch?"
And the pirate says, "Aaar, it's driving me nuts!"
----
* [Neale's wish list](/wishlists/neale/)
* [Pickett Genealogy](geneweb.cgi?b=pickett)

16
mdwntohtml Executable file
View File

@ -0,0 +1,16 @@
#! /bin/sh
while IFS=: read field value; do
case "$field" in
"")
break
;;
Title)
# echo strips leading and trailing whitespace
title=$(echo $value)
break
;;
esac
done
cat | markdown | m4 -DTITLE="$title" $1 -

View File

@ -1,34 +0,0 @@
![Bike Measurements](bike-measure.png)
Amy's Stellar
-------------
a. 67.5cm
b. 95cm
c. 170mm
d. 57.5cm
e. N/A
f. 93cm
Neale's Touring
---------------
a. 82cm
b. 108cm
c. 170mm
d. 64cm
e. 42cm
f. 107cm
Bike Friday
-----------
a. 82cm
b. 95cm
c. 175mm
d. 75cm
e. 42cm
f. 105cm
effective top-tube length: 57cm

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

View File

@ -1,7 +0,0 @@
[[!meta title="Papers"]]
These are papers I have written. Most of them were written to explain a
concept to someone on woozle. Hopefully other people will find them
useful, too.
[[!map pages="papers/*" show="title"]]

3
papers/Jamfile Normal file
View File

@ -0,0 +1,3 @@
SubDir TOP papers ;
Webify index.mdwn reply-to-still-harmful.mdwn sockets.mdwn DNS.mdwn html-tutorial.mdwn digimatrix.mdwn ;

View File

@ -1,10 +1,8 @@
[[!meta title="Debian on Digimatrix"]]
Title: Debian on Digimatrix
<p class="notice">
Caution: this is what I was running in 2004. Nowadays we just use
MythTV. Some of this stuff (like the X configuration) still applies,
though, which is why I'm leaving the page up.
</p>
Caution: this is what I was running in 2004. Nowadays we just use
MythTV. Some of this stuff (like the X configuration) still applies,
though, which is why I'm leaving the page up.
Introduction
------------
@ -77,7 +75,7 @@ I installed the following additional packages to help me administer the
machine:
<pre>
# aptitude install less zile screen ssh strace sudo ntp ntpdate
# apt-get install less zile screen ssh strace sudo ntp ntpdate
</pre>
@ -87,8 +85,8 @@ Web server
Waldorf needed to run a web server to host photo albums.
<pre>
# aptitude install mathopd stunnel4 php4-cgi rssh
# aptitude install netpbm jhead exiftran libjpeg-mmx-progs libjpeg-progs
# apt-get install mathopd stunnel4 php4-cgi rssh
# apt-get install netpbm jhead exiftran libjpeg-mmx-progs libjpeg-progs
</pre>
I won't detail my web server configuration here, since that's unique to me.
@ -97,7 +95,7 @@ X
----
<pre>
# aptitude install x-window-system
# apt-get install x-window-system
</pre>
To my surprise this brought in x.org. I run an HDTV over DVI, so to get
@ -138,7 +136,7 @@ to want to do that very often. I may work on a web interface to XML-TV
listings later on.
<pre>
# aptitude install kde kdm
# apt-get install kde kdm
</pre>
I don't know if this is typical or not, but Debian's KDE went on without
@ -148,7 +146,7 @@ asking me a single question. Kudos to the packagers.
h2. Sound
<pre>
# aptitude install alsa-base alsa-utils
# apt-get install alsa-base alsa-utils
</pre>
We use the Digimatrix's S/PDIF output (isn't it lame that it comes out
@ -206,7 +204,7 @@ allows you to type in numbers for various actions (play from playlist,
play DVD, etc.).
<pre>
# aptitude install kaffeine
# apt-get install kaffeine
</pre>
@ -237,7 +235,7 @@ In any case, turning on DMA will allows your DVD drive to keep up with
the data on the DVD.
<pre>
# aptitude install hdparm
# apt-get install hdparm
</pre>
To turn on DMA, I put the following at the end of `/etc/hdparm.conf`.
@ -288,9 +286,7 @@ interface to various IR recievers and remote controls, and supplies
events to whatever wants to listen to it. KDE has a module to listen to
it, so I figured I'd give it a go.
<pre>
# aptitude install kdelirc
</pre>
# apt-get install kdelirc
Unfortunately, lirc 0.7 (the version in debian testing and unstable)
does not compile on Linux 2.6.12 and newer, so I had to install from

View File

@ -1,110 +0,0 @@
[[!meta title="The 3-minute HTML tutorial"]]
<p>As computer formats go, HTML is really easy and logical. It's all just
text that you can edit with any basic text editor, like gedit nder
Gnome, or notepad in Windows. Let's start out with an example. Say you
have a sentence, and you want one word in it to be bold. That sentence
would look like this:</p>
<pre>Guess which word is &lt;b&gt;bold&lt;/b&gt;?</pre>
<p>As should be obvious, the bold word in that sentence is "word". Just
kidding, it's the word "bold", in between <code>&lt;b&gt;</code> and <code>&lt;/b&gt;</code> tags.
The sentence will show up like so:</p>
<blockquote>Guess which word is <b>bold</b>?</blockquote>
<p>You now know HTML, the rest is just learning the names of the tags.</p>
<hr />
<p>Seriously! Here's a slightly larger example:</p>
<pre>&lt;title&gt;My first web page&lt;/title&gt;
&lt;h1&gt;Welcome&lt;/h1&gt;
&lt;p&gt;
Welcome to my &lt;b&gt;first ever&lt;/b&gt; web page!
It features:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A title!&lt;/li&gt;
&lt;li&gt;A header!&lt;/li&gt;
&lt;li&gt;A paragraph!&lt;/li&gt;
&lt;li&gt;An unordered list!&lt;/li&gt;
&lt;/ul&gt;
</pre>
<p>So what you end up with in the end is something like this:</p>
<blockquote>
<div style="background: #ddd; border: solid black 3px;">
<div style="background: #00A; color: white; width: 100%;">
My first web page - WoozWeb Browser
</div>
<h1 style="text-align: left;">Welcome</h1>
<p>
Welcome to my <b>first ever</b> web page!
It features:
</p>
<ul>
<li>A title!</li>
<li>A header!</li>
<li>A paragraph!</li>
<li>An unordered list!</li>
</ul>
</div>
</blockquote>
<p>The part inside the <code>&lt;title&gt;</code> and the <code>&lt;/title&gt;</code> is the title of your
page; that's what goes in the window frame at the very top of your web
browser window, above the menus and everything else.</p>
<p>The stuff in between <code>&lt;h1&gt;</code> and <code>&lt;/h1&gt;</code> is a "level-1 header". That
means that it's the biggest header you can get. There are also h2, h3,
h4, h5, and h6 headers, with h6 being the smallest.</p>
<p>The stuff inside <code>&lt;p&gt;</code> and <code>&lt;/p&gt;</code> is a paragraph. Since HTML treats
spaces the same as line breaks, you need to use paragraph tags around
each paragraph. Inside the example paragraph is our old friend bold.</p>
<p>Then, there's <code>&lt;ul&gt;</code> and <code>&lt;/ul&gt;</code>, an "unordered list" (as opposed to an
ordered list, which would have a number by each item). Inside the list
are four "list items", enclosed in <code>&lt;li&gt;</code> and <code>&lt;/li&gt;</code>.</p>
<hr/>
<p>Now check this action out:</p>
<pre>&lt;p&gt;
This is an
&lt;img src="http://www.woozle.org/images/star.png"
alt="star"&gt;&lt;/img&gt; image, and
&lt;a href="http://woozle.org/"&gt;this&lt;/a&gt; is a link.
&lt;/p&gt;
</pre>
<p>Which will show up like this:</p>
<blockquote>
<p>This is an <img src="http://www.woozle.org/images/star.png" alt="star"> image, and <a href="http://woozle.org/">this</a> is a link.
</blockquote>
<p>The example above has an image tag, with two "attributes", "src" and
"alt". The "src" attribute in an <code>&lt;img&gt;</code> tag gives the
URL to a picture, and the "alt" attribute is the text that's displayed
to people who can't see images (blind users, folks without graphics
capabilities, or if there's a problem on your web server). The "alt"
attribue is required, but you can set it to <code>""</code> if there's
nothing appropriate for alternate text.</p>
<p>Lastly, the infamous link, enclosed inside of <code>&lt;a&gt;</code>
and <code>&lt;/a&gt;</code>. The "href" attribute gives the URL that
the browser will go to if you click the link.</p>
<hr/>
<p>That's it for basic HTML, and it should be enough to get you started
writing your own pages. So go write something! The best way to learn
it is to try stuff out and see what it does. For more neat HTML tags,
check out <a href="http://www.cs.tut.fi/~jkorpela/HTML3.2/">HTML 3.2 by
Examples</a>, which is what I used to learn HTML.</p>

107
papers/html-tutorial.mdwn Normal file
View File

@ -0,0 +1,107 @@
Title: The 3-minute HTML tutorial
As computer formats go, HTML are really easy and logical. It's all just
text that you can edit with any basic text editor, like gedit nder
Gnome, or notepad in Windows. Let's start out with an example. Say you
have a sentence, and you want one word in it to be bold. That sentence
would look like this:
Guess which word is <b>bold</b>?
As should be obvious, the bold word in that sentence is "bold", in
between `<b>` and `</b>` tags. The sentence will show up like so:
> Guess which word is <b>bold</b>?
You now know HTML, the rest is just learning the names of the tags.
---
Here's a slightly larger example:
<title>My first web page</title>
<h1>Welcome</h1>
<p>
Welcome to my <b>first ever</b> web page!
It features:
</p>
<ul>
<li>A title!</li>
<li>A header!</li>
<li>A paragraph!</li>
<li>An unordered list!</li>
</ul>
What you end up with in the end is something like this:
> <div style="background: #ddd; border: solid black 3px;">
> <div style="background: #00A; color: white; width: 100%;">
> My first web page - WoozWeb Browser
> </div>
> <h1 style="text-align: left;">Welcome</h1>
> <p>
> Welcome to my <b>first ever</b> web page!
> It features:
> </p>
> <ul>
> <li>A title!</li>
> <li>A header!</li>
> <li>A paragraph!</li>
> <li>An unordered list!</li>
> </ul>
> </div>
The part inside the `<title>` and the `</title>` is the title of your
page: that's what goes in the window frame at the very top of your web
browser window, above the menus and everything else.
The stuff in between `<h1>` and `</h1>` is a "level-1 header". That
means that it's the biggest header you can get. There are also h2, h3,
h4, h5, and h6 headers, with h6 being the smallest.
The stuff inside `<p>` and `</p>` is a paragraph. Since HTML treats
spaces the same as line breaks, you need to use paragraph tags around
each paragraph. Inside the example paragraph is our old friend bold.
Then, there's `<ul>` and `</ul>`, an
"unordered list" (as opposed to an ordered list, which would have a
number by each item). Inside the list are four "list items", enclosed
in `<li>` and `</li>`.
----
Now, for inline images:
<p>
This is an
<img src="http://www.woozle.org/favicon.png"
alt="woozle head"></img> image, and
<a href="http://woozle.org/">this</a> is a link.
</p>
Which will show up like this:
> <p>This is an <img src="http://www.woozle.org/favicon.png"
> alt="woozle head" /> image, and
> <a href="http://woozle.org/">this</a> is a link.
The example above has an image tag, with two "attributes", "src" and
"alt". The "src" attribute in an `<img>` tag gives the URL to a
picture, and the "alt" attribute is the text that's displayed to people
who can't see images (blind users, folks without graphics capabilities,
or if there's a problem on your web server). The "alt" attribue is
required, but you can set it to `""` if there's nothing appropriate for
alternate text.
Lastly, the link, enclosed inside of `<a>` and `</a>`. The "href"
attribute gives the URL that the browser will go to if you click the
link.
---
That's it for basic HTML, and it should be enough to get you started
writing your own pages. So go write something! The best way to learn
it is to try stuff out and see what it does. For more neat HTML tags,
check out [HTML 3.2 by
Examples](http://www.cs.tut.fi/~jkorpela/HTML3.2/), which is what I used
to learn HTML.

17
papers/index.mdwn Normal file
View File

@ -0,0 +1,17 @@
Title: Papers
These are papers I have written. Most of them were written to explain a
concept to someone on woozle. Hopefully other people will find them
useful, too.
* [Reply-To Munging Still Considered Harmful](reply-to-still-harmful.html)
* [Introduction to TCP Sockets](sockets.html)
* [3-Minute HTML Tutorial](html-tutorial.html)
* [How DNS Works](DNS.html)
---
The rest of these are old, and probably irrelevant, but I'm keeping them
here on the off chance that someone still needs the information.
* [Debian on the Digimatrix (2004)](digimatrix.html)

View File

@ -1,4 +1,4 @@
[[!meta title="&ldquo;Reply-To&rdquo; Munging Still Considered Harmful. Really."]]
Title: &ldquo;Reply-To&rdquo; Munging Still Considered Harmful. Really.
An Earnest Plea to People Still Having This Debate
--------------------------------------------------

View File

@ -1,4 +1,4 @@
[[!meta title="Introduction To TCP Sockets"]]
Title: Introduction To TCP Sockets
Client Sockets
--------------

View File

@ -1,7 +0,0 @@
[[!meta title="Poems"]]
If wishes were horses
And poets were kings
I guess I'd still have my day job.
[[!map pages="poems/*" show="title"]]

4
poems/Jamfile Normal file
View File

@ -0,0 +1,4 @@
SubDir TOP poems ;
Webify index.mdwn ducks.mdwn goldfish.mdwn lake.mdwn mice.mdwn
optimized.mdwn poopy.mdwn sap.mdwn snark.mdwn ;

View File

@ -1,4 +1,4 @@
[[!meta title="Ode to the Bagel Girl"]]
Title: Ode to the Bagel Girl
We stand waiting for the 253 to Redmond
The fog sits lightly on our tongues
@ -22,4 +22,3 @@ I wrote this on the bus home. There was a young girl with a beautiful
face sitting at the front of the bus, and I kept looking at her before I
started to write. I was laughing so hard as I wrote this, that she
started to get pretty self-conscious.

View File

@ -1,4 +1,4 @@
[[!meta title="Ducks"]]
Title: Ducks
If ducks ran the country, I'm sure you'll agree
Things sure would be different for you and for me!

View File

@ -1,4 +1,4 @@
[[!meta title="My Goldfish Wish"]]
Title: My Goldfish Wish
I wish a goldfish were my pet!
I'd make sure he was warm and wet.

14
poems/index.mdwn Normal file
View File

@ -0,0 +1,14 @@
Title: Poems
If wishes were horses
And poets were kings
I guess I'd still have my day job.
* [Ducks](ducks.html)
* [My Goldfish Wish](goldfish.html)
* [Poem For A Moonlit Lake With City Lights Reflecting](lake.html)
* [Ode to Mice](mice.html)
* [Optimized](optimized.html)
* [The Poopy Song](poopy.html)
* [Sap](sap.html)
* [Snark Hair](snark.html)

View File

@ -1,4 +1,4 @@
[[!meta title="Poem For A Moonlit Lake With City Lights Reflecting"]]
Title: Poem For A Moonlit Lake With City Lights Reflecting
It,
is getting,

View File

@ -1,4 +1,4 @@
[[!meta title="Ode to Mice"]]
Title: Ode to Mice
Leave them mice alone
Let them wander through your home

View File

@ -1,9 +1,9 @@
[[!meta title="Optimized"]]
Title: Optimized
This poem made for Wooz-Web 8
So please download today.
On my computer, it looks great!
On yours, it might turn gray.
On my computer, it sounds great!
On yours, it might not play.
It uses ActivePoetry
(By WoozleSoft, v4.3)

BIN
poems/poopy-music.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 744 B

View File

@ -1,4 +1,4 @@
[[!meta title="The Poopy Song"]]
Title: The Poopy Song
![G|:ccGG cc2c|ddAA d3c|BBBB BB2A|GGAB c3G:|](poopy-music.png)

View File

@ -1,4 +1,4 @@
[[!meta title="Sap"]]
Title: Sap
I love you dear, so very much
That I get sappy when we touch

View File

@ -1,4 +1,4 @@
[[!meta title="Snark Hair"]]
Title: Snark Hair
Has anyone ever turned into a snark?
In the sun? In the rain? When it's light? When it's dark?

View File

@ -1,4 +1,4 @@
[[!meta title="Winders"]]
Title: Winders
If I should ever find myself
A-washin' dirty winders,

View File

@ -1,3 +1,13 @@
#head, #nav, .actions {
#nav {
display: none;
}
p {
text-align: justify;
}
pre {
margin: 1em 2em;
padding: 1em;
border: solid black 1px;
}

View File

@ -1,33 +0,0 @@
This page is used to control what smileys are supported by the wiki.
Just write the text of a smiley to display it.
* \\:) [[smileys/smile.png]]
* \\:-) [[smileys/smile.png]]
* \\:> [[smileys/smile.png]]
* \\:D [[smileys/smile-big.png]]
* \\:-D [[smileys/smile-big.png]]
* \\;) [[smileys/wink.png]]
* \\;-) [[smileys/wink.png]]
* \\:\ [[smileys/thinking.png]]
* \\:-\ [[smileys/thinking.png]]
* \\:/ [[smileys/thinking.png]]
* \\:-/ [[smileys/thinking.png]]
* \\:| [[smileys/neutral.png]]
* \\:-| [[smileys/neutral.png]]
* \\:( [[smileys/sad.png]]
* \\:-( [[smileys/sad.png]]
* \\:< [[smileys/sad.png]]
* \\:-? [[smileys/tongue.png]]
* \\:-P [[smileys/tongue.png]]
* \\:o [[smileys/shock.png]]
----
To change the supported smileys, just edit the lists on this page.
Note that the format is important; each list item should start with the
text that is turned into the smiley, escaped so that users can see what
produces it, followed by a [[ikiwiki/WikiLink]] to the image to display.
/!\ Bear in mind that the link to the image needs to be written in a way that
will work if it's copied to other pages on the wiki. So be sure to include the
smileys directory in the path to the file.

View File

@ -1,10 +0,0 @@
[[!meta title="Software"]]
I write software for a living. I like doing it so much that sometimes I
even write software just for fun.
You might want to browse through my [version control](/~neale/gitweb.cgi), or read about some of the larger projects below:
[[!map pages="src/*" show="title"]]

11
src/Jamfile Normal file
View File

@ -0,0 +1,11 @@
SubDir TOP src ;
Webify index.mdwn xss.mdwn escm.mdwn firebot.mdwn pysieved.mdwn ;
SubInclude TOP src eguile ;
SubInclude TOP src ipqueue ;
SubInclude TOP src postscript ;
SubInclude TOP src python ;
SubInclude TOP src dwm ;
SubInclude TOP src misc ;

6
src/dwm/Jamfile Normal file
View File

@ -0,0 +1,6 @@
SubDir TOP src dwm ;
Webify index.mdwn ;
Copy config.h : $(HOME)/src/ports/dwm/config.h ;
Copy status.sh : $(HOME)/bin/status ;
Copy dwm-button.sh : $(HOME)/bin/dwm-button ;

25
src/dwm/index.mdwn Normal file
View File

@ -0,0 +1,25 @@
Title: dwm hacks
I seem to have trouble keeping my attention on the task at hand if there
are little things flashing in the corner of the screen, or even changing
color (like, "you have new email"). The less I have on the screen, the
more productive I seem to be. It is for this reason that I've been
using "tiling" window managers since about 2003.
I've been using [dwm](http://dwm.suckless.org/) since a friend
introduced me to it around 2008. What I like most about dwm, aside from
helping me stay focused on the task at hand, is that it gets out of my
way. There are no buttons to click, and no windows to drag around or
resize. In fact, I hardly ever use the mouse anymore, outside of my web
browser.
* [My config.h](config.h) contains a few features I've added, like
restarting dwm, multimedia buttons, and
[xss](http://woozle.org/~neale/src/xss.html) integration (3 lines of
code).
* [My status script](status.sh) is responsible for having DWM show the
current time, load average, battery charge, and wifi status. It
gracefully handles machines that lack one or more of these features.
* [My button script](dwm-button.sh) is invoked when a multimedia button
is pressed, and handles screen brightness, volume, external monitors,
and more.

3
src/eguile/Jamfile Normal file
View File

@ -0,0 +1,3 @@
SubDir TOP src eguile ;
Webify index.mdwn ;

View File

@ -1,4 +1,5 @@
[[!meta title="Eguile : a scheme preprocessor"]]
Title: Eguile : a scheme preprocessor
Author: Neale Pickett <neale@woozle.org>
If you've ever wished your text preprocessor could do symbolic
derivation, eguile is the tool for you!
@ -14,12 +15,14 @@ sort of person that would enjoy something like this, you probably don't
need any further description.
## Downloading it
Downloading it
--------------------------
[eguile.scm](eguile.scm).
[eguile.scm](http://woozle.org/~neale/src/eguile/eguile.scm).
## Reference
Reference
--------------------------
Easy squeezy:
@ -40,7 +43,9 @@ renders as:
2 squared is 4
## Inspiration
Inspiration
--------------------------
I modeled eguile after ht2html by Barry Warsaw (a far cooler cat than
I). ht2html is a slick package, but it didn't feel enough like
@ -49,17 +54,9 @@ seemed like a better solution, but felt a little too kludgy, and I
needed to learn Scheme better anyway. So I stole the layout from ht2html
and the syntax from escm.
## License
License
--------------------------
eguile is distributed under the GNU Public License version 2.0 or
later. Please refer to the file COPYING for more information.
## Help me help you!
I don't honestly expect anyone to use eguile, so I'm not going to put
much into it beyond this page and what improvements I personally
need. If you do end up using it, please let me know! I'd be more than
happy to help you through any rough spots, and to consider any
suggestions. If nothing else, I can link to your pages as another
example of eguile in use :)

View File

@ -1,4 +1,4 @@
[[!meta title="escm: a scheme preprocessor"]]
Title: escm: a scheme preprocessor
This is my port of [eguile](http://woozle.org/~neale/src/eguile) to
gauche scheme. It uses regular expressions and as a result is faster

View File

@ -1,4 +1,4 @@
[[!meta title="Firebot: IRC Automaton"]]
Title: Firebot: IRC Automaton
FireBot is a winner!

30
src/index.mdwn Normal file
View File

@ -0,0 +1,30 @@
Title: Software
I write software for a living. I like doing it so much that sometimes I
even write software just for fun.
My [version control](/~neale/gitweb.cgi), holds the source code to most
of these packages.
Networky things
-------------------------------
* [pysieved](pysieved/), a Python ManageSieve server
* [Firebot](firebot.html), an easily-extended IRC bot in continuous use since 1996
* [Python IPQUEUE library](py-ipqueue/)
X11 things
-------------------------------
* [xss](xss.html), a simple (suckless) screen saver for X11
* [dwm hacks](dwm/) contains my tweaks to [dwm](http://dwm.suckless.org/)
Various and sundry things
-------------------------------
* [eguile](eguile/), like PHP for Guile Scheme
* [escm](escm.html), like PHP for Gauche Scheme and others
* [Python hacks](python/) of diminutive size and quality
* [Postscript hacks](postscript/) of diminutive size and quality
* [Other hacks](misc/) of diminutive size and quality

3
src/ipqueue/Jamfile Normal file
View File

@ -0,0 +1,3 @@
SubDir TOP src ipqueue ;
Webify index.mdwn ;

View File

@ -1,4 +1,4 @@
[[!meta title="Python ipqueue"]]
Title: Python ipqueue
This is the Netfilter userspace IPQueue module for Python. It allows you
to do all your Linux IPQueue stuff from the comfort of Python. This only
@ -17,8 +17,7 @@ Download
--------
* [Latest version](ipqueue.tar.gz)
* [Netfilter QUEUE bindings](nfqueue-0.1.tar.bz2) Mike Auty &lt;mike.auty&#64;gmail&#46;com&gt;
</ul>
* [Netfilter QUEUE bindings](nfqueue-0.1.tar.bz2) by Mike Auty <mike.auty@gmail.com>
License
-------
@ -38,16 +37,15 @@ Here's an example program which transparently proxies all traffic it
gets to port 25 of 10.1.1.2. This is just an example, a real-world
transparent proxy would be much more sophisticated.
<pre>
#! /usr/bin/env python
#! /usr/bin/env python
import ipqueue
import iputils
import ipqueue
import iputils
rewrite = 1
rewrite = 1
q = ipqueue.IPQ(ipqueue.IPQ_COPY_PACKET)
while 1:
q = ipqueue.IPQ(ipqueue.IPQ_COPY_PACKET)
while 1:
p = q.read()
tcp = iputils.TCP(p[ipqueue.PAYLOAD])
print "Got %s -> %s on hook %d" % (iputils.ntoa(tcp.saddr),
@ -60,7 +58,7 @@ while 1:
q.set_verdict(p[0], ipqueue.NF_ACCEPT, tcp.to_str())
else:
q.set_verdict(p[0], ipqueue.NF_ACCEPT)
</pre>
Help me out
-----------

View File

@ -1,12 +1,11 @@
#! /usr/bin/gosh
;;
;; Neale Pickett <neale@woozle.org> wrote this.
;;
;; Description: 9p implementation in Scheme
;; Author: Neale Pickett <neale@woozle.org>
;; This uses gauche's networking stuff, but no other gauche stuff. It
;; should be simple to substitute your implementation's networking
;; procedures.
;; should be possible to substitute your implementation's networking
;; procedures without too much effort.
(use gauche.net)
(require-extension (srfi 1 4 8 9))

4
src/misc/Jamfile Normal file
View File

@ -0,0 +1,4 @@
SubDir TOP src misc ;
Webify index.mdwn ;
AutoIndex index.mdwn : index.head.mdwn : 9p.scm ;

View File

@ -1,18 +0,0 @@
all: dwm-config.h spamfairy.py mail-expire.sh gourmet.sh deliver.sh
COPY = cp $< $@
dwm-config.h: $(HOME)/opt/src/dwm/config.h
$(COPY)
spamfairy.py: /usr/local/bin/spamfairy
$(COPY)
mail-expire.sh: /usr/local/bin/mail-expire
$(COPY)
gourmet.sh: /usr/local/bin/gourmet
$(COPY)
deliver.sh: /usr/local/bin/deliver
$(COPY)

2
src/misc/index.head.mdwn Normal file
View File

@ -0,0 +1,2 @@
Title: Miscellaneous hacks

4
src/postscript/Jamfile Normal file
View File

@ -0,0 +1,4 @@
SubDir TOP src postscript ;
Webify index.mdwn ;
AutoIndex index.mdwn : index.head.mdwn : alice.ps banner.ps emergency-card.ps graph-paper.ps logo.ps page_dimensions.ps ruled-paper.ps skel.ps ;

View File

@ -1,13 +0,0 @@
FILES = alice.ps banner.ps emergency-card.ps graph-paper.ps logo.ps
FILES += page_dimensions.ps resume.ps ruled-paper.ps skel.ps
TARGETS += index.html
include ../../Makefile
.INTERMEDIATE: index.txt
index.txt: index.dirlist $(FILES)
$(DIRLIST) $(FILES) > $@
%.png: %.ps
pstopnm -portrait -xmax 600 -stdout $< | pnmscale -x 300 | pnmtopng > $@

View File

@ -0,0 +1,5 @@
Title: PostScript Hacks
One morning I woke up wondering, "how difficult could PostScript really be?"
Answer: Not very.

View File

@ -1,82 +0,0 @@
<?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">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>PostScript Hacks
</title>
<link rel="stylesheet" title="default" type="text/css"
href="/~neale/default.css" />
</head>
<body>
<h1 id="head">
<a href="/~neale/"><img src="/~neale/logo.png" /></a>
Neale Pickett
</h1>
<div id="body">
<h1>PostScript Hacks
</h1>
<p>Here are some little programs that are either too small or too
self-explanatory to deserve their own web pages.</p>
<dl>
<dt><a href=alice.ps>alice.ps</a> (19k)</dt>
<dd>Alice in DIGITALand -- an example application of skel.ps</dd>
<dt><a href=banner.ps>banner.ps</a> (2.1k)</dt>
<dd>Boilerplate for multi-page banners</dd>
<dt><a href=emergency-card.ps>emergency-card.ps</a> (11k)</dt>
<dd>Emergency card</dd>
<dt><a href=graph-paper.ps>graph-paper.ps</a> (1.1k)</dt>
<dd>A sheet of graph paper</dd>
<dt><a href=logo.ps>logo.ps</a> (1.1k)</dt>
<dd>Some functions to make PostScript feel like LOGO</dd>
<dt><a href=page_dimensions.ps>page_dimensions.ps</a> (2.1k)</dt>
<dd>Displays dimensions of the page, and where your printer clips.</dd>
<dt><a href=resume.ps>resume.ps</a> (13k)</dt>
<dd>Résumé</dd>
<dt><a href=ruled-paper.ps>ruled-paper.ps</a> (2.1k)</dt>
<dd>A sheet of ruled paper</dd>
<dt><a href=skel.ps>skel.ps</a> (5.2k)</dt>
<dd>Skeleton for typesetting in PostScript.</dd>
</dl>
</div>
<ul id="nav">
<li><a href="/~neale/src/" title="Free Software">Software</a>
<ul>
<li><a href="/~neale/src/pysieved/"
title="MANAGESIEVE server for Postfix, Exim">pysieved</a></li>
<li><a href="/~neale/src/firebot"
title="IRC bot with many features">firebot</a></li>
<li><a href="/~neale/src/ipqueue"
title="Python IPQueue library">ipqueue</a></li>
<li><a href="/~neale/toys"
title="Amusements. They amuse me anyway.">toys</a></li>
<li><a href="/~neale/repos/"
title="Things I am or was hacking">git projects</a></li>
</ul>
</li>
<li><a href="/~neale/tartans"
title="The woozle.org tartans database">Tartans</a></li>
<li><a href="/~neale/poems/"
title="I won't quit my day job">Poems</a></li>
<li><a href="/~neale/papers/"
title="Various writings">Papers</a>
<ul>
<li><a href="/~neale/papers/reply-to-still-harmful"
title="Why your list should leave Reply-To alone">Reply-To Munging Still Considered Harmful</a></li>
<li><a href="/~neale/papers/DNS"
title="A quick introduction to DNS">How DNS Works</a></li>
<li><a href="/~neale/papers/sockets"
title="A quick introduction to TCP sockets">Introduction to TCP Sockets</a></li>
<li><a href="/blogs/neale"
title="I'm special! Look at all my angst!">Blog</a></li>
</ul>
</li>
</ul>
</body>
</html>

View File

@ -1,3 +0,0 @@
[[!meta title="Python hacks"]]
[[!map pages="src/python/*" show="description"]]

6
src/python/Jamfile Normal file
View File

@ -0,0 +1,6 @@
SubDir TOP src python ;
Webify index.mdwn ;
AutoIndex index.mdwn : index.head.mdwn : htmlpp.py ndstrunc.py snpplib.py spampot.py watch.py spamfairy.py mail-expire.py ;
Copy spamfairy.py : /usr/local/bin/spamfairy ;
Copy mail-expire.py : /usr/local/bin/mail-expire ;

View File

@ -0,0 +1,3 @@
Title: Python hacks
Here's some junk I did in Python.

View File

@ -1,6 +1,6 @@
#! /usr/bin/python
"""ndstrunc -- Trims .nds ROM files."""
### ndstrunc -- Trims .nds ROM files
import struct

View File

@ -1,4 +1,5 @@
[[!meta title="xss: X Screensaver Construction Kit"]]
Title: xss: X Screensaver Construction Kit
Author: Neale Pickett <neale@woozle.org>
[xss](http://woozle.org/~neale/src/xss) is a suite of X screensaver
utilities. You can use shell scripts to glue the tools together to
@ -104,8 +105,3 @@ else like the rest of the programs, which is why I wrote them.
I lifted some code from `beforelight` from the X11 distribution, and
from `slock` from [suckless.org](http://suckless.org/). Both have a
BSD/X11-like license.
------
Neale Pickett <neale@woozle.org>

29
template.xml Normal file
View File

@ -0,0 +1,29 @@
<?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">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>TITLE</title>
<link rel="stylesheet" type="text/css" media="screen"
href="/~neale/www/default.css" />
<link rel="stylesheet" type="text/css" media="print"
href="/~neale/www/print.css" />
<link rel="icon" type="image/png" href="/favicon.png" />
</head>
<body>
<h1>TITLE</h1>
divert(1)
<ul id="nav">
<li><a href="/~neale/www/src/" title="Free Software">Software</a></li>
<li><a href="/~neale/www/toys/" title="Various fun things">Toys</a></li>
<li><a href="/~neale/www/poems/" title="I won't quit my day job">Poems</a></li>
<li><a href="/~neale/www/papers/" title="Various writings">Papers</a></li>
</ul>
<address>
Neale Pickett &lt;<a href="mailto: neale&#64;woozle&#46;org">neale&#64;woozle&#46;org</a>&gt;
</address>
</body>
</html>
divert(0)

View File

@ -1,14 +0,0 @@
[[!meta title="Toys"]]
Some various junk I've done. Maybe you'll find it amusing. Maybe
you'll just wonder why I spend so much time on this garbage.
* This [A Mind Forever Voyaging Decoder](amfv-decoder.cgi) is the sort
of thing where you'll only know what it is if you have a need for it.
* Play [a fun game](fungame)!
* Or you could play [robotfindskitten](robotfindskitten.cgi), which is
also fun!
* If you need to write someone a letter but really don't want to, try my
[smalltalk generator](smalltalk.cgi).
* Maybe you'd rather see a [magic trick](omg-magic)?
* How about some [Internet Reiki](reiki)?

3
toys/Jamfile Normal file
View File

@ -0,0 +1,3 @@
SubDir TOP toys ;
Webify index.mdwn reiki.mdwn omg-magic.mdwn fungame.mdwn ;

View File

Before

Width:  |  Height:  |  Size: 440 B

After

Width:  |  Height:  |  Size: 440 B

View File

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

Before

Width:  |  Height:  |  Size: 3.0 KiB

After

Width:  |  Height:  |  Size: 3.0 KiB

View File

Before

Width:  |  Height:  |  Size: 623 B

After

Width:  |  Height:  |  Size: 623 B

View File

Before

Width:  |  Height:  |  Size: 596 B

After

Width:  |  Height:  |  Size: 596 B

View File

Before

Width:  |  Height:  |  Size: 630 B

After

Width:  |  Height:  |  Size: 630 B

View File

Before

Width:  |  Height:  |  Size: 583 B

After

Width:  |  Height:  |  Size: 583 B

View File

Before

Width:  |  Height:  |  Size: 554 B

After

Width:  |  Height:  |  Size: 554 B

View File

Before

Width:  |  Height:  |  Size: 679 B

After

Width:  |  Height:  |  Size: 679 B

View File

Before

Width:  |  Height:  |  Size: 608 B

After

Width:  |  Height:  |  Size: 608 B

View File

Before

Width:  |  Height:  |  Size: 634 B

After

Width:  |  Height:  |  Size: 634 B

View File

Before

Width:  |  Height:  |  Size: 533 B

After

Width:  |  Height:  |  Size: 533 B

View File

Before

Width:  |  Height:  |  Size: 612 B

After

Width:  |  Height:  |  Size: 612 B

View File

Before

Width:  |  Height:  |  Size: 618 B

After

Width:  |  Height:  |  Size: 618 B

View File

Before

Width:  |  Height:  |  Size: 625 B

After

Width:  |  Height:  |  Size: 625 B

View File

Before

Width:  |  Height:  |  Size: 525 B

After

Width:  |  Height:  |  Size: 525 B

View File

Before

Width:  |  Height:  |  Size: 610 B

After

Width:  |  Height:  |  Size: 610 B

View File

Before

Width:  |  Height:  |  Size: 453 B

After

Width:  |  Height:  |  Size: 453 B

View File

Before

Width:  |  Height:  |  Size: 609 B

After

Width:  |  Height:  |  Size: 609 B

View File

Before

Width:  |  Height:  |  Size: 606 B

After

Width:  |  Height:  |  Size: 606 B

View File

Before

Width:  |  Height:  |  Size: 513 B

After

Width:  |  Height:  |  Size: 513 B

View File

Before

Width:  |  Height:  |  Size: 510 B

After

Width:  |  Height:  |  Size: 510 B

View File

Before

Width:  |  Height:  |  Size: 520 B

After

Width:  |  Height:  |  Size: 520 B

View File

Before

Width:  |  Height:  |  Size: 531 B

After

Width:  |  Height:  |  Size: 531 B

View File

Before

Width:  |  Height:  |  Size: 463 B

After

Width:  |  Height:  |  Size: 463 B

View File

Before

Width:  |  Height:  |  Size: 553 B

After

Width:  |  Height:  |  Size: 553 B

Some files were not shown because too many files have changed in this diff Show More