Shell File Manager
package
Include ;
use Filter::Util::Call ;
use IO::File ;
use Carp ;
sub import
{
my ($self) = shift ;
my ($filename) = shift ;
my $fh = new IO::File "<$filename"
or croak "Cannot open file '$filename': $!" ;
my $first_time = 1 ;
my ($orig_filename, $orig_line) = (caller)[1,2] ;
++ $orig_line ;
filter_add(
sub
{
$_ = <$fh> ;
if ($first_time) {
$_ = "#line 1 $filename\n$_" ;
$first_time = 0 ;
}
if ($fh->eof) {
$fh->close ;
$_ .= "#line $orig_line $orig_filename\n" ;
filter_del() ;
}
1 ;
})
}
1 ;
Shell File Manager Version 1.1, Coded By Shell
Email: [email protected]