View file File name : w3mman Content :#!/usr/bin/perl @W3M = split(' ', $ENV{'W3MMAN_W3M'} || 'w3m'); $ENV{'W3MMAN_MAN'} ||= '/usr/bin/man'; $SCRIPT = 'file:///$LIB/w3mman2html.cgi'; sub usage { ($_ = $0) =~ s@.*/@@; print STDERR "$_ [-M <path>] [[<section>] <command>]\n"; print STDERR "$_ [-M <path>] [<section>] [-k <keyword>]\n"; print STDERR "$_ [-l <file>]\n"; exit 1; } $query = ""; while (@ARGV) { $_ = shift @ARGV; if (/^-M$/) { @ARGV || &usage(); $ENV{'MANPATH'} = shift @ARGV; } elsif (/^-k$/) { @ARGV || &usage(); if ( $query eq "" ) { $query = "?quit=ok"; } $query .= "&keyword=" . &form_encode(shift @ARGV); } elsif (/^-l$/) { @ARGV || &usage(); $query = "?quit=ok&local=" . &form_encode(shift @ARGV); $query .= "&pwd=" . &form_encode($ENV{'PWD'}); } elsif (/^-/) { &usage(); } elsif (/^\d/ || $_ eq 'n') { if ( $query eq "" ) { $query = "?quit=ok"; } $query .= "§ion=" . &form_encode($_); } else { if ( $query eq "" ) { $query = "?quit=ok"; } $query .= "&man=" . &form_encode($_); } } exec @W3M, "$SCRIPT$query"; sub form_encode { local($_) = @_; s/[\000-\040\+:#?&%<>"\177-\377]/sprintf('%%%02X', unpack('C', $&))/eg; return $_; }