* Jacques L'helgoualc'h <[EMAIL PROTECTED]> [2005-06-19 15:10] : > François TOURDE a écrit, dimanche 19 juin 2005, à 13:42 : > > Jacques L'helgoualc'h écrivait: > [...] > > > $ LC_ALL=fr_FR sort fichier > > > Dvorak_Symphony_n°7_in_D_Minor_op.70_I-Allegro > > > Dvorak_Symphony_n°7_in_D_Minor_op.70_III-Scherzo > > > Dvorak_Symphony_n°7_in_D_Minor_op.70_II-Poco > > > Dvorak_Symphony_n°7_in_D_Minor_op.70_IV-Finale > > > > Pas mal! Si Dvorak avait nommé son second mouvement Andante, alors ça > > aurait marché. Ne me demande pas pourquoi, je viens de tester ça sur > > ma machine (même version de sort), et j'ai pareil que toi. Si je > > change Poco pour Andante, alors le tri est correct. > > C'est un « Poco adagio » (j'ai coupé toute la fin) ; avec « Adagio ma > non troppo » ça irait aussi. > > En LC_ALL=C on retrouve le même désordre avec « sort -d », qui ignore > les _- ... Est-ce que ce ne serait pas un bogue local de ce pu^Hcoquin > de sort ? À mon avis, probablement pas. D'après la page Info de coreutils :
(1) If you use a non-POSIX locale (e.g., by setting `LC_ALL' to `en_US'), then `sort' may produce output that is sorted differently than you're accustomed to. In that case, set the `LC_ALL' environment variable to `C'. Note that setting only `LC_COLLATE' has two problems. First, it is ineffective if `LC_ALL' is also set. Second, it has undefined behavior if `LC_CTYPE' (or `LANG', if `LC_CTYPE' is unset) is set to an incompatible value. For example, you get undefined behavior if `LC_CTYPE' is `ja_JP.PCK' but `LC_COLLATE' is `en_US.UTF-8'. En fait, avec une locale fr_FR, sort utilise les chaînes suivantes pour faire les comparaisons : ...IAllegro... ...IIPoco... ...IIIScherzo... ...IVFinale... (on peut s'en rendre compte en remplaçant le '-' par un 'A' par exemple). "LC_ALL=C sort ..." ou "LC_COLLATE=C sort ..." fait ce qu'il semble normal en incluant le caractere - dans sa comparaison. Fred -- Comment poser les questions de manière intelligente ? http://www.gnurou.org/documents/smart-questions-fr.html Comment signaler efficacement un bug ? http://www.chiark.greenend.org.uk/~sgtatham/bugs-fr.html -- Pensez à lire la FAQ de la liste avant de poser une question : http://wiki.debian.net/?DebianFrench Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

