Myriad Blog 1.3.0 Tuesday, May 21st, 2019 at 06:59am 

Tuesday, Jul 7th, 2015 at 04:49pm
Harmony 9.6 étape 790 : les codepages

 
Un petit rappel de l'histoire de l'informatique
 
Avant l'invention de l'Unicode, qui a normalisé un jeu de caractères étendu couvrant la quasi-totalité des langages contemporains, plus tout un tas d'autres choses (symboles, dessins, points et barres, etc), on était limité à 222 caractères.
 
Cela peut paraître suffisant, mais on s'aperçoit vite que c'est trop peu pour coder l'ensemble des caractères qu'on peut trouver dans tous les alphabets différents autour du monde.
 
Alors, à cette époque, les informaticiens se sont dit : une partie des caractères (les lettres latines, les chiffres et la ponctuation) seront communes à tous, mais en fonction de la langue de l'utilisateur, une partie du jeu de caractères (126 caractères) sera adaptée.
 
Ainsi, le caractère n° 200 pourra correspondre à un i tréma pour les français, mais à un o barré pour les norvégiens.
 
C'était une solution comme une autre, mais qui n'était pas sans problème. Impossible de mixer plusieurs langues, nécessité de connaître la langue (le jeu de caractères) pour afficher un texte, et limité à 126 caractères spécifiques, ce qui ne satisfaisait ni les Chinois, ni les Japonais.
 
Si on ajoute à cela que chaque fabricant d'OS a conçu ses propres jeux, différents de celui du voisin, on comprend la galère pour le programmeur (et pourquoi les textes accentués Macintosh ne s'affichaient pas bien sur Windows).
 
La norme MIDI n'a jamais supporté l'Unicode, et il semble que les concepteurs de la norme aient oublié qu'il y avait dans le monde  utilisateurs non anglophones et des langues avec des accentués ou des caractères non latins.
 
Les textes (noms de la partition, paroles...) sont stockées dans le fichier MIDI avec le jeu de caractères que vous voulez, mais le jeu choisi n'est pas indiqué dans le fichier !
Cela signifie que si vous chargez un fichier MIDI, vous devez savoir à l'avance quel jeu de caractère le concepteur a décidé d'utiliser.
 
Jusqu'ici, Harmony Assistant supportait les jeux de caractère d'Europe de l'Ouest: Roman sur Macintosh, Codepage 1252 sur Windows, ou CodePage 437 sur MS/DOS. Tant pis pour les autres.
 
Notre ami Tchèque Vaclav avait créé un programme pour changer le jeu de caractères des paroles après import MIDI, ce qui lui permettait d'importer des fichiers Karaoké en Tchèque, mais ce n'était pas pratique.  
Nous avons donc décidé d'étendre une bonne fois pour toute la gamme des jeux de caractères que nous reconnaissons. La prochaine version permettra donc d'importer des fichiers MIDI contenant des textes encodés selon les normes suivantes:
 
  • Adobe ISOLatin1 Encoding Vector
  • Adobe Standard Encoding Vector
  • Adobe Symbol Encoding Vector
  • Apple Macintosh Roman-Croatian
  • Apple Macintosh Cyrillic
  • Apple Greek extended for Macintosh
  • Apple Macintosh Greek
  • Apple Macintosh Roman-Icelandic and Faroese
  • Apple Macintosh Roman
  • Apple Macintosh Roman-Romanian
  • Apple Macintosh Roman-Turkish
  • Atari ST/TT Character Encoding
  • Microsoft Windows Codepage 1250 (EE)
  • Microsoft Windows Codepage 1251 (Cyrl)
  • Microsoft Windows Codepage 1252 (ANSI)
  • Microsoft Windows Codepage 1253 (Greek)
  • Microsoft Windows Codepage 1254 (Turk)
  • Microsoft Windows Codepage 1255 (Hebr)
  • Microsoft Windows Codepage 1256 (Arab)
  • Microsoft Windows Codepage 1257 (BaltRim)
  • Microsoft Windows Codepage 1258 (Viet)
  • MS-DOS Codepage 437 (US)
  • MS-DOS Codepage 737 (Greek IBM PC)
  • MS-DOS Codepage 775 (BaltRim)
  • MS-DOS Codepage 850 (Multilingual Latin 1)
  • MS-DOS Codepage 851 (Greece) - obsolete
  • MS-DOS Codepage 852 (Multilingual Latin 2)
  • MS-DOS Codepage 853 (Multilingual Latin 3)
  • MS-DOS Codepage 855 (Russia)
  • MS-DOS Codepage 857 (Multilingual Latin 5)
  • MS-DOS Codepage 860 (Portugal)
  • MS-DOS Codepage 861 (Iceland)
  • MS-DOS Codepage 862 (Israel)
  • MS-DOS Codepage 863 (French Canadian)
  • MS-DOS Codepage 864 (Arabic)
  • MS-DOS Codepage 865 (Norway)
  • MS-DOS Codepage 866 (Russia)
  • MS-DOS Codepage 869 (Greece)
  • MS-DOS Codepage 874 (Thai)
  • MS-DOS Codepage 895 (Kamenicky CS)
  • DEC Multinational Character Set (DEC MCS)
  • EBCDIC Codepage 037
  • EBCDIC Codepage 1026 (Turkish)
  • EBCDIC Codepage 1047
  • EBCDIC Codepage 500
  • EBCDIC Codepage 875 (Greek)
  • HP48 Character Encoding
  • HP Roman-8
  • ISO/IEC 646:1991 French Canadian
  • ISO/IEC 646:1991 Swiss
  • ISO/IEC 646:1991 German
  • ISO/IEC 646:1991
  • ISO/IEC 646:1991 Finnish
  • ISO/IEC 646:1991 French
  • ISO/IEC 646:1991 United Kingdom
  • ISO/IEC 646:1991 (common for all ISO/IEC 646)
  • ISO/IEC 646:1991 US ASCII
  • ISO/IEC 646:1991 Italian
  • ISO/IEC 646:1991 Dutch
  • ISO/IEC 646:1991 Norwegian/Danish
  • ISO/IEC 646:1991 Portuguese
  • ISO/IEC 646:1991 Swedish
  • ISO/IEC 8859-1:1998 Latin Alphabet No. 1
  • ISO/IEC 8859-10:1998 Latin Alphabet No. 6
  • ISO/IEC 8859-13:1998 Latin Alphabet No. 7 (Baltic Rim)
  • ISO/IEC 8859-14:1998 Latin Alphabet No. 8 (Celtic)
  • ISO/IEC 8859-15:1999 Latin Alphabet No. 9
  • ISO/IEC 8859-2:1999 Latin Alphabet No. 2
  • ISO/IEC 8859-3:1999 Latin Alphabet No. 3
  • ISO/IEC 8859-4:1998 Latin Alphabet No. 4
  • ISO/IEC 8859-5:1999 Latin/Cyrillic Alphabet
  • ISO/IEC 8859-6:1999 Latin/Arabic Alphabet
  • ISO 8859-7:1987 Latin/Greek Alphabet
  • ISO/IEC 8859-8:1999 Latin/Hebrew Alphabet
  • ISO/IEC 8859-9:1999 Latin Alphabet No. 5
  • koi8-r (Russian U*IX encoding)
  • Microsoft Windows MS LineDraw
  • NEXTSTEP Encoding Vector
  • Microsoft Windows Symbol Encoding Vector
  • TeX dcr input
  • TeX dcr output
     
    Nous espérons que ce sera suffisant pour satisfaire tout le monde
  • by Olivier Guillion


    Most recent first
    Oldest first

    Top of page
    Legal information Last update:  (c) Myriad