#!/bin/sh # # Script de lancement de Eterm avec mes options préférées :) # Constantes et débogage # VRAI=1 FAUX=0 DEBUG=$FAUX # Commande par défaut : # ETERM="/usr/bin/Eterm" ETERM_DEF_OPTS="--select-line --menubar off --login-shell off" XTERM="/usr/X11R6/bin/xterm" XTERM_DEF_OPTS="" # Constantes des modes par défaut : GEOM="80x24" TYPE=`basename $0` # Mode suivant la machine : # MODE=`xdpyinfo | grep dimensions | awk '{print $2}'` # Options initiales par défaut : # BG=$FAUX SB=$VRAI LIGNESDEF=10000 TINTE="0xffffff" POLICE="7x13" # 7x13 par défaut LIGNES=$LIGNESDEF OMBRE="" COULEUR="" FGC="" BGC="" TAILLE="default" OPTIONS="" TITLE="" USRGEOM="" # Traitement des paramètres # NEXT=0; for arg in $*; do case "$arg" in "-debug") DEBUG=$VRAI;; "x") TYPE="xterm";; "rouge"|"vert"|"bleu"|"cyan"|"violet"|"magenta"|"jaune"|"none") COULEUR=$arg;; "minuscule"|"petit"|"normal"|"grand"|"géant") TAILLE=$arg;; "lcd") COULEUR="lcd" SB=$FAUX;; "casio") COULEUR="casio" SB=$FAUX;; "-id") NEXT=1;; "-ombre") OMBRE="--shade 30";; "fond"|"-f") BG=$VRAI;; "-g") NEXT=2;; "-fg") NEXT=3;; "-bg") NEXT=4;; "-fn") NEXT=5;; "-sl") if [ $LIGNES = 0 ]; then LIGNES=$LIGNESDEF else LIGNES=0 fi;; "-sb") SB=$FAUX LIGNES=0;; "-aide"|"-help"|"-h") echo "Liste des options supplémentaires acceptées par eterm :" echo " 1. Couleurs" echo " rien ou 'none' : transparent simple" echo " 'rouge' : fond transparent rouge" echo " 'vert' : fond transparent vert" echo " 'bleu' : fond transparent bleu" echo " 'cyan' : fond transparent cyan" echo " 'violet' ou 'magenta' : fond transparent violet" echo " 'jaune' : fond transparent jaune" echo " 2. Ombre" echo " -ombre : ombre le fond de 20%" echo " 3. Taille de police (MODE : 800x600 | 1280x1024" echo " 'minuscule' : 5x8 6x10" echo " 'petit' : 6x10 6x13" echo " 'normal' : 6x13 7x13" echo " 'grand' : 7x13 9x15" echo " 'géant' : 9x15 10x20" echo " 4. Divers" echo " 'fond' ou '-f' : mode fond d'écran" echo " 'x' : xterm à la place" echo " 'lcd' : apparence écran lcd" echo " 'casio' : apparence écran de montre casio rétroéclairé" echo " -g : géométrie" echo " -sb : pas de scrollbar" echo " -fg et -bg : changent les couleurs de texte et de fond" echo " -fn : police à utiliser" echo " -sl : lignes de buffer à garder" echo " '-id' : titre à donner à la fenêtre" echo " '-debug' : mode débogage" echo " 5. Aide" echo " -aide ou -help ou -h : cette aide" echo exit;; *) case $NEXT in 1) TITLE="$arg";; 2) USRGEOM="$arg";; 3) FGC="$arg";; 4) BGC="$arg";; 5) POLICE="$arg";; *) OPTIONS="$OPTIONS $arg" esac NEXT=0 esac if [ $DEBUG = $VRAI ]; then echo "ARGUMENT : $arg" fi done # Traitement des dimensions de police et d'écran : # if [ $DEBUG = $VRAI ]; then echo "TRAITEMENT DES TAILLE DE POLICE ET DIMENSIONS D'ÉCRAN..." fi if [ "$POLICE" = "" ]; then case "$TAILLE" in "minuscule") POLICE="6x10";; "petit") POLICE="6x13";; "normal") POLICE="7x13";; "grand") POLICE="9x15";; "géant") POLICE="10x20";; "default") POLICE="-*-neep-medium-r-normal-*-11-*-*-*-*-*-iso8859-15" esac if [ "$MODE" = "800x600" ]; then case "$TAILLE" in "minuscule") BGGEOM="120x59+0+0";;#BGGEOM="158x74+0+0";; "petit") BGGEOM="120x45+2+2";;#BGGEOM="132x59+0+0";; "normal") BGGEOM="103x45+2+2";;#BGGEOM="132x46+0+0";; "grand") BGGEOM="80x39+2+2";;#BGGEOM="113x46+0+0";; "géant") BGGEOM="79x29+0+0";;#BGGEOM="88x40+0+0";; esac else case "$TAILLE" in "minuscule") BGGEOM="212x102+0+0";; "petit") BGGEOM="212x78+0+0";; "normal") BGGEOM="181x78+0+0";; "grand") BGGEOM="141x68+0+0";; "géant") BGGEOM="127x51+0+0";; esac fi fi # Traitement de la couleur donnée en paramètre : # if [ $DEBUG = $VRAI ]; then echo "TRAITEMENT DE LA COULEUR..." fi case "$COULEUR" in "rouge"|"red") TINTE=0xff8080;; "vert"|"green") TINTE=0x80ff80;; "bleu"|"blue") TINTE=0x8080ff;; "cyan") TINTE=0x80ffff;; "violet"|"magenta") TINTE=0xff80ff;; "jaune"|"yellow") TINTE=0xffff80;; "lcd") TINTE=\#7E9E69; TEXTE="grey24"; XTERM_DEF_OPTS="";; "casio") TINTE="DeepSkyBlue2"; TEXTE="black"; XTERM_DEF_OPTS="";; "none") TINTE="0xffffff";; *) TINTE="0xffffff";; esac # Traitement du mode «mise en fond» # if [ $DEBUG = $VRAI ]; then echo "TRAITEMENT DU MODE « MISE EN FOND »..." fi if [ "$USRGEOM" != "" ]; then GEOM=$USRGEOM fi if [ $BG = $VRAI ]; then if [ "$TYPE" = "eterm" ]; then BACK="-x" else BACK="" fi SB=$FAUX GEOM="$BGGEOM" else BACK="" fi # Création de la ligne de commande finale # if [ $DEBUG = $VRAI ]; then echo "CRÉATION DE LA LIGNE DE COMMANDE..." fi if [ "$TYPE" = "eterm" ]; then TERM="$ETERM" # Mise en forme des options pour inclusion : GEOM="--geometry $GEOM" POLICE="-F $POLICE" SCROLL="--scrollbar on" LIGNES=$LIGNESDEF if [ $SB = $FAUX ]; then SCROLL="--scrollbar off" #LIGNES=0 POURQUOI DONC ??? fi LIGNES="-L $LIGNES" if [ "$COULEUR" = "lcd" -o "$COULEUR" = "casio" ]; then TEXTE="-f $TEXTE -c $TEXTE" TINTE="-b $TINTE" else if [ "$FGC" != "" ]; then TEXTE="-f $FGC -c $FGC" else TEXTE="--cursor-color SpringGreen" fi TINTE="--trans --tint $TINTE" fi if [ "$TITLE" != "" ]; then TOPT="-T $TITLE -n $TITLE --icon-name $TITLE" else TOPT="" fi TERM_OPTS="$ETERM_DEF_OPTS $GEOM $POLICE $TEXTE $TINTE" TERM_OPTS="$TERM_OPTS $LIGNES $BACK $OMBRE $SCROLL $TOPT" else TERM="$XTERM" # Mise en forme des options pour inclusion : GEOM="-geometry $GEOM" POLICE="-fn $POLICE" if [ "$COULEUR" = "lcd" -o "$COULEUR" = "casio" ]; then TEXTE="-fg $TEXTE" TINTE="-bg $TINTE" else if [ "$FGC" != "" ]; then TEXTE="-fg $FGC -cr $FGC" else TEXTE="-fg white -cr SpringGreen" fi if [ "$BGC" != "" ]; then TINTE="-bg $BGC -bd $BGC" else TINTE="-bg black -bd SpringGreen" fi fi SCROLL="+sb" if [ $SB = $VRAI ]; then SCROLL="-rightbar -sb" # LIGNES=$LIGNESDEF NON : déjà réglé ! fi LIGNES="-sl $LIGNES" if [ "$TITLE" != "" ]; then TOPT="-T $TITLE -n $TITLE -name $TITLE" else TOPT="" fi TERM_OPTS="$XTERM_DEF_OPTS $GEOM $POLICE $TEXTE $TINTE" TERM_OPTS="$TERM_OPTS $LIGNES $BACK $SCROLL $TOPT" fi CMD="$TERM $TERM_OPTS $OPTIONS" # Lancement de l'émulateur de terminal # if [ $DEBUG = $VRAI ]; then echo $CMD else $CMD & fi