From 0587bc8d10332b1aca3f1219ae9915dfa7dd72d1 Mon Sep 17 00:00:00 2001 From: heinzel Date: Wed, 8 Aug 2001 12:01:22 +0000 Subject: [PATCH] xtermmaker Ver 3.2 can select random colors from theme --- xtermmaker.sh | 49 +++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 39 insertions(+), 10 deletions(-) diff --git a/xtermmaker.sh b/xtermmaker.sh index 87cc907..46c2b69 100755 --- a/xtermmaker.sh +++ b/xtermmaker.sh @@ -1,7 +1,7 @@ #!/bin/bash # LOC ~/scripts/xtermmaker.sh -# CVS $Id: xtermmaker.sh,v 1.1 2001/07/13 14:35:28 heinzel Exp $ -version='xtermmaker.sh Version 3.1 $Revision: 1.1 $ ($Date: 2001/07/13 14:35:28 $ $Author: heinzel $)' +# CVS $Id: xtermmaker.sh,v 1.2 2001/08/08 12:01:22 heinzel Exp $ +version='xtermmaker.sh Version 3.2 $Revision: 1.2 $ ($Date: 2001/08/08 12:01:22 $ $Author: heinzel $)' ### config ### xterm=xterm @@ -14,14 +14,14 @@ rsh=ssh host="" user="" -color=BUNT +color=RAND theme=light themes="traditional, light" -# Note: Themes must have $max_number colors defined +# NOTE: Themes MUST have $max_number colors defined theme_traditional="SteelBlue,SeaGreen,orange,gold,tomato,CadetBlue,SlateGrey,MediumSeaGreen,Goldenrod" -theme_light="SlateGrey,MediumSeaGreen,Goldenrod,IndianRed,CadetBlue,MediumSeaGreen,Goldenrod,SlateGrey,IndianRed" +theme_light="SlateGrey,MediumSeaGreen,Goldenrod,IndianRed,CadetBlue,DarkSeaGreen,khaki,CornflowerBlue,orange" ### functions ### show_version() @@ -32,7 +32,7 @@ show_version() show_help() { echo "Usage: xtermmaker.sh [-n ] [-u ] [-r ]" - echo " [-c ] [-g] [-b] [--t ]" + echo " [-c ] [-g] [-b] [-z] [--t ]" echo " [-h|--help] [-V|--version]" echo "" echo "-n opens xterms (default: $number) (max: $max_number)" @@ -42,12 +42,28 @@ show_help() echo "" echo "-c set the backgroundcolor of the xterms" echo "-g same as -c Gray" - echo "-b generates \"Bunte XTerms\" (default)" + echo "-b generates \"Bunte XTerms\" in serial sequence" + echo "-z generates \"Bunte XTerms\" in random sequence (default)" echo "-t use color theme for \"Bunte XTerms\"" echo " possible themes: $themes (default: $theme)" echo "" } +rand() +{ + # Usage: rand + local i="${1:-1}" + local f=/proc/uptime + local b="" + local p=0 + + b=`md5sum $f | tr -d "[:alpha:] [:punct:]"` + p=`expr ${#b} - 1` + b=`echo $b | cut -c ${p}-` + + expr \( $b \* $i \) / 100 + 1 +} + ### argv ### @@ -80,6 +96,10 @@ while test $# -gt 0 ; do color=BUNT shift ;; + -z) + color=RAND + shift + ;; -t|-theme|--theme) theme="$2" shift @@ -101,18 +121,27 @@ done ### action ### test "$number" || number=1 +test "$number" -le "$max_number" || number=$max_number count=1 until test $count -gt $number ; do title_opt="-title $count" - if test "$color" = "BUNT" ; then + case "$color" in + BUNT) eval colors=\$theme_$theme bg_opt="-bg `echo $colors | cut -f $count -d ,`" - else + ;; + RAND) + eval colors=\$theme_$theme + buf=`rand $max_number` + bg_opt="-bg `echo $colors | cut -f $buf -d ,`" + ;; + *) bg_opt="-bg $color" - fi + ;; + esac fg_opt="-fg black"