Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

detection charset

3 réponses
Avatar
Mihamina (R12y) Rakotomandimby
Bonjour,
J'ai une arborescence d'un meme projet qui mixe joyeusement les fichiers
en utf-8 et iso-8859-1

Dans les faits, je n'ouvre jamais deux fichiers de charset différents,
car je travaille sur un sous-projet en meme temps et un sous projet à
toujours le meme charset.

De meme, je referme Emacs en switchant de sous-projet (je fais une pause
café avant le switch). Est-ce que je peux faire confiance à Emacs pour
detecter et utiliser le charset qu'il faut (et ne pas le changer)?

Pour info, je suis avec un emacs-snapshot de Debian Sid, vierge de tout
~/.emacs tuné.

Merci.

3 réponses

Avatar
Le TeXnicien de Surface
Mihamina (R12y) Rakotomandimby écrivait :

Bonjour,
J'ai une arborescence d'un meme projet qui mixe joyeusement les fichiers
en utf-8 et iso-8859-1

Dans les faits, je n'ouvre jamais deux fichiers de charset différents,
car je travaille sur un sous-projet en meme temps et un sous projet à
toujours le meme charset.

De meme, je referme Emacs en switchant de sous-projet (je fais une pause
café avant le switch). Est-ce que je peux faire confiance à Emacs pour
detecter et utiliser le charset qu'il faut (et ne pas le changer)?


Moi, je place une ligne
-*- coding: iso-8859-1 -*- ou bien
-*- coding: utf-8 -*-
parmi les trois premières (je pense que après trois ce n'est plus efficace
mais faudrait vérifier)
en commentant en accord avec le langage avec lequel je travaille.

jeqça
--
Le TeXnicien de Surface
Avatar
Vincent Lefevre
Dans l'article <4656859a$0$5103$,
Le TeXnicien de Surface écrit:

Moi, je place une ligne
-*- coding: iso-8859-1 -*- ou bien
-*- coding: utf-8 -*-
parmi les trois premières (je pense que après trois ce n'est plus
efficace mais faudrait vérifier) en commentant en accord avec le
langage avec lequel je travaille.



Emacs est capable de détecter le charset sans avoir besoin de ça.
J'utilise ceci dans mon .emacs:

(prefer-coding-system 'latin-1)
(and (boundp 'coding-category-utf-8)
(set-coding-priority
'( coding-category-utf-8
coding-category-iso-8-1
coding-category-iso-8-2
coding-category-raw-text )))

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)
Avatar
Matthieu Moy
Vincent Lefevre <vincent+ writes:

Dans l'article <4656859a$0$5103$,
Le TeXnicien de Surface écrit:

Moi, je place une ligne
-*- coding: iso-8859-1 -*- ou bien
-*- coding: utf-8 -*-
parmi les trois premières (je pense que après trois ce n'est plus
efficace mais faudrait vérifier) en commentant en accord avec le
langage avec lequel je travaille.



Emacs est capable de détecter le charset sans avoir besoin de ça.
J'utilise ceci dans mon .emacs:



Il a des heuristiques pour le faire, oui. Mais il y a toujours des cas
où elles ratent ...

Par exemple, tu prends un fichier avec *une* lettre accentuée en
UTF-8, dans un projet en UTF-8. Tu ouvres le fichier, tu supprimes
cette lettre, tu sauves et tu fermes.

Tu réouvre le fichier, Emacs n'a pas d'élément pour choisir, il prends
le codage par defaut, et c'est latin-1 chez toi. Tu ajoutes un accent,
tu sauves, et ça y est, tu as un fichier latin1 au milieu d'un projet
UTF-8.

Et par ailleurs, les documents UTF-8 sont pour la plupart des
documents latin-1 parfaitement valides ...

--
Matthieu