[pacman-dev] [PATCH 5/7] pacsearch: colors are portable (ANSI) and have natural variable names
Pierre Neidhardt
ambrevar at gmail.com
Wed Jan 22 18:07:07 EST 2014
Signed-off-by: Pierre Neidhardt <ambrevar at gmail.com>
---
contrib/pacsearch.in | 37 +++++++++++++++++++------------------
1 file changed, 19 insertions(+), 18 deletions(-)
diff --git a/contrib/pacsearch.in b/contrib/pacsearch.in
index 57901ee..d03778e 100644
--- a/contrib/pacsearch.in
+++ b/contrib/pacsearch.in
@@ -23,6 +23,7 @@
use strict;
use warnings;
+use Term::ANSIColor;
my $myname = 'pacsearch';
my $myver = '@PACKAGE_VERSION@';
@@ -55,15 +56,15 @@ if ($ARGV[0] eq "--version" || $ARGV[0] eq "-V") {
}
# define our colors to use when printing
-my $CLR1 = "\e[0;34m";
-my $CLR2 = "\e[0;32m";
-my $CLR3 = "\e[0;35m";
-my $CLR4 = "\e[0;36m";
-my $CLR5 = "\e[0;31m";
-my $CLR6 = "\e[0;33m";
-my $CLR7 = "\e[1;36m";
-my $INST = "\e[1;31m";
-my $BASE = "\e[0m";
+my($BLUE, $CYAN, $GREEN, $MAGENTA, $RED, $YELLOW, $BOLD, $RESET);
+$BLUE = color('blue');
+$CYAN = color('cyan');
+$GREEN = color('green');
+$MAGENTA = color('magenta');
+$RED = color('red');
+$YELLOW = color('yellow');
+$BOLD = color('bold');
+$RESET = color('reset');
# localization
my $LC_INSTALLED = `gettext pacman installed`;
@@ -72,17 +73,17 @@ my $LC_INSTALLED = `gettext pacman installed`;
sub to_color {
my $line = shift;
# get the installed text colored first
- $line =~ s/(\[.*\]$)/$INST$1$BASE/;
+ $line =~ s/(\[.*\]$)/$CYAN$1$RESET/;
# and now the repo and dealings
- $line =~ s/(^core\/.*)/$CLR1$1$BASE/;
- $line =~ s/(^extra\/.*)/$CLR2$1$BASE/;
- $line =~ s/(^community\/.*)/$CLR3$1$BASE/;
- $line =~ s/(^testing\/.*)/$CLR4$1$BASE/;
- $line =~ s/(^community-testing\/.*)/$CLR5$1$BASE/;
- $line =~ s/(^multilib\/.*)/$CLR6$1$BASE/;
- $line =~ s/(^local\/.*)/$CLR7$1$BASE/;
+ $line =~ s/(^core\/.*)/$MAGENTA$1$RESET/;
+ $line =~ s/(^extra\/.*)/$MAGENTA$1$RESET/;
+ $line =~ s/(^community\/.*)/$MAGENTA$1$RESET/;
+ $line =~ s/(^testing\/.*)/$MAGENTA$1$RESET/;
+ $line =~ s/(^community-testing\/.*)/$MAGENTA$1$RESET/;
+ $line =~ s/(^multilib\/.*)/$MAGENTA$1$RESET/;
+ $line =~ s/(^local\/.*)/$RED$1$RESET/;
# any other unknown repository
- $line =~ s/(^[\w-]*\/.*)/$CLR6$1$BASE/;
+ $line =~ s/(^[\w-]*\/.*)/$RED$1$RESET/;
return $line;
}
--
1.8.5.3
More information about the pacman-dev
mailing list