diff --git a/bash/src/_output_color.sh b/bash/src/_output_color.sh index ce0dd77..afe6428 100644 --- a/bash/src/_output_color.sh +++ b/bash/src/_output_color.sh @@ -6,15 +6,15 @@ function __esection() { local length="${COLUMNS:-80}" setx lsep=__complete "$prefix" "$length" - - tooenc "$COULEUR_BLEUE$lsep$COULEUR_NORMALE" + recho "$COULEUR_BLEUE$lsep$COULEUR_NORMALE" [ -n "$*" ] || return 0 length=$((length - 1)) setx -a lines=echo "$1" for line in "${lines[@]}"; do setx line=__complete "$prefix- $line" "$length" - tooenc "$COULEUR_BLEUE$line-$COULEUR_NORMALE" + recho "$COULEUR_BLEUE$line-$COULEUR_NORMALE" done - tooenc "$COULEUR_BLEUE$lsep$COULEUR_NORMALE" + recho "$COULEUR_BLEUE$lsep$COULEUR_NORMALE" } function __etitle() { local -a lines; local maxlen=0 @@ -23,10 +23,10 @@ function __etitle() { setx -a lines=echo "$1" for line in "${lines[@]}"; do [ ${#line} -gt $maxlen ] && maxlen=${#line} - tooenc "${prefix}${COULEUR_BLEUE}T $line$COULEUR_NORMALE" + recho "${prefix}${COULEUR_BLEUE}T $line$COULEUR_NORMALE" done maxlen=$((maxlen + 2)) - tooenc "${prefix}${COULEUR_BLEUE}T$(__complete "" $maxlen -)${COULEUR_NORMALE}" + recho "${prefix}${COULEUR_BLEUE}T$(__complete "" $maxlen -)${COULEUR_NORMALE}" } function __edesc() { local -a lines @@ -34,7 +34,7 @@ function __edesc() { setx -a lines=echo "$1" for line in "${lines[@]}"; do - tooenc "${prefix}${COULEUR_BLEUE}>${COULEUR_NORMALE} $line" + recho "${prefix}${COULEUR_BLEUE}>${COULEUR_NORMALE} $line" done } function __ebanner() { @@ -43,35 +43,35 @@ function __ebanner() { local length="${COLUMNS:-80}" setx lsep=__complete "$prefix" "$length" = - tooenc "$COULEUR_ROUGE$lsep" + recho "$COULEUR_ROUGE$lsep" length=$((length - 1)) setx -a lines=echo "$1" for line in "" "${lines[@]}" ""; do setx line=__complete "$prefix= $line" "$length" - tooenc "$line=" + recho "$line=" done - tooenc "$lsep$COULEUR_NORMALE" + recho "$lsep$COULEUR_NORMALE" } -function __eimportant() { tooenc "$(__edate)$(__eindent0)${COULEUR_ROUGE}!${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __eattention() { tooenc "$(__edate)$(__eindent0)${COULEUR_JAUNE}*${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __eerror() { tooenc "$(__edate)$(__eindent0)${COULEUR_ROUGE}E${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __ewarn() { tooenc "$(__edate)$(__eindent0)${COULEUR_JAUNE}W${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __enote() { tooenc "$(__edate)$(__eindent0)${COULEUR_VERTE}N${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __einfo() { tooenc "$(__edate)$(__eindent0)${COULEUR_BLEUE}I${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __edebug() { tooenc "$(__edate)$(__eindent0)${COULEUR_BLANCHE}D${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __eimportant() { recho "$(__edate)$(__eindent0)${COULEUR_ROUGE}!${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __eattention() { recho "$(__edate)$(__eindent0)${COULEUR_JAUNE}*${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __eerror() { recho "$(__edate)$(__eindent0)${COULEUR_ROUGE}E${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __ewarn() { recho "$(__edate)$(__eindent0)${COULEUR_JAUNE}W${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __enote() { recho "$(__edate)$(__eindent0)${COULEUR_VERTE}N${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __einfo() { recho "$(__edate)$(__eindent0)${COULEUR_BLEUE}I${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __edebug() { recho "$(__edate)$(__eindent0)${COULEUR_BLANCHE}D${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estep() { tooenc "$(__edate)$(__eindent0)${COULEUR_BLANCHE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepe() { tooenc "$(__edate)$(__eindent0)${COULEUR_ROUGE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepw() { tooenc "$(__edate)$(__eindent0)${COULEUR_JAUNE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepn() { tooenc "$(__edate)$(__eindent0)${COULEUR_VERTE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepi() { tooenc "$(__edate)$(__eindent0)${COULEUR_BLEUE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estep_() { tooenc_ "$(__edate)$(__eindent0)${COULEUR_BLANCHE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepe_() { tooenc_ "$(__edate)$(__eindent0)${COULEUR_ROUGE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepw_() { tooenc_ "$(__edate)$(__eindent0)${COULEUR_JAUNE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepn_() { tooenc_ "$(__edate)$(__eindent0)${COULEUR_VERTE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __estepi_() { tooenc_ "$(__edate)$(__eindent0)${COULEUR_BLEUE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estep() { recho "$(__edate)$(__eindent0)${COULEUR_BLANCHE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepe() { recho "$(__edate)$(__eindent0)${COULEUR_ROUGE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepw() { recho "$(__edate)$(__eindent0)${COULEUR_JAUNE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepn() { recho "$(__edate)$(__eindent0)${COULEUR_VERTE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepi() { recho "$(__edate)$(__eindent0)${COULEUR_BLEUE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estep_() { recho_ "$(__edate)$(__eindent0)${COULEUR_BLANCHE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepe_() { recho_ "$(__edate)$(__eindent0)${COULEUR_ROUGE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepw_() { recho_ "$(__edate)$(__eindent0)${COULEUR_JAUNE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepn_() { recho_ "$(__edate)$(__eindent0)${COULEUR_VERTE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __estepi_() { recho_ "$(__edate)$(__eindent0)${COULEUR_BLEUE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __action() { tooenc "$(__edate)$(__eindent0)${COULEUR_BLANCHE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __asuccess() { tooenc "$(__edate)$(__eindent0)${COULEUR_VERTE}✔${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __afailure() { tooenc "$(__edate)$(__eindent0)${COULEUR_ROUGE}✘${COULEUR_NORMALE} $(__eindent "$1" " ")"; } -function __adone() { tooenc "$(__edate)$(__eindent0)$(__eindent "$1")"; } +function __action() { recho "$(__edate)$(__eindent0)${COULEUR_BLANCHE}.${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __asuccess() { recho "$(__edate)$(__eindent0)${COULEUR_VERTE}✔${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __afailure() { recho "$(__edate)$(__eindent0)${COULEUR_ROUGE}✘${COULEUR_NORMALE} $(__eindent "$1" " ")"; } +function __adone() { recho "$(__edate)$(__eindent0)$(__eindent "$1")"; } diff --git a/bash/src/_output_vanilla.sh b/bash/src/_output_vanilla.sh index c37509d..cbd466f 100644 --- a/bash/src/_output_vanilla.sh +++ b/bash/src/_output_vanilla.sh @@ -6,23 +6,23 @@ function __esection() { local length="${COLUMNS:-80}" setx lsep=__complete "$prefix" "$length" - - tooenc "$lsep" + recho "$lsep" [ -n "$*" ] || return 0 length=$((length - 1)) setx -a lines=echo "$1" for line in "${lines[@]}"; do setx line=__complete "$prefix- $line" "$length" - tooenc "$line-" + recho "$line-" done - tooenc "$lsep" + recho "$lsep" } function __etitle() { local p="TITLE: " i=" " - tooenc "$(__edate)$(__eindent0)${p}$(__eindent "$1" "$i")" + recho "$(__edate)$(__eindent0)${p}$(__eindent "$1" "$i")" } function __edesc() { local p="DESC: " i=" " - tooenc "$(__edate)$(__eindent0)${p}$(__eindent "$1" "$i")" + recho "$(__edate)$(__eindent0)${p}$(__eindent "$1" "$i")" } function __ebanner() { local -a lines @@ -30,37 +30,37 @@ function __ebanner() { local length="${COLUMNS:-80}" setx lsep=__complete "$prefix" "$length" = - tooenc "$lsep" + recho "$lsep" length=$((length - 1)) setx -a lines=echo "$1" for line in "" "${lines[@]}" ""; do setx line=__complete "$prefix= $line" "$length" - tooenc "$line=" + recho "$line=" done - tooenc "$lsep" + recho "$lsep" } -function __eimportant() { tooenc "$(__edate)$(__eindent0)IMPORTANT! $(__eindent "$1" " ")"; } -function __eattention() { tooenc "$(__edate)$(__eindent0)ATTENTION! $(__eindent "$1" " ")"; } -function __eerror() { tooenc "$(__edate)$(__eindent0)ERROR: $(__eindent "$1" " ")"; } -function __ewarn() { tooenc "$(__edate)$(__eindent0)WARNING: $(__eindent "$1" " ")"; } -function __enote() { tooenc "$(__edate)$(__eindent0)NOTE: $(__eindent "$1" " ")"; } -function __einfo() { tooenc "$(__edate)$(__eindent0)INFO: $(__eindent "$1" " ")"; } -function __edebug() { tooenc "$(__edate)$(__eindent0)DEBUG: $(__eindent "$1" " ")"; } -function __eecho() { tooenc "$(__edate)$(__eindent0)$(__eindent "$1")"; } -function __eecho_() { tooenc_ "$(__edate)$(__eindent0)$(__eindent "$1")"; } +function __eimportant() { recho "$(__edate)$(__eindent0)IMPORTANT! $(__eindent "$1" " ")"; } +function __eattention() { recho "$(__edate)$(__eindent0)ATTENTION! $(__eindent "$1" " ")"; } +function __eerror() { recho "$(__edate)$(__eindent0)ERROR: $(__eindent "$1" " ")"; } +function __ewarn() { recho "$(__edate)$(__eindent0)WARNING: $(__eindent "$1" " ")"; } +function __enote() { recho "$(__edate)$(__eindent0)NOTE: $(__eindent "$1" " ")"; } +function __einfo() { recho "$(__edate)$(__eindent0)INFO: $(__eindent "$1" " ")"; } +function __edebug() { recho "$(__edate)$(__eindent0)DEBUG: $(__eindent "$1" " ")"; } +function __eecho() { recho "$(__edate)$(__eindent0)$(__eindent "$1")"; } +function __eecho_() { recho_ "$(__edate)$(__eindent0)$(__eindent "$1")"; } -function __estep() { tooenc "$(__edate)$(__eindent0). $(__eindent "$1" " ")"; } -function __estepe() { tooenc "$(__edate)$(__eindent0).E $(__eindent "$1" " ")"; } -function __estepw() { tooenc "$(__edate)$(__eindent0).W $(__eindent "$1" " ")"; } -function __estepn() { tooenc "$(__edate)$(__eindent0).N $(__eindent "$1" " ")"; } -function __estepi() { tooenc "$(__edate)$(__eindent0).I $(__eindent "$1" " ")"; } -function __estep_() { tooenc_ "$(__edate)$(__eindent0). $(__eindent "$1" " ")"; } -function __estepe_() { tooenc_ "$(__edate)$(__eindent0).E $(__eindent "$1" " ")"; } -function __estepw_() { tooenc_ "$(__edate)$(__eindent0).W $(__eindent "$1" " ")"; } -function __estepn_() { tooenc_ "$(__edate)$(__eindent0).N $(__eindent "$1" " ")"; } -function __estepi_() { tooenc_ "$(__edate)$(__eindent0).I $(__eindent "$1" " ")"; } +function __estep() { recho "$(__edate)$(__eindent0). $(__eindent "$1" " ")"; } +function __estepe() { recho "$(__edate)$(__eindent0).E $(__eindent "$1" " ")"; } +function __estepw() { recho "$(__edate)$(__eindent0).W $(__eindent "$1" " ")"; } +function __estepn() { recho "$(__edate)$(__eindent0).N $(__eindent "$1" " ")"; } +function __estepi() { recho "$(__edate)$(__eindent0).I $(__eindent "$1" " ")"; } +function __estep_() { recho_ "$(__edate)$(__eindent0). $(__eindent "$1" " ")"; } +function __estepe_() { recho_ "$(__edate)$(__eindent0).E $(__eindent "$1" " ")"; } +function __estepw_() { recho_ "$(__edate)$(__eindent0).W $(__eindent "$1" " ")"; } +function __estepn_() { recho_ "$(__edate)$(__eindent0).N $(__eindent "$1" " ")"; } +function __estepi_() { recho_ "$(__edate)$(__eindent0).I $(__eindent "$1" " ")"; } -function __action() { tooenc "$(__edate)$(__eindent0)ACTION: $(__eindent "$1" " ")"; } -function __asuccess() { tooenc "$(__edate)$(__eindent0)(OK) $(__eindent "$1" " ")"; } -function __afailure() { tooenc "$(__edate)$(__eindent0)(KO) $(__eindent "$1" " ")"; } -function __adone() { tooenc "$(__edate)$(__eindent0)$(__eindent "$1")"; } +function __action() { recho "$(__edate)$(__eindent0)ACTION: $(__eindent "$1" " ")"; } +function __asuccess() { recho "$(__edate)$(__eindent0)(OK) $(__eindent "$1" " ")"; } +function __afailure() { recho "$(__edate)$(__eindent0)(KO) $(__eindent "$1" " ")"; } +function __adone() { recho "$(__edate)$(__eindent0)$(__eindent "$1")"; } diff --git a/bash/src/base.input.sh b/bash/src/base.input.sh index 9e9acf0..c81fbc8 100644 --- a/bash/src/base.input.sh +++ b/bash/src/base.input.sh @@ -62,7 +62,7 @@ function ask_yesno() { else __eecho_ "Voulez-vous continuer?" 1>&2 fi - tooenc_ " $prompt " 1>&2 + echo_ " $prompt " 1>&2 uread r is_yes "${r:-$default}" else @@ -198,17 +198,17 @@ function __rv_read() { __eecho_ "Entrez la valeur" 1>&2 fi if [ -n "$__rv_readline" ]; then - tooenc_ ": " 1>&2 + echo_ ": " 1>&2 uread -e ${__rv_d:+-i"$__rv_d"} "${__rv_opts[@]}" __rv_r else if [ -n "$__rv_d" ]; then if [ -n "$__rv_showdef" ]; then - tooenc_ " [$__rv_d]" 1>&2 + echo_ " [$__rv_d]" 1>&2 else - tooenc_ " [****]" 1>&2 + echo_ " [****]" 1>&2 fi fi - tooenc_ ": " 1>&2 + echo_ ": " 1>&2 uread "${__rv_opts[@]}" __rv_r [ -n "$__rv_nl" ] && echo fi @@ -217,6 +217,7 @@ function __rv_read() { _setv "$__rv_v" "$__rv_r" return 0 fi + echo done } @@ -268,7 +269,7 @@ function simple_menu() { else __eecho_ "Entrez le numéro de l'option choisie" 1>&2 fi - tooenc_ ": " 1>&2 + echo_ ": " 1>&2 uread __sm_choice # Valeur par défaut @@ -291,7 +292,7 @@ function simple_menu() { let __sm_c=$__sm_c+1 if [ "$__sm_c" -eq 5 ]; then # sauter une ligne toutes les 4 tentatives - tooenc "" 1>&2 + echo 1>&2 __sm_c=0 fi done @@ -438,7 +439,7 @@ function __void_actions_menu() { if [ $c -eq 0 ]; then [ -n "$title" ] && __etitle "$title" 1>&2 __eecho_ "=== Actions disponibles: " 1>&2 - tooenc "$action_title" 1>&2 + recho "$action_title" 1>&2 fi if [ -n "$actyc" ]; then __eecho_ "$actyc" 1>&2 @@ -447,7 +448,7 @@ function __void_actions_menu() { else __eecho_ "Entrez l'action à effectuer" 1>&2 fi - tooenc_ ": " 1>&2 + echo_ ": " 1>&2 uread choice if [ -z "$choice" -a -n "$default_action" ]; then select_action="$default_action" @@ -468,7 +469,7 @@ function __void_actions_menu() { let c=$c+1 if [ $c -eq 5 ]; then # sauter une ligne toutes les 4 tentatives - tooenc "" 1>&2 + echo 1>&2 c=0 fi done @@ -484,21 +485,21 @@ function __options_actions_menu() { i=1 for option in "${options[@]}"; do if [ "$option" == "$select_option" ]; then - tooenc "$i*- $option" 1>&2 + echo "$i*- $option" 1>&2 else - tooenc "$i - $option" 1>&2 + echo "$i - $option" 1>&2 fi let i=$i+1 done __estepn_ "Actions disponibles: " 1>&2 - tooenc "$action_title" 1>&2 + recho "$action_title" 1>&2 fi if [ -n "$optyc" ]; then __eecho_ "$optyc" 1>&2 else __eecho_ "Entrez l'action et le numéro de l'option choisie" 1>&2 fi - tooenc_ ": " 1>&2 + echo_ ": " 1>&2 uread choice # vérifier la saisie @@ -572,7 +573,7 @@ function __options_actions_menu() { let c=$c+1 if [ $c -eq 5 ]; then # sauter une ligne toutes les 4 tentatives - tooenc "" 1>&2 + echo "" 1>&2 c=0 fi done diff --git a/bash/src/base.output.sh b/bash/src/base.output.sh index ae51afd..15f2040 100644 --- a/bash/src/base.output.sh +++ b/bash/src/base.output.sh @@ -83,7 +83,7 @@ function err_isatty() { ################################################################################ -function tooenc() { +function uecho() { # $1 étant une chaine encodée en utf-8, l'afficher dans l'encoding de sortie $2 # qui vaut par défaut $NULIB_OUTPUT_ENCODING local value="$1" to="${2:-$NULIB_OUTPUT_ENCODING}" @@ -93,9 +93,8 @@ function tooenc() { iconv -f -utf-8 -t "$to" <<<"$value" fi } -function uecho() { tooenc "$*"; } -function tooenc_() { +function uecho_() { # $1 étant une chaine encodée en utf-8, l'afficher sans passer à la ligne dans # l'encoding de sortie $2 qui vaut par défaut $NULIB_OUTPUT_ENCODING local value="$1" to="${2:-$NULIB_OUTPUT_ENCODING}" @@ -105,7 +104,6 @@ function tooenc_() { recho_ "$value" | iconv -f utf-8 -t "$to" fi } -function uecho_() { tooenc_ "$*"; } export NULIB_QUIETLOG export NULIB__TMPLOG @@ -210,7 +208,7 @@ function __eindent() { # indenter les lignes de $1, sauf la première local -a lines; local line first=1 local indent="$(__eindent0)$2" - setx -a lines=echo "$1" + setx -a lines=recho "$1" for line in "${lines[@]}"; do if [ -n "$first" ]; then recho "$line" @@ -232,7 +230,11 @@ function __complete() { } PRETTYOPTS=() -function set_verbosity() { :;} +function set_verbosity() { + case "$1" in + -D|--debug) NULIB_DEBUG=1;; + esac +} function check_verbosity() { return 0; } function get_verbosity_option() { :;} diff --git a/bash/tests/test-output.sh b/bash/tests/test-output.sh index 56a5812..3b369d7 100755 --- a/bash/tests/test-output.sh +++ b/bash/tests/test-output.sh @@ -7,7 +7,6 @@ Multiline= Banner= args=( "afficher divers messages avec les fonctions e*" - -D,--debug '$set_debug' -d,--date NULIB_ELOG_DATE=1 -m,--myname NULIB_ELOG_MYNAME=1 -n,--nc,--no-color '$__set_no_colors 1'