--- trunk/lib/Frey/Shell/Grep.pm 2008/12/01 22:44:41 661
+++ trunk/lib/Frey/Shell/Grep.pm 2008/12/02 00:26:03 666
@@ -18,14 +18,13 @@
sub as_markup {
my ($self) = @_;
- my $patt = $self->pattern || 'FIXME';
+ my $patt = $self->pattern;
$self->title( $patt );
my $cmd = 'grep -rn ' . $patt . ' lib/ t/';
warn "# $cmd";
- my $html = qq|
$patt
|;
my $last_path = '';
$self->add_css(qq|
@@ -38,6 +37,8 @@
}
|);
+ my $html;
+
open(my $fh, '-|', $cmd) || die "can't open pipe to $cmd $!";
while(<$fh>) {
my ( $path, $line, $text ) = split(/:/,$_,3);
@@ -50,9 +51,17 @@
}
if ( $INPUT_LINE_NUMBER > 0 ) { # closing pipe grep output results in error
close($fh) || die "can't close pipe to $cmd $!";
- }
- $html .= qq|
|;
+ $html = qq|
+ $patt
+ $html
+ |;
+
+ } else {
+
+ $html = $self->error( "No results for $patt\n" );
+
+ }
return $html;
}