diff --git a/dat/dump b/dat/dump
index 72d5269..b01d3f0 100644
--- a/dat/dump
+++ b/dat/dump
@@ -4,9 +4,8 @@ I write a lot of miscellaneous little perl/shell scripts and micro-libraries
for the purpose of getting something done. This page is a listing of those I
thought might be of useful to others as well.
-I also maintain a collection of miscellaneous C micro-libraries in a L (and its L). These libraries are not listed here.
+I also maintain a collection of miscellaneous C micro-libraries. Those are
+listed under the collective name of L.
=head2 maildir.pl
diff --git a/dat/globster b/dat/globster
index 9caedee..7efc7b0 100644
--- a/dat/globster
+++ b/dat/globster
@@ -85,7 +85,7 @@ There are at this point not many scripts or interfaces available for Globster:
=item * L - A control script for the daemon, included in the git repo.
-=item * L - An RSS / Atom notification script.
+=item * L - An RSS / Atom notification script.
=item * L - A hub chat link script. More useful as an example than anything else.
@@ -107,9 +107,7 @@ Globster incorporates code from
L,
L,
L and
-L.
-Additionally, L is used to prevent
-obsessing over header file management, and
-L keeps the
-configure script fast.
+L.
+Additionally, L is
+used to keep the configure script fast.
diff --git a/dat/ncdc b/dat/ncdc
index 90633c7..b471260 100644
--- a/dat/ncdc
+++ b/dat/ncdc
@@ -17,9 +17,11 @@ ncurses interface.
Convenient static binaries for Linux:
L<64-bit|http://dev.yorhel.nl/download/ncdc-linux-x86_64-1.16.1.tar.gz> -
L<32-bit|http://dev.yorhel.nl/download/ncdc-linux-i486-1.16.1.tar.gz> -
-L.
-Check the L for
-more info.
+L. Check the
+L for more info.
+B The static binaries have some problems with chatting and searching on
+KOI8-R NMDC hubs, use an alternative installation method if you're affected by
+this.
=item Development version
diff --git a/dat/ncdc-faq b/dat/ncdc-faq
index 3a5c237..01a750b 100644
--- a/dat/ncdc-faq
+++ b/dat/ncdc-faq
@@ -90,9 +90,9 @@ low-end devices. Updating to ncdc 1.15 or later should fix this.
=head2 Ncdc crashes a lot!
-Ncdc 1.16 has no known bugs that may cause a crash. If you're running an older
-version of ncdc, please upgrade. If your ncdc is up to date and you still have
-a crash, please report a bug.
+Ncdc 1.16.1 has no known bugs that may cause a crash. If you're running an
+older version of ncdc, please upgrade. If your ncdc is up to date and you still
+have a crash, please report a bug.
=head2 Ncdc uses too much disk space!
diff --git a/dat/sqlaccess b/dat/sqlaccess
index f448803..bb18877 100644
--- a/dat/sqlaccess
+++ b/dat/sqlaccess
@@ -4,6 +4,10 @@ Multi-threaded Access to an SQLite3 Database
(Published on B<2011-11-26>. Also available in L.)
+(Minor 2013-04-06 update: I abstracted my message passing solution from ncdc
+and implemented it in a POSIX C library for general use. It's called
+I and is part of my L.)
+
=head1 Introduction
As I was porting L over to use SQLite3 as
diff --git a/index.cgi b/index.cgi
index dbaeb11..1c4500b 100755
--- a/index.cgi
+++ b/index.cgi
@@ -12,6 +12,8 @@ BEGIN { ($ROOT = abs_path $0) =~ s{index\.cgi$}{}; }
my @changes = (
+ [ '2013-04-04', '/ylib', 'Created a page for Ylib' ],
+ [ '2013-04-03', '/ncdc', 'Created a mailing list for ncdc' ],
[ '2013-03-23', '/ncdc', 'ncdc 1.16.1 released.' ],
[ '2013-03-02', '/ncdc', 'ncdc 1.15 released.' ],
[ '2012-12-15', '/globster', 'Announcing yet another awesome project: Globster!' ],
@@ -90,6 +92,7 @@ TUWF::register(
qr{tuwf} => sub { podpage(shift, 'tuwf', 'tuwf', '', 'The Ultimate Website Framework') },
qr{tuwf/man(?:/(db|misc|request|response|xml))?} => \&tuwfmanual,
qr{tuwf/changes} => sub { changelog(shift, 'tuwf-changelog', 'TUWF', 'tuwf', 'changes', 'TUWF Changelog') },
+ qr{ylib} => sub { podpage(shift, 'ylib/README.pod', 'ylib', '', 'Ylib') },
qr{doc} => sub { podpage(shift, 'doc', 'doc', '', 'Articles') },
qr{doc/sqlaccess} => sub { podpage(shift, 'sqlaccess', 'doc', '', 'Multi-threaded Access to an SQLite3 Database', 1) },
qr{doc/commvis} => sub { podpage(shift, 'doc-commvis', 'doc', '', 'A Distributed Communication System for Modular Applications', 1) },
@@ -179,7 +182,9 @@ sub atom {
tag link => rel => 'self', type => 'application/atom+xml', href => "http://dev.yorhel.nl/feed.atom", undef;
tag link => rel => 'alternate', type => 'text/html', href => 'http://dev.yorhel.nl/', undef;
+ my $n = 0;
for(@changes) {
+ last if $n++ >= 10;
tag 'entry';
tag id => 'http://dev.yorhel.nl'.($_->[1]||'/').'#'.$_->[0];
tag title => $_->[2];
@@ -458,7 +463,7 @@ sub htmlMenu {
h1 class => 'title', "~ \u$o{page} ~" if $o{spec}{$o{page}};
my $m = sub {
li;
- my $s = $_[0] =~ m{^/([^/]+)} && $o{spec}{$1} && $o{page} ne $1;
+ my $s = ($_[0] =~ m{^/([^/]+)} && $o{spec}{$1} && $o{page} ne $1) || $_[0] =~ m{^http://};
my @c = ($s?'special':(), $_[2]?'menusel':(), $_[4]?'tiny':());
a href => $_[0], @c?(class => join ' ',@c):(), $_[1];
if($_[3]) {
@@ -485,6 +490,7 @@ sub htmlMenu {
$m->('/ncdc/changes', 'Changelog', $o{sec} eq 'changes');
$m->('/ncdc/scr', 'Screenshots', $o{sec} eq 'scr');
$m->('/ncdc/bug', 'Bug tracker', $o{sec} eq 'bug');
+ $m->('http://l.blicky.net/listinfo/ncdc', 'Mailing list ');
} elsif($o{page} eq 'globster') {
$m->('/globster', 'Info', !$o{sec});
$m->('/globster/daemon', 'Commands', (scalar $o{sec} =~ /(daemon|ctl|launch)/), sub {
@@ -511,6 +517,7 @@ sub htmlMenu {
$m->('/ncdc', 'Ncdc ');
$m->('/globster', 'Globster ');
$m->('/tuwf', 'Tuwf ');
+ $m->('/ylib', 'Ylib', $o{page} eq 'ylib');
$m->('/doc', 'Articles', $o{page} eq 'doc');
$m->('/dump', 'Code dump', $o{page} eq 'dump', sub {
$m->('/dump', 'Misc.', $o{page} eq 'dump' && !$o{sec});