4680

Pour ce qui est du latex c'est certainement très bien, mais il faudrait que tu comprenne que beaucoup de gens (dont je fait partie) n'ont clairement pas envie de l'apprendre pour le faible usage qu'ils en feraient alors qu'il existe des outils wysiwyg me permettent de faire la même chose naturellement.

Par contre pour l'utf-8, je pencil. Ce n'est certes pas un outil magique qui fait que tout peut passer à l'unicode sans avoir a se soucier de rien, mais il a de très nombreux avantages.

Parmi ceux qui me viennent en premier à l'esprit il y a :
* taille réduite pour la majorité des langues. (Et même dans les langues à idéogrammes, les fichiers avec balisage comme xml, json,... et les fichiers de scripts sont majoritairement composés de caractères ascii standards. Je pense qu'en général, un programme a davantage à traiter ce genre de texte que le langage naturel.)
* pas de 0 dans le flux
* pas de problème de big/little endian
* compatibilité ascii standard -> utf-8

Le point ou je ne rejoint pas vraiment Kevin, c'est que le fait de ne pas connaitre directement l’emplacement des lettres est un vrai inconvénient, ça complexifie le traitement du texte. Cela est cependant mitigé par le fait que l'on a les bibliothèques pour faire ça ce n'est généralement pas ce qu'il y a de plus couteux en temps d’exécution.

l'UTF-16 est en effet désormais vraiment bâtard. C'était une bonne solution à l'époque ou unicode faisait seulement 16 bit. Maintenant, il cumule les défauts de l'UTF-8 et de l'UTF-32, sans aucun des avantages (sauf à considérer que l'unicode > 16bit n'existe pas).

Bref UTF-8 me semble une très bonne solution à la plupart des cas.
avatar

4681

Je voulais pas le dire mais je crayonne, l'UTF-16 est pire en fin de compte. En plus l'API sous Windows est vraiment une horreur en ce sens (wcscpy je crois au lieu de strcpy ? mais est-ce que wcsvsprintf existe ? non c'est vswprintf ou _vswprintf… bref je me souviens jamais, pis t'as des appels qui n'existent qu'en version W et d'autres fois qu'en version A), du coup la majorité de mes projets C/++ (ceux que je commence comme ça juste pour moi) je les fais en ASCII.
Bien sûr ça n'a plus beaucoup de sens de parler de ces soucis puisqu'en général les langages de haut niveau tels que C# traitent ce problème de façon transparente, mais on peut pas dire que Microsoft ait bien joué leur coup.
avatar
Highway Runners, mon jeu de racing à la Outrun qu'il est sorti le 14 décembre 2016 ! N'hésitez pas à me soutenir :)

https://itunes.apple.com/us/app/highway-runners/id964932741

4682

Ben ils ont commencé à supporter Unicode a une époque où le standard était en cours d'évolution, ça n'a pas aidé non plus.

Les problèmes de compatibilité avec l'UTF-8 dont parle Kevin n'auraient pas lieu d'être si UTF-8 n'était pas utilisé, donc ça n'a pas de sens comme argument. Quant à la taille, c'est vrai que l'UTF-16 ou 32 prennent plus de place, mais je ne sais pas si c'est vraiment un souci sur les machines modernes - et pour le XML et consorts, quand on utilise ce genre de formats c'est qu'on ne se préoccupe pas vraiment de la compacité des données de toute façon tongue
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4683

Zerosquare (./4682) :
Les problèmes de compatibilité avec l'UTF-8 dont parle Kevin n'auraient pas lieu d'être si UTF-8 n'était pas utilisé,
confus
En effet, aucune technologie n'a de problème avec aucune technologie si elle n'est pas utilisée.
De là a dire que c'est un argument valide ...
avatar

4684

L'argument de la compatibilité avec UTF-8 est recevable maintenant vu la masse de trucs en UTF-8, mais si à l'origine ç'avait été UTF-16 (ou autre chose) qui avait été choisi, la situation serait exactement inverse. Autrement dit, ça ne veut pas dire qu'UTF-8 est meilleur.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4685

Pourquoi l'un devrait forcément remplacer l'autre?

