Arg, j'ai bien evidement oublie l'attachement..

On Sat, Apr 26, 2003 at 02:16:15PM +0200, Martin Quinson wrote:
> On Fri, Apr 25, 2003 at 09:56:48AM +0200, Denis Barbier wrote:
> > On Thu, Apr 24, 2003 at 11:36:41PM +0200, Christian Perrier wrote:
> > [...]
> > > Seul "d�faut" : �a oblige � bien penser � mettre � jour les deux
> > > tables de correspondance en plus des templates debconf si une nouvelle
> > > langue est ajout�e au logiciel upstream.
> > [...]
> > 
> > Pas n�cessairement, tu peux mettre les langues dans un fichier
> > debian/langs sous la forme
> >    us English
> >    cz Czech
> >    tw Traditional Chinese
> >    ...
> 
> Il me semble que ceci est tout de meme une liste courante, et que la
> duppliquer dans tous les paquets est un peu lourd. C'est l'objectif du
> paquet iso-codes. De plus, ce paquet fournit aussi la traduction de tous les
> noms de langues dans toutes les langues (ou du moins, c'est l'un de ses
> objectifs).
> 
> Il me semble qu'une meilleure solution ici serait de demander au mainteneur
> d'iso-codes de faire un ptit script permettant de faire les conversions qui
> vont bien (nom <-> code), et d'obtenir la traduction des noms. 
> 
> En attachement, un ptit script offrant l'API suivante :
> USAGE: iso-codes getcode (language|country)
> 
>        iso-codes getlang    code
>        iso-codes getcountry code
> 
> Et on peut faire code=`iso-codes getcode French`
> pour avoir code==fr
> 
> On devrait pouvoir traduire, au moins dans le sens en->autre, mais j'ai pas
> reussi a le faire car gettext(1) me resiste. Si quelqu'un y arrive, je pense
> que ce script gagnerait a etre inclu dans le paquet iso-codes, et je ferais
> le rapport et suivi de bug necessaire.
> 
> > et tu utilises ce fichier pour construire les scripts config et
> > postinst lors de la g�n�ration du paquet. C'est AMA la meilleure
> > fa�on d'assurer la coh�rence entre les 2 scripts, mais il ne
> > faut pas se planter dans la g�n�ration des commandes shell.
> 
> Oui. Ca aussi, ca gagnerait a etre generalise et placer dans un script
> dedie, il me semble.
> 
> Bye, Mt.
> 
> -- 
> Dans le pass�, il y avait plus de futur que maintenant.
>    -- Le Chat
> 
> 
> -- 
> To UNSUBSCRIBE, email to [EMAIL PROTECTED]
> with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
> 
> 

-- 
The "US department of defense" should be renamed the "US department of
attack". 
#! /bin/bash

usage () {
    echo "USAGE: iso-codes getcode (language|country)"
    echo
    echo "       iso-codes getlang    code"
    echo "       iso-codes getcountry code"
    exit $1
}

getcode () {
    cat /usr/share/iso-codes/iso-3166.tab | while read line ; do
        name=`echo $line|cut -f2- -d' '`
        if [ "$1" == "$name" ] ; then
            echo $line |cut -f1 -d' '
        fi
    done
    cat /usr/share/iso-codes/iso-639.tab | while read line ; do
        name=`echo $line|cut -f4- -d' '`
        if [ "$1" == "$name" ] ; then
            echo $line |cut -f3 -d' '
        fi
    done
}

getlang () {
    cat /usr/share/iso-codes/iso-639.tab | while read line ; do
        name=`echo $line|cut -f3 -d' '`
        if [ "$1" == "$name" ] ; then
            echo $line |cut -f4- -d' '
        fi
    done
}

getcountry () {
    cat /usr/share/iso-codes/iso-3166.tab | while read line ; do
        name=`echo $line|cut -f1 -d' '`
        if [ "$1" == "$name" ] ; then
            echo $line |cut -f2- -d' '
        fi
    done
}




case "$1" in
    getcode)
        [ $# == 2 ] || usage 1
        getcode $2
        ;;
    getlang)
        [ $# == 2 ] || usage 1
        getlang $2
        ;;
    getcountry)
        [ $# == 2 ] || usage 1
        getcountry $2
        ;;
    *)
        usage 1;;
esac

Répondre à