needmod themecompat
needmod color
needmod number-extra

THEME_AUTHOR="arne <brummelufs@hotmail.com>"
ANSICOLOR_CYAN="c7ffdb"
ANSICOLOR_GREEN="446847"
ANSICOLOR_BLUE="035201"

## fade3
ANSICOLOR_MAGENTA="002e00"

TITLE="matrix|$TEXTNUMBER"
case "$SHELLNAME" in
bash)
PROMPT="\[\]" 
;;
zsh)
PROMPT="%{%}"
esac

## fade
case "$TERMNAME" in
xterm-Eterm*|xterm-xterm*|xterm-rxvt*|bsd|linux)
FADE1="`color raw fgmagenta`"
FADE2="`color raw fgblue`"

## bright
BRIGHT=`color raw fgcyan`

;;
*)
FADE1="`color raw fggreen`"
FADE2="`color raw fggreen`"

## bright
BRIGHT=`color raw white`

esac
FADE3="`color raw fggreen`"

NORMAL=`color raw`

## where is the matrix?
matrix () 
{ 
    let b=1;
    case $TERMNAME in
    xterm-Eterm*|xterm-rxvt*)
    printf "\e7";
    ;;
    *)
    printf "\033[s"
    esac
    
    while test "$b" != 5; do
        local MATRIXPOSITIONX="`echo $RANDOM|cut -c2-3`";
        let MATRIXPOSITIONY="`echo $RANDOM|cut -c2` * 2";
        case "$RANDOM" in 
            *0 | *1)
                printf "$FADE1\033[$MATRIXPOSITIONY;$MATRIXPOSITIONX"H"8$FADE2\033[`expr $MATRIXPOSITIONY + 1`;$MATRIXPOSITIONX"H"D$FADE3\033[`expr $MATRIXPOSITIONY + 2`;$MATRIXPOSITIONX"H"<$NORMAL\033[`expr $MATRIXPOSITIONY + 3`;$MATRIXPOSITIONX"H"8\033[`expr $MATRIXPOSITIONY + 4`;$MATRIXPOSITIONX"H"9\033[`expr $MATRIXPOSITIONY + 5`;$MATRIXPOSITIONX"H"C\033[`expr $MATRIXPOSITIONY + 6`;$MATRIXPOSITIONX"H"$FADE3\033[`expr $MATRIXPOSITIONY + 7`;$MATRIXPOSITIONX"H"]$FADE2\033[`expr $MATRIXPOSITIONY + 8`;$MATRIXPOSITIONX"H"D$FADE1\033[`expr $MATRIXPOSITIONY + 9`;$MATRIXPOSITIONX"H"$FADE3\033[`expr $MATRIXPOSITIONY + 10`;$MATRIXPOSITIONX"H"W$NORMAL\033[`expr $MATRIXPOSITIONY + 11`;$MATRIXPOSITIONX"H"\033[`expr $MATRIXPOSITIONY + 12`;$MATRIXPOSITIONX"H"A$BRIGHT\033[`expr $MATRIXPOSITIONY + 13`;$MATRIXPOSITIONX"H"$NORMAL"
            ;;
            *2 | *3)
                printf "$FADE1\033[$MATRIXPOSITIONY;$MATRIXPOSITIONX"H"8$FADE2\033[`expr $MATRIXPOSITIONY + 1`;$MATRIXPOSITIONX"H"B$FADE3\033[`expr $MATRIXPOSITIONY + 2`;$MATRIXPOSITIONX"H"C$NORMAL\033[`expr $MATRIXPOSITIONY + 3`;$MATRIXPOSITIONX"H"4\033[`expr $MATRIXPOSITIONY + 4`;$MATRIXPOSITIONX"H"2\033[`expr $MATRIXPOSITIONY + 5`;$MATRIXPOSITIONX"H"Y$FADE1\033[`expr $MATRIXPOSITIONY + 6`;$MATRIXPOSITIONX"H"$NORMAL\033[`expr $MATRIXPOSITIONY + 7`;$MATRIXPOSITIONX"H"D\033[`expr $MATRIXPOSITIONY + 8`;$MATRIXPOSITIONX"H"$BRIGHT\033[`expr $MATRIXPOSITIONY + 9`;$MATRIXPOSITIONX"H"$NORMAL"
            ;;
            *4 | *5)
                printf "$FADE1\033[$MATRIXPOSITIONY;$MATRIXPOSITIONX"H"8$FADE2\033[`expr $MATRIXPOSITIONY + 1`;$MATRIXPOSITIONX"H"$FADE3\033[`expr $MATRIXPOSITIONY + 2`;$MATRIXPOSITIONX"H"<$NORMAL\033[`expr $MATRIXPOSITIONY + 3`;$MATRIXPOSITIONX"H"\033[`expr $MATRIXPOSITIONY + 4`;$MATRIXPOSITIONX"H"9\033[`expr $MATRIXPOSITIONY + 5`;$MATRIXPOSITIONX"H"C$BRIGHT\033[`expr $MATRIXPOSITIONY + 6`;$MATRIXPOSITIONX"H"$NORMAL\033[`expr $MATRIXPOSITIONY + 7`;$MATRIXPOSITIONX"H"]\033[`expr $MATRIXPOSITIONY + 8`;$MATRIXPOSITIONX"H"D$FADE2\033[`expr $MATRIXPOSITIONY + 9`;$MATRIXPOSITIONX"H"\033[`expr $MATRIXPOSITIONY + 10`;$MATRIXPOSITIONX"H"W$NORMAL\033[`expr $MATRIXPOSITIONY + 11`;$MATRIXPOSITIONX"H"\033[`expr $MATRIXPOSITIONY + 12`;$MATRIXPOSITIONX"H"A$BRIGHT\033[`expr $MATRIXPOSITIONY + 13`;$MATRIXPOSITIONX"H"7$NORMAL"
            ;;
            *6 | *7)
                printf "$FADE1\033[$MATRIXPOSITIONY;$MATRIXPOSITIONX"H"8$FADE2\033[`expr $MATRIXPOSITIONY + 1`;$MATRIXPOSITIONX"H"W$FADE3\033[`expr $MATRIXPOSITIONY + 2`;$MATRIXPOSITIONX"H"C$NORMAL\033[`expr $MATRIXPOSITIONY + 3`;$MATRIXPOSITIONX"H"B\033[`expr $MATRIXPOSITIONY + 4`;$MATRIXPOSITIONX"H"9\033[`expr $MATRIXPOSITIONY + 5`;$MATRIXPOSITIONX"H"d\033[`expr $MATRIXPOSITIONY + 6`;$MATRIXPOSITIONX"H"\033[`expr $MATRIXPOSITIONY + 7`;$MATRIXPOSITIONX"H"]\033[`expr $MATRIXPOSITIONY + 8`;$MATRIXPOSITIONX"H"A$BRIGHT\033[`expr $MATRIXPOSITIONY + 9`;$MATRIXPOSITIONX"H"X$NORMAL"
            ;;
            *8 | *9)
                printf "$FADE1\033[$MATRIXPOSITIONY;$MATRIXPOSITIONX"H"8$FADE2\033[`expr $MATRIXPOSITIONY + 1`;$MATRIXPOSITIONX"H"F$FADE3\033[`expr $MATRIXPOSITIONY + 2`;$MATRIXPOSITIONX"H"G$NORMAL\033[`expr $MATRIXPOSITIONY + 3`;$MATRIXPOSITIONX"H"\033[`expr $MATRIXPOSITIONY + 4`;$MATRIXPOSITIONX"H"9\033[`expr $MATRIXPOSITIONY + 5`;$MATRIXPOSITIONX"H"C\033[`expr $MATRIXPOSITIONY + 6`;$MATRIXPOSITIONX"H"H\033[`expr $MATRIXPOSITIONY + 7`;$MATRIXPOSITIONX"H"M\033[`expr $MATRIXPOSITIONY + 8`;$MATRIXPOSITIONX"H"D\033[`expr $MATRIXPOSITIONY + 9`;$MATRIXPOSITIONX"H"@\033[`expr $MATRIXPOSITIONY + 10`;$MATRIXPOSITIONX"H"W\033[`expr $MATRIXPOSITIONY + 11`;$MATRIXPOSITIONX"H"3\033[`expr $MATRIXPOSITIONY + 12`;$MATRIXPOSITIONX"H"T$BRIGHT\033[`expr $MATRIXPOSITIONY + 13`;$MATRIXPOSITIONX"H"5$NORMAL"
            ;;
        esac;
        let b=$b+1;
    done;
    case "$TERMNAME" in
    xterm-rxvt*|xterm-Eterm*)
    printf "\e8"
    ;;
    *)
    printf "\033[u"
    esac
}


IMAGEFILE=""

WELCOMEMESSAGE="Follow the white rabbit...
"
BGBRIGHTNESSRED=256
BGBRIGHTNESSBLUE=256
BGBRIGHTNESSGREEN=256
XFONT=type13.pcf.gz
CURSORCOLOR="$ANSICOLOR_CYAN"
BGCOLOR="000000"
FGCOLOR="4a9a4b"
SIZE_Y=30
SIZE_X=100
XFONT="lime.pcf.gz"

PROMPT_COMMAND=matrix

precmd()
{
matrix
}

BGTRANSPARENCY=0


