c1c4280878a7940cc79602bb48c49b27abdef009
[videoscripts/.git] / setprompt.pl
1 #!/usr/bin/perl
2
3 $host = `hostname`; chomp($host);
4 %hostaliases = (
5                 "hpesajp" => "hp",
6                 "pippin" => "pippin",
7                 );
8 $pwd = $ENV{PWD};
9
10 @aliases = (
11             "/tmp_mnt/auto=>",
12             "$ENV{HOME}=>~",
13             "/net/=>",
14             "/home/=>/~",
15             );
16
17 $host = $hostaliases{$host} if defined $hostaliases{$host};
18 foreach $alias (@aliases) {
19     @alias = split(/=>/, $alias);
20     if ( $alias[0] ne "" ) {
21         $pwd =~ s/$alias[0]/$alias[1]/;
22     }
23 }
24 if ($pwd =~ /^(~)?(.+)(\/.*?\/.*?\/.*)/) {
25     @prec = split(/\//, $2);
26     $pwd = "$1($#prec)$3" if $#prec;
27 }
28
29 while ($pwd =~ /[\/]+([^\/]{13,})/) {
30     $segment = $oldseg = $1;
31     $segment =~ s/^(.{4}).*?(.{5})$/$1\.\.\.$2/;
32     $pwd =~ s/$oldseg/$segment/;
33 }
34 $whoami = `whoami`;
35 chomp( $whoami );
36 if ( $whoami eq "root" ) {
37     $user = "\\[\e[41m\\]ROOT\\[\e[49m\\]:";
38 } elsif( $whoami ne "ajp" ) {
39     $user = "\\[\e[41m\\]$whoami\\[\e[49m\\]@";
40 }
41
42 #Colors
43 if ( $ENV{COLOR_PROMPT} ne "no" )
44 {
45   $host = "\\[\e[32m\\]$host\\[\e[39m\\]" if $host;
46   $pwd  = "\\[\e[36m\\]$pwd\\[\e[39m\\]";
47 }
48
49 print "$user$host:$pwd> ";
50