• [^] # Re: une bien belle fonction...

    Posté par . En réponse au message Questions sur les fonctions. Évalué à 3.

    Forcément, ici la fonction end_script est un bricolage de la part de quelqu’un qui découvre ses outils ;)

    Voici ce qui est finalement la même fonction après s’être frottée à quelques cas supplémentaires :

    # display an error when a variable required by the calling function is not set
    # USAGE: error_variable_not_set $function $variable
    error_variable_not_set() {
     local message function variable
     function="1ドル"
     variable="2ドル"
     case "${LANG%_*}" in
     ('fr')
     message='La fonction "%s" ne peut pas être appelée lorsque "%s" nʼa pas de valeur définie.\n'
     ;;
     ('en'|*)
     message='"%s" function can not be called when "%s" is not set.\n'
     ;;
     esac
     print_error
     printf "$message" "$function" "$variable"
     return 1
    }

    source

    # print a localized error message
    # USAGE: print_error
    print_error() {
     local string
     case "${LANG%_*}" in
     ('fr')
     string='Erreur :'
     ;;
     ('en'|*)
     string='Error:'
     ;;
     esac
     exec 1>&2
     printf '\n033円[1;31m%s033円[0m\n' "$string"
    }

    source