From 2f88c43171c2652a0e8ad232c018c5d96b7c5914 Mon Sep 17 00:00:00 2001 From: Yorhel Date: Thu, 9 May 2013 16:53:27 +0200 Subject: [PATCH] Add ylib + various fixes --- dat/dump | 5 ++--- dat/globster | 10 ++++------ dat/ncdc | 8 +++++--- dat/ncdc-faq | 6 +++--- dat/sqlaccess | 4 ++++ index.cgi | 9 ++++++++- 6 files changed, 26 insertions(+), 16 deletions(-) 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});