… | |
… | |
177 | or die "malformed desc in $name: $desc"; |
177 | or die "malformed desc in $name: $desc"; |
178 | |
178 | |
179 | my $short = $1; |
179 | my $short = $1; |
180 | |
180 | |
181 | (my $id = $name) =~ y%/%-%; |
181 | (my $id = $name) =~ y%/%-%; |
182 | $index{$name} = "<tr><th id='$id'><a href='pkg/$name.html'>$name</a></th><td>$short</td></tr>"; |
182 | $index{$name} = "<tr><th id='$id' style='white-space:nowrap'><a href='pkg/$name.html'>$name</a></th><td>$short</td></tr>"; |
183 | |
183 | |
184 | open STDOUT, ">", "software.schmorp.de/pkg/$name.html" |
184 | open STDOUT, ">", "software.schmorp.de/pkg/$name.html" |
185 | or die "software.schmorp.de/pkg/$name.html: $!"; |
185 | or die "software.schmorp.de/pkg/$name.html: $!"; |
186 | |
186 | |
187 | my $bg = (grep /cpan/, @args) ? "bg-perl" : "bg-ede"; |
187 | my $bg = (grep /cpan/, @args) ? "bg-perl" : "bg-ede"; |
… | |
… | |
474 | This module provides an alternative to the Net-IRC and Net-IRC2 |
474 | This module provides an alternative to the Net-IRC and Net-IRC2 |
475 | modules. Its design rationale is offering a 100% non-blocking |
475 | modules. Its design rationale is offering a 100% non-blocking |
476 | callback-based interface, RFC-compliant parsing and a lightweight |
476 | callback-based interface, RFC-compliant parsing and a lightweight |
477 | approach to modularity and reusability. |
477 | approach to modularity and reusability. |
478 | |
478 | |
|
|
479 | AnyEvent-ReadLine-Gnu cpan cvs-pod(Gnu.pm,) list(anyevent) irc(anyevent) |
|
|
480 | This is a small interface to Term::ReadLine::Gnu for event-based programs. |
|
|
481 | |
|
|
482 | This module has event-based readline, as well as asynchronous message printing |
|
|
483 | with readline figured out for you. |
|
|
484 | |
479 | Guard cpan cvs-pod(Guard.pm,) cvs-co(Changes) |
485 | Guard cpan cvs-pod(Guard.pm,) cvs-co(Changes) |
480 | This small module implements scope and object guards, that is, code blocks |
486 | This small module implements scope and object guards, that is, code blocks |
481 | that are executed when a scope is being exited (or an object is destroyed). |
487 | that are executed when a scope is being exited (or an object is destroyed). |
482 | |
488 | |
483 | Much effort was invested into these guards behaving "sensibly" in the |
489 | Much effort was invested into these guards behaving "sensibly" in the |