Il existe des BOM (Byte Order Mark) permettant de détecter la nature
Unicode de fichiers encodés en UTF-8 et UTF-16. Par ailleurs il est
admis que le BOM n'est pas indispensable pour UTF-8. Dans quelques
éditeurs de texte que je pratique dans l'environnement Windows l'ajout
ou non du BOM UTF-8 est paramétrable.
Mon problème du moment est de pouvoir éditer des fichiers exploités
ensuite par un programme nécessitant la présence d'un BOM UTF-8 pour
qu'il puisse détecter que le fichier est en Unicode et non en ANSI.
Emacs de son côté semble ignorer le BOM au début d'un fichier UTF-8 et
l'affiche comme un caractère "normal" (il indique bien pour ce caractère
buffer code: #xEF #xBB #xBF) tout en prenant en compte la nature
Unicode.
Et à l'enregistrement, il n'y a pas de coding-system permettant
l'ajout du BOM quand il n'y figure pas (alors qu'il y a un choix en
utf-16 avec les coding-system with-signature).
Savez-vous si on a la possibilité de forcer l'insertion de ce BOM en
UTF-8 ? Sur cette manip je suis avec Emacs 23 (EmacsW32).
Il existe des BOM (Byte Order Mark) permettant de détecter la nature
Unicode de fichiers encodés en UTF-8 et UTF-16. Par ailleurs il est
admis que le BOM n'est pas indispensable pour UTF-8. Dans quelques
éditeurs de texte que je pratique dans l'environnement Windows l'ajout
ou non du BOM UTF-8 est paramétrable.
Mon problème du moment est de pouvoir éditer des fichiers exploités
ensuite par un programme nécessitant la présence d'un BOM UTF-8 pour
qu'il puisse détecter que le fichier est en Unicode et non en ANSI.
Emacs de son côté semble ignorer le BOM au début d'un fichier UTF-8 et
l'affiche comme un caractère "normal" (il indique bien pour ce caractère
buffer code: #xEF #xBB #xBF) tout en prenant en compte la nature
Unicode.
Et à l'enregistrement, il n'y a pas de coding-system permettant
l'ajout du BOM quand il n'y figure pas (alors qu'il y a un choix en
utf-16 avec les coding-system with-signature).
Savez-vous si on a la possibilité de forcer l'insertion de ce BOM en
UTF-8 ? Sur cette manip je suis avec Emacs 23 (EmacsW32).
Il existe des BOM (Byte Order Mark) permettant de détecter la nature
Unicode de fichiers encodés en UTF-8 et UTF-16. Par ailleurs il est
admis que le BOM n'est pas indispensable pour UTF-8. Dans quelques
éditeurs de texte que je pratique dans l'environnement Windows l'ajout
ou non du BOM UTF-8 est paramétrable.
Mon problème du moment est de pouvoir éditer des fichiers exploités
ensuite par un programme nécessitant la présence d'un BOM UTF-8 pour
qu'il puisse détecter que le fichier est en Unicode et non en ANSI.
Emacs de son côté semble ignorer le BOM au début d'un fichier UTF-8 et
l'affiche comme un caractère "normal" (il indique bien pour ce caractère
buffer code: #xEF #xBB #xBF) tout en prenant en compte la nature
Unicode.
Et à l'enregistrement, il n'y a pas de coding-system permettant
l'ajout du BOM quand il n'y figure pas (alors qu'il y a un choix en
utf-16 avec les coding-system with-signature).
Savez-vous si on a la possibilité de forcer l'insertion de ce BOM en
UTF-8 ? Sur cette manip je suis avec Emacs 23 (EmacsW32).
Le BOM en UTF-8 est un non-sens ! UTF-8 ne dépend pas de l'ordre
interne des octets du processeur.
> Mon problème du moment est de pouvoir éditer des fichiers exploités
> ensuite par un programme nécessitant la présence d'un BOM UTF-8 pour
> qu'il puisse détecter que le fichier est en Unicode et non en ANSI.
Le BOM ne devrait pas avoir pour rôle d'indiquer que le fichier est
encodé en Unicode ou non (ce qui n'a d'ailleurs pas de sens non plus
puisque Unicode n'est pas un système de codage). Il ne devrait servir
qu'à indiquer l'ordre des octets en UTF-16 et en UTF-32.
De toutes manières, faire reposer la reconnaissance de l'encodage
UTF-8 sur la présence d'un BOM n'est pas une technique sûre : certains
encodages non UTF-* utilisent *tous* les octets.
> Emacs de son côté semble ignorer le BOM au début d'un fichier UTF-8
> et l'affiche comme un caractère "normal" (il indique bien pour ce
> caractère buffer code: #xEF #xBB #xBF) tout en prenant en compte la
> nature Unicode. Et à l'enregistrement, il n'y a pas de coding-system
> permettant l'ajout du BOM quand il n'y figure pas (alors qu'il y a
> un choix en utf-16 avec les coding-system with-signature).
Heureusement que emacs procède comme ça. C'est la bonne manière de
faire.
> Savez-vous si on a la possibilité de forcer l'insertion de ce BOM en
> UTF-8 ? Sur cette manip je suis avec Emacs 23 (EmacsW32).
On peut peut-être coder un truc pour automatiser cela mais je ne le
ferai pas : c'est contraire à mon éthique. ;-)
Le BOM en UTF-8 est un non-sens ! UTF-8 ne dépend pas de l'ordre
interne des octets du processeur.
> Mon problème du moment est de pouvoir éditer des fichiers exploités
> ensuite par un programme nécessitant la présence d'un BOM UTF-8 pour
> qu'il puisse détecter que le fichier est en Unicode et non en ANSI.
Le BOM ne devrait pas avoir pour rôle d'indiquer que le fichier est
encodé en Unicode ou non (ce qui n'a d'ailleurs pas de sens non plus
puisque Unicode n'est pas un système de codage). Il ne devrait servir
qu'à indiquer l'ordre des octets en UTF-16 et en UTF-32.
De toutes manières, faire reposer la reconnaissance de l'encodage
UTF-8 sur la présence d'un BOM n'est pas une technique sûre : certains
encodages non UTF-* utilisent *tous* les octets.
> Emacs de son côté semble ignorer le BOM au début d'un fichier UTF-8
> et l'affiche comme un caractère "normal" (il indique bien pour ce
> caractère buffer code: #xEF #xBB #xBF) tout en prenant en compte la
> nature Unicode. Et à l'enregistrement, il n'y a pas de coding-system
> permettant l'ajout du BOM quand il n'y figure pas (alors qu'il y a
> un choix en utf-16 avec les coding-system with-signature).
Heureusement que emacs procède comme ça. C'est la bonne manière de
faire.
> Savez-vous si on a la possibilité de forcer l'insertion de ce BOM en
> UTF-8 ? Sur cette manip je suis avec Emacs 23 (EmacsW32).
On peut peut-être coder un truc pour automatiser cela mais je ne le
ferai pas : c'est contraire à mon éthique. ;-)
Le BOM en UTF-8 est un non-sens ! UTF-8 ne dépend pas de l'ordre
interne des octets du processeur.
> Mon problème du moment est de pouvoir éditer des fichiers exploités
> ensuite par un programme nécessitant la présence d'un BOM UTF-8 pour
> qu'il puisse détecter que le fichier est en Unicode et non en ANSI.
Le BOM ne devrait pas avoir pour rôle d'indiquer que le fichier est
encodé en Unicode ou non (ce qui n'a d'ailleurs pas de sens non plus
puisque Unicode n'est pas un système de codage). Il ne devrait servir
qu'à indiquer l'ordre des octets en UTF-16 et en UTF-32.
De toutes manières, faire reposer la reconnaissance de l'encodage
UTF-8 sur la présence d'un BOM n'est pas une technique sûre : certains
encodages non UTF-* utilisent *tous* les octets.
> Emacs de son côté semble ignorer le BOM au début d'un fichier UTF-8
> et l'affiche comme un caractère "normal" (il indique bien pour ce
> caractère buffer code: #xEF #xBB #xBF) tout en prenant en compte la
> nature Unicode. Et à l'enregistrement, il n'y a pas de coding-system
> permettant l'ajout du BOM quand il n'y figure pas (alors qu'il y a
> un choix en utf-16 avec les coding-system with-signature).
Heureusement que emacs procède comme ça. C'est la bonne manière de
faire.
> Savez-vous si on a la possibilité de forcer l'insertion de ce BOM en
> UTF-8 ? Sur cette manip je suis avec Emacs 23 (EmacsW32).
On peut peut-être coder un truc pour automatiser cela mais je ne le
ferai pas : c'est contraire à mon éthique. ;-)
Le 4 juin 2008 à 11:44, Paul Gaborit vraute :De toutes manières, faire reposer la reconnaissance de l'encodage
UTF-8 sur la présence d'un BOM n'est pas une technique sûre : certains
encodages non UTF-* utilisent *tous* les octets.
Certes, mais là je n'essaie pas de faire suivant les règles de l'art
mais j'essaie de me rendre compatible avec un truc qui est ce qu'il est
et sur lequel je ne peux pas intervenir (il s'agit des fonctions d'E/S
internes fichier du compilateur PowerBuilder avec lequel je maintiens
plusieurs applications. La doc est claire : PB sait faire avec des
fichiers encodés en ANSI ou UTF mais la détection des formats UTF repose
sur la présence de BOM en UTF-8 et dans les 2 UTF-16).
On peut peut-être coder un truc pour automatiser cela mais je ne le
ferai pas : c'est contraire à mon éthique. ;-)
Il faut que je regarde si je peux forcer l'usage d'UTF-8 en ouverture du
fichier par mon applicatif sans avoir de BOM, mais ça ne m'enchante pas
d'écrire des paramètres "en dur". Ni d'utiliser un éditeur tiers juste
pour pouvoir enregistrer un fichier UTF-8 avec BOM.
Le 4 juin 2008 à 11:44, Paul Gaborit vraute :
De toutes manières, faire reposer la reconnaissance de l'encodage
UTF-8 sur la présence d'un BOM n'est pas une technique sûre : certains
encodages non UTF-* utilisent *tous* les octets.
Certes, mais là je n'essaie pas de faire suivant les règles de l'art
mais j'essaie de me rendre compatible avec un truc qui est ce qu'il est
et sur lequel je ne peux pas intervenir (il s'agit des fonctions d'E/S
internes fichier du compilateur PowerBuilder avec lequel je maintiens
plusieurs applications. La doc est claire : PB sait faire avec des
fichiers encodés en ANSI ou UTF mais la détection des formats UTF repose
sur la présence de BOM en UTF-8 et dans les 2 UTF-16).
On peut peut-être coder un truc pour automatiser cela mais je ne le
ferai pas : c'est contraire à mon éthique. ;-)
Il faut que je regarde si je peux forcer l'usage d'UTF-8 en ouverture du
fichier par mon applicatif sans avoir de BOM, mais ça ne m'enchante pas
d'écrire des paramètres "en dur". Ni d'utiliser un éditeur tiers juste
pour pouvoir enregistrer un fichier UTF-8 avec BOM.
Le 4 juin 2008 à 11:44, Paul Gaborit vraute :De toutes manières, faire reposer la reconnaissance de l'encodage
UTF-8 sur la présence d'un BOM n'est pas une technique sûre : certains
encodages non UTF-* utilisent *tous* les octets.
Certes, mais là je n'essaie pas de faire suivant les règles de l'art
mais j'essaie de me rendre compatible avec un truc qui est ce qu'il est
et sur lequel je ne peux pas intervenir (il s'agit des fonctions d'E/S
internes fichier du compilateur PowerBuilder avec lequel je maintiens
plusieurs applications. La doc est claire : PB sait faire avec des
fichiers encodés en ANSI ou UTF mais la détection des formats UTF repose
sur la présence de BOM en UTF-8 et dans les 2 UTF-16).
On peut peut-être coder un truc pour automatiser cela mais je ne le
ferai pas : c'est contraire à mon éthique. ;-)
Il faut que je regarde si je peux forcer l'usage d'UTF-8 en ouverture du
fichier par mon applicatif sans avoir de BOM, mais ça ne m'enchante pas
d'écrire des paramètres "en dur". Ni d'utiliser un éditeur tiers juste
pour pouvoir enregistrer un fichier UTF-8 avec BOM.
On peut aussi le faire à la main en insérant ce qu'il faut via C-q
suivi des bonnes valeurs (en octal).
On peut aussi le faire à la main en insérant ce qu'il faut via C-q
suivi des bonnes valeurs (en octal).
On peut aussi le faire à la main en insérant ce qu'il faut via C-q
suivi des bonnes valeurs (en octal).
Le 4 juin 2008 à 15:02, Paul Gaborit s'est exprimé ainsi :On peut aussi le faire à la main en insérant ce qu'il faut via C-q
suivi des bonnes valeurs (en octal).
Je ne pensais plus à cette possibilité.
J'ai testé et c'est une solution qui pourra suffire je ne dois
heureusement pas refaire mes fichiers tous les jours.
Comme je ne pratique pas l'octal dans le texte j'en profite pour
indiquer un réglage de ma config pour ceux qui préfèreraient la base
décimale pour C-q :
;; choix de la base décimale pour la saisie de caractères quotés (C-q n°)
(setq read-quoted-char-radix 10)
Le 4 juin 2008 à 15:02, Paul Gaborit s'est exprimé ainsi :
On peut aussi le faire à la main en insérant ce qu'il faut via C-q
suivi des bonnes valeurs (en octal).
Je ne pensais plus à cette possibilité.
J'ai testé et c'est une solution qui pourra suffire je ne dois
heureusement pas refaire mes fichiers tous les jours.
Comme je ne pratique pas l'octal dans le texte j'en profite pour
indiquer un réglage de ma config pour ceux qui préfèreraient la base
décimale pour C-q :
;; choix de la base décimale pour la saisie de caractères quotés (C-q n°)
(setq read-quoted-char-radix 10)
Le 4 juin 2008 à 15:02, Paul Gaborit s'est exprimé ainsi :On peut aussi le faire à la main en insérant ce qu'il faut via C-q
suivi des bonnes valeurs (en octal).
Je ne pensais plus à cette possibilité.
J'ai testé et c'est une solution qui pourra suffire je ne dois
heureusement pas refaire mes fichiers tous les jours.
Comme je ne pratique pas l'octal dans le texte j'en profite pour
indiquer un réglage de ma config pour ceux qui préfèreraient la base
décimale pour C-q :
;; choix de la base décimale pour la saisie de caractères quotés (C-q n°)
(setq read-quoted-char-radix 10)
> > On peut aussi le faire à la main en insérant ce qu'il faut via C-q
> > suivi des bonnes valeurs (en octal).
>
> Je ne pensais plus à cette possibilité.
> J'ai testé et c'est une solution qui pourra suffire je ne dois
> heureusement pas refaire mes fichiers tous les jours.
Ensuite, vous utilisez C-( et C-) pour apprendre à emacs la macro qui
fait tout d'un coup. Puis vous produisez automatiquement le code lisp
(souvent pas beau mais fonctionnel) à attacher à un raccourci clavier
dans votre .emacs...
> Comme je ne pratique pas l'octal dans le texte j'en profite pour
> indiquer un réglage de ma config pour ceux qui préfèreraient la base
> décimale pour C-q :
>
> ;; choix de la base décimale pour la saisie de caractères quotés
> ;; (C-q n°)
> (setq read-quoted-char-radix 10)
Dans le cas qui nous intéresse, j'aurais eu tendance à choisir la base
16. Ça me paraît le plus simple pour sairir les FF, EF, FE, BF, 00 et
autres BB des BOMs. ;-)
> > On peut aussi le faire à la main en insérant ce qu'il faut via C-q
> > suivi des bonnes valeurs (en octal).
>
> Je ne pensais plus à cette possibilité.
> J'ai testé et c'est une solution qui pourra suffire je ne dois
> heureusement pas refaire mes fichiers tous les jours.
Ensuite, vous utilisez C-( et C-) pour apprendre à emacs la macro qui
fait tout d'un coup. Puis vous produisez automatiquement le code lisp
(souvent pas beau mais fonctionnel) à attacher à un raccourci clavier
dans votre .emacs...
> Comme je ne pratique pas l'octal dans le texte j'en profite pour
> indiquer un réglage de ma config pour ceux qui préfèreraient la base
> décimale pour C-q :
>
> ;; choix de la base décimale pour la saisie de caractères quotés
> ;; (C-q n°)
> (setq read-quoted-char-radix 10)
Dans le cas qui nous intéresse, j'aurais eu tendance à choisir la base
16. Ça me paraît le plus simple pour sairir les FF, EF, FE, BF, 00 et
autres BB des BOMs. ;-)
> > On peut aussi le faire à la main en insérant ce qu'il faut via C-q
> > suivi des bonnes valeurs (en octal).
>
> Je ne pensais plus à cette possibilité.
> J'ai testé et c'est une solution qui pourra suffire je ne dois
> heureusement pas refaire mes fichiers tous les jours.
Ensuite, vous utilisez C-( et C-) pour apprendre à emacs la macro qui
fait tout d'un coup. Puis vous produisez automatiquement le code lisp
(souvent pas beau mais fonctionnel) à attacher à un raccourci clavier
dans votre .emacs...
> Comme je ne pratique pas l'octal dans le texte j'en profite pour
> indiquer un réglage de ma config pour ceux qui préfèreraient la base
> décimale pour C-q :
>
> ;; choix de la base décimale pour la saisie de caractères quotés
> ;; (C-q n°)
> (setq read-quoted-char-radix 10)
Dans le cas qui nous intéresse, j'aurais eu tendance à choisir la base
16. Ça me paraît le plus simple pour sairir les FF, EF, FE, BF, 00 et
autres BB des BOMs. ;-)
Le 4 juin 2008 à 18:36, Paul Gaborit s'est exprimé ainsi :Dans le cas qui nous intéresse, j'aurais eu tendance à choisir la base
16. Ça me paraît le plus simple pour sairir les FF, EF, FE, BF, 00 et
autres BB des BOMs. ;-)
En fait quand je visualise les infos du "BOM" UTF-8 avec C-u C-x = emacs
ne m'indique qu'un seul code de caractère pour octets dans le buffer :
character: [] (65279, #o177377, #xfeff)
preferred charset: gb18030 (GB18030)
code point: 0x84319533
syntax: w which means: word
buffer code: #xEF #xBB #xBF
file code: not encodable by coding system iso-latin-1-unix
display: no font available
Donc un coup de C-q 6 5 2 7 9 RET et mon BOM est inséré. On pouvait
insérer séparément EF BB BF qui sont intégrés en un seul caractère
ensuite ? J'ai du mal à suivre ce matin...
Le 4 juin 2008 à 18:36, Paul Gaborit s'est exprimé ainsi :
Dans le cas qui nous intéresse, j'aurais eu tendance à choisir la base
16. Ça me paraît le plus simple pour sairir les FF, EF, FE, BF, 00 et
autres BB des BOMs. ;-)
En fait quand je visualise les infos du "BOM" UTF-8 avec C-u C-x = emacs
ne m'indique qu'un seul code de caractère pour octets dans le buffer :
character: [] (65279, #o177377, #xfeff)
preferred charset: gb18030 (GB18030)
code point: 0x84319533
syntax: w which means: word
buffer code: #xEF #xBB #xBF
file code: not encodable by coding system iso-latin-1-unix
display: no font available
Donc un coup de C-q 6 5 2 7 9 RET et mon BOM est inséré. On pouvait
insérer séparément EF BB BF qui sont intégrés en un seul caractère
ensuite ? J'ai du mal à suivre ce matin...
Le 4 juin 2008 à 18:36, Paul Gaborit s'est exprimé ainsi :Dans le cas qui nous intéresse, j'aurais eu tendance à choisir la base
16. Ça me paraît le plus simple pour sairir les FF, EF, FE, BF, 00 et
autres BB des BOMs. ;-)
En fait quand je visualise les infos du "BOM" UTF-8 avec C-u C-x = emacs
ne m'indique qu'un seul code de caractère pour octets dans le buffer :
character: [] (65279, #o177377, #xfeff)
preferred charset: gb18030 (GB18030)
code point: 0x84319533
syntax: w which means: word
buffer code: #xEF #xBB #xBF
file code: not encodable by coding system iso-latin-1-unix
display: no font available
Donc un coup de C-q 6 5 2 7 9 RET et mon BOM est inséré. On pouvait
insérer séparément EF BB BF qui sont intégrés en un seul caractère
ensuite ? J'ai du mal à suivre ce matin...
> Donc un coup de C-q 6 5 2 7 9 RET et mon BOM est inséré. On pouvait
> insérer séparément EF BB BF qui sont intégrés en un seul caractère
> ensuite ? J'ai du mal à suivre ce matin...
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
> Donc un coup de C-q 6 5 2 7 9 RET et mon BOM est inséré. On pouvait
> insérer séparément EF BB BF qui sont intégrés en un seul caractère
> ensuite ? J'ai du mal à suivre ce matin...
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
> Donc un coup de C-q 6 5 2 7 9 RET et mon BOM est inséré. On pouvait
> insérer séparément EF BB BF qui sont intégrés en un seul caractère
> ensuite ? J'ai du mal à suivre ce matin...
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
Lorsqu'on bascule en UTF-16(LE/BE) ou en UTF-32(LE/BE), emacs insère
tout seul le BOM correspondant. Il ne le fait pas en UTF-8. Et mes
tentatives d'insértion du caractère FEFF (le BOM) si emacs est déjà en
UTF-8 n'insère pas la bonne séquence d'octets... Mais j'ai testé ça
très rapidement.
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
Lorsqu'on bascule en UTF-16(LE/BE) ou en UTF-32(LE/BE), emacs insère
tout seul le BOM correspondant. Il ne le fait pas en UTF-8. Et mes
tentatives d'insértion du caractère FEFF (le BOM) si emacs est déjà en
UTF-8 n'insère pas la bonne séquence d'octets... Mais j'ai testé ça
très rapidement.
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
Lorsqu'on bascule en UTF-16(LE/BE) ou en UTF-32(LE/BE), emacs insère
tout seul le BOM correspondant. Il ne le fait pas en UTF-8. Et mes
tentatives d'insértion du caractère FEFF (le BOM) si emacs est déjà en
UTF-8 n'insère pas la bonne séquence d'octets... Mais j'ai testé ça
très rapidement.
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
Lorsqu'on bascule en UTF-16(LE/BE) ou en UTF-32(LE/BE), emacs insère
tout seul le BOM correspondant. Il ne le fait pas en UTF-8. Et mes
tentatives d'insértion du caractère FEFF (le BOM) si emacs est déjà en
UTF-8 n'insère pas la bonne séquence d'octets... Mais j'ai testé ça
très rapidement.
utf-8 utf-8-auto
utf-8-auto-dos utf-8-auto-mac
utf-8-auto-unix utf-8-dos
utf-8-emacs utf-8-emacs-dos
utf-8-emacs-mac utf-8-emacs-unix
utf-8-mac utf-8-unix
utf-8-with-signature utf-8-with-signature-dos
utf-8-with-signature-mac utf-8-with-signature-unix
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
Lorsqu'on bascule en UTF-16(LE/BE) ou en UTF-32(LE/BE), emacs insère
tout seul le BOM correspondant. Il ne le fait pas en UTF-8. Et mes
tentatives d'insértion du caractère FEFF (le BOM) si emacs est déjà en
UTF-8 n'insère pas la bonne séquence d'octets... Mais j'ai testé ça
très rapidement.
utf-8 utf-8-auto
utf-8-auto-dos utf-8-auto-mac
utf-8-auto-unix utf-8-dos
utf-8-emacs utf-8-emacs-dos
utf-8-emacs-mac utf-8-emacs-unix
utf-8-mac utf-8-unix
utf-8-with-signature utf-8-with-signature-dos
utf-8-with-signature-mac utf-8-with-signature-unix
On peut partir d'un buffer que emacs considère comme encodé dans le
codage local (du genre iso-8859-1). Dans ce cas, il faut insérer les
trois octets EF, BB, BF pour insérer le BOM utf-8 (c'est là que la
base 16 me semble plus pratique...). Ensuite à la relecture du
fichier, emacs choisit tout seul le codage utf-8 (même si le BOM
apparaît comme un petit carré en début de fichier).
Lorsqu'on bascule en UTF-16(LE/BE) ou en UTF-32(LE/BE), emacs insère
tout seul le BOM correspondant. Il ne le fait pas en UTF-8. Et mes
tentatives d'insértion du caractère FEFF (le BOM) si emacs est déjà en
UTF-8 n'insère pas la bonne séquence d'octets... Mais j'ai testé ça
très rapidement.
utf-8 utf-8-auto
utf-8-auto-dos utf-8-auto-mac
utf-8-auto-unix utf-8-dos
utf-8-emacs utf-8-emacs-dos
utf-8-emacs-mac utf-8-emacs-unix
utf-8-mac utf-8-unix
utf-8-with-signature utf-8-with-signature-dos
utf-8-with-signature-mac utf-8-with-signature-unix