add match_last attribute to color last match
authorSimon Ruderich <simon@ruderich.org>
Thu, 28 Jan 2016 02:57:59 +0000 (03:57 +0100)
committerSimon Ruderich <simon@ruderich.org>
Thu, 28 Jan 2016 02:57:59 +0000 (03:57 +0100)
bin/fcscs

index cb68b04a6ca7050d75fcdfdfc807dc5d6bf4f759..d6a5878a6dcf51e3e911bde3748bcd64a1fdcb52 100755 (executable)
--- a/bin/fcscs
+++ b/bin/fcscs
@@ -102,7 +102,8 @@ or another number to select the longer match. Use backspace to remove the last
 entered number.
 
 Press return before entering a number to select the last (lowest numbered)
 entered number.
 
 Press return before entering a number to select the last (lowest numbered)
-match. To abort without selecting any match either use "q".
+match (underlined by default). To abort without selecting any match either use
+"q".
 
 To change the selection mode (e.g. paths, files, etc.) use one of the mappings
 explained below. Per default URLs are selected, see options for a way to
 
 To change the selection mode (e.g. paths, files, etc.) use one of the mappings
 explained below. Per default URLs are selected, see options for a way to
@@ -307,9 +308,13 @@ package Screen {
 
         my $attr_id     = $config->{attribute}{match_id};
         my $attr_string = $config->{attribute}{match_string};
 
         my $attr_id     = $config->{attribute}{match_id};
         my $attr_string = $config->{attribute}{match_string};
+        my $attr_last   = $config->{attribute}{match_last};
 
         foreach (@{$matches_add}) {
 
         foreach (@{$matches_add}) {
-            $self->draw($_->{y}, $_->{x}, $attr_string, $_->{string});
+            my $attr = (defined $_->{id} and $_->{id} == 1)
+                     ? $attr_last
+                     : $attr_string;
+            $self->draw($_->{y}, $_->{x}, $attr, $_->{string});
             if (defined $_->{id}) {
                 $self->draw($_->{y}, $_->{x}, $attr_id, $_->{id});
             }
             if (defined $_->{id}) {
                 $self->draw($_->{y}, $_->{x}, $attr_id, $_->{id});
             }
@@ -1050,6 +1055,8 @@ Defaults in parentheses (foreground, background, attribute).
 
 =item B<match_string>  attribute for matches (yellow, default, normal)
 
 
 =item B<match_string>  attribute for matches (yellow, default, normal)
 
+=item B<match_last>    attribute for the match selected by return (yellow, default, underline)
+
 =item B<prompt_name>   attribute for prompt name (standout)
 
 =item B<prompt_flags>  attribute for prompt flags (standout)
 =item B<prompt_name>   attribute for prompt name (standout)
 
 =item B<prompt_flags>  attribute for prompt flags (standout)
@@ -1068,6 +1075,8 @@ my %attribute = (
     match_id     => $screen->color_pair(Curses::COLOR_RED, -1)
                     | Curses::A_BOLD,
     match_string => $screen->color_pair(Curses::COLOR_YELLOW, -1),
     match_id     => $screen->color_pair(Curses::COLOR_RED, -1)
                     | Curses::A_BOLD,
     match_string => $screen->color_pair(Curses::COLOR_YELLOW, -1),
+    match_last   => $screen->color_pair(Curses::COLOR_YELLOW, -1)
+                    | Curses::A_UNDERLINE,
     prompt_name  => Curses::A_STANDOUT,
     prompt_flags => Curses::A_STANDOUT,
 );
     prompt_name  => Curses::A_STANDOUT,
     prompt_flags => Curses::A_STANDOUT,
 );