UTF-16 et UTF-8 ont toujours été utilisées conjointement, le but n'a jamais vraiment été que les deux soit concurrentes. Pendant longtemps, il était d'usage que :
- UTF-8 servait pour le transfert et le stoquage (pas de problème de 0 ou d'endian, compatibilité ascii, ...)
- UTF-16 servait aux manipulations en interne dans le programme(plus facile car taille de caractère fixe).

Sauf que maintenant que l'unicode fait plus de 16 bits, UTF-16 a perdu son principal intérêt.
Il faudrait utiliser l'UTF-32 qui fait forcement peur car plus lourd, donc il se fait plutôt remplacer par l'UTF-8.
avatar

4686

Mouais, avoir deux standards c'est pas franchement pratique...

Et le gros souci avec UTF-8, c'est surtout qu'il permet aux vieilles applis de marchotter sans modification, mais mal, ce qui encourage les gens à laisser les choses en l'état. L'UTF-16 a au moins le mérite de forcer une adaptation du code, donc une occasion de faire les choses proprement.
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4687

Zerosquare (./4686) :
Mouais, avoir deux standards c'est pas franchement pratique...
Au contraire c'est très pratique. En Java par exemple, en interne c'est de l'UTF-16, mais comme c'est intégré au langage, c'est totalement transparent et on n'a pas a gérer les soucis qui vont avec.
Pour les sorties on peut choisir son encodage et utf-8 est généralement un bon choix pour les raisons que j'ai cité.
Zerosquare (./4686) :
Et le gros souci avec UTF-8, c'est surtout qu'il permet aux vieilles applis de marchotter sans modification, mais mal, ce qui encourage les gens à laisser les choses en l'état. L'UTF-16 a au moins le mérite de forcer une adaptation du code, donc une occasion de faire les choses proprement.
Sauf que si on suit ton raisonnement le UFT-16 est aussi une adaptation foireuse, il faudrait utiliser l'UTF-32
avatar

4688

Ben oui. (Ou alors dire aux Chinois "nan mais arrêtez avec vos caractères à la con, vous prenez toute la place" grin)
avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4689

chinois > nan mais arrêtez avec vos caractères à la con, vous prenez toute la place !
avatar
Webmaster du site Ti-FRv3 (et aussi de DevLynx)
Si moins de monde enculait le système, alors celui ci aurait plus de mal à nous sortir de si grosses merdes !
"L'erreur humaine est humaine"©Nil (2006) // topics/6238-moved-jamais-jaurais-pense-faire-ca

4690

!call Gustave De Kervern

4691

Zerosquare (./4688) :
Ben oui. (Ou alors dire aux Chinois "nan mais arrêtez avec vos caractères à la con, vous prenez toute la place" grin)

Ou dire aux gars de l'Unicode d'arrêter de définir dix fois le même caractère et de mettre tous les dessins possibles dans les polices...
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

4692

Faut pas non plus jeter le bébé avec l'eau du bain. En soi l'UTF-8 n'est pas une mauvaise idée.
La mauvaise idée, c'est de le penser compatible. Un changement aussi profond dans l'interprétation qu'il faut faire d'une chaine de caractères.

Concrètement, l'erreur à l'origine de ces problèmes, c'est tous les développeurs qui ont développé en utilisant l'hypothèse qu'une chaîne de caractères et une chaîne d'octets sont identiques. Tant que les deux avaient la même sémantique, ça marchait. L'exemple de python 2 donné par Flan est d'ailleurs édifiant : même en séparant les types, tant qu'on essaie d'assimiler une chaîne d'octets à une châine de caractères, on crée quand même des bugs.

Hélas, le problème est présent dans de nombreux logiciels, sur toutes plateformes.
(en parlant de choix discutables, la possibilité d'avoir plusieurs codages pour le même caractère unicode n'est pas non plus l'idée du siècle)

4693

Tant qu'on utilise les chaînes de caractères comme un monoïde, c'est-à-dire qu'on se limite à concaténer sans découper, l'UTF-8 est totalement transparent. Et c'est de loin l'usage le plus courant dans les logiciels.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4694

Non. Pour l'affichage, ce n'est pas du tout transparent embarrassed
Et la concaténation est également très courante... et si tu mélanges les encodages, ça commence à être très moche embarrassed


C'est pour ça qu'un truc totalement incompatible a ses vertus, ça permet de repérer rapidement les bugs.
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

4695

flanker (./4694) :
C'est pour ça qu'un truc totalement incompatible a ses vertus, ça permet de repérer rapidement les bugs.

Perso les cassures aux changements de versions majeures, ça ne m'a jamais dérangé plus que ça. J'aimerais pas être chez les gars de MS qui essayent de maintenir une compatibilité entre tous les windows >= 32 bits, ça doit être vraiment l'enfer ^^

4696

Cela dit, quand Apple est passé à OsX et a cassé la compatibilité antérieure (il y avait bien "Classic", mais c'était bien la merde quand même), ça a pas mal râlé chez ceux qui avaient des produits pros achetés des fortunes et qui ne fonctionnaient plus d'une version à l'autre. De la même façon, c'est un peu pour ça qu'OS/2 n'a jamais vraiment pris (le lancement d'applis Windows pouvait se faire avec OS/2 2.1, mais au prix du lancement d'un "Windows" à chaque fois, autant dire que c'était trop gourmand pour les utilisateurs).
Une solution qui me semble raisonnable est d'assurer la rétro-compatibilité avec la version majeure intermédiaire. Ca permet de préparer les usager ET les développeurs, et ceux qui ne veulent pas de la version de transition attendent la suivante.
On aurait ainsi :
OS version 1, compatible A ; OS version 2, compatible A et B ; OS version 3, compatible B.
avatar
Pas tout à fait là, pas tout à fait la personne que vous croyez connaître.

4697

flanker (./4694) :
Non. Pour l'affichage, ce n'est pas du tout transparent embarrassed

Le toolkit s'en occupe (ou en mode console, le terminal).
Et la concaténation est également très courante... et si tu mélanges les encodages, ça commence à être très moche embarrassed

Je parle de concaténer de l'UTF-8 avec de l'UTF-8, pas avec n'importe quoi.

(Je suis dans la logique d'un locale UTF-8 où toutes les chaînes de caractères 8-bits sont en UTF-8 par défaut, comme c'est le cas sous les distributions modernes de GNU/Linux.)
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4698

Donc ce n'est pas transparent vu que l'application doit être modifiée pour prendre en compte l'UTF-8 si ses propres textes doivent être reencodés.
avatar
<<< Kernel Extremis©®™ >>> et Inventeur de la différence administratif/judiciaire ! (©Yoshi Noir)

<Vertyos> un poil plus mais elle suce bien quand même la mienne ^^
<Sabrina`> tinkiete flan c juste qu'ils sont jaloux que je te trouve aussi appétissant

4699

Les textes de l'application sont censés être en anglais ASCII pur (locale C). Les traductions sont gérées à part, dans des fichiers séparés dont l'encodage est spécifié dans les fichiers, et gettext gère la conversion. (Dans une application moderne, l'encodage utilisé est toujours l'UTF-8, mais gettext se débrouille très bien avec autre chose tant que c'est déclaré correctement dans l'entête du fichier .po.)
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4700

La tu parles du C mais certains langages acceptent des encodages autre que ASCII pur.
avatar

4701

Je parle des vrais langages (C et C++). tongue

Sinon, les langages qui acceptent des litéraux Unicode ont tout intérêt à demander que l'encodage soit spécifié, comme c'est le cas en Python, par exemple. Si ça dépend du locale du programmeur, c'est totalement foireux.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4702

avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo

4703

joli, juste pour faire chier grin

4704

4705

D'où tout l'intérêt d'utiliser des logiciels libres dans des dépôts fiables plutôt que des logiciels propriétaires reproduits sans permission par des personnes sans scrupules. tongue
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4706

Certes, mais l'inconvénient des dépôts c'est que tu n'as malheureusement pas toujours tout ce que tu veux dedans sad
avatar

4707

Kevin Kofler (./4705) :
D'où tout l'intérêt d'utiliser des logiciels libres dans des dépôts fiables plutôt que des logiciels propriétaires reproduits sans permission par des personnes sans scrupules.


http://www.techrepublic.com/blog/google-in-the-enterprise/malware-in-the-google-play-store-enemy-inside-the-gates/

4708

Ce n'était pas un logiciel libre.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

4709

(Max!)

4710

avatar
Zeroblog

« Tout homme porte sur l'épaule gauche un singe et, sur l'épaule droite, un perroquet. » — Jean Cocteau
« Moi je cherche plus de logique non plus. C'est surement pour cela que j'apprécie les Ataris, ils sont aussi logiques que moi ! » — GT Turbo