Comment la “force” d'un fichier ISO-8859-1ness?
Je me souviens quand j'avais l'habitude de développer le site au Japon - où il y a trois différents encodages de caractères en devises - les développeurs ont eu un truc à la "force" de l'encodage d'un fichier source en sorte qu'il serait toujours ouverte dans leurs IDEs dans le bon encodage.
Ce qu'ils ont fait était de mettre un commentaire au début du fichier contenant un caractère Japonais que seulement existé dans l'encodage des caractères - il n'était pas dans les autres! Cela a fonctionné parfaitement.
Je m'en souviens parce que maintenant j'en ai un similaire, quoique Anglophone, problème.
J'ai des fichiers qui DOIVENT être ISO-8859-1, mais ne cessent de s'ouvrir dans mon éditeur (Bluefish 1.0.7 sur Linux) en UTF-8. Ce n'est normalement pas un problème, SAUF pour livre sterling (£) les symboles et autres joyeusetés. Ne vous méprenez pas, je peux corriger le fichier et l'enregistrer de nouveau comme ISO-8859-1, mais je veux qu'il toujours ouvrir ISO-8859-1 dans mon éditeur.
Donc, il y a toute sorte de caractère hacks - comme je l'ai mentionné ci-dessus - pour ce faire? Ou de toute autre méthode?
PS. Unicode défenseurs de la /les évangélistes n'ont pas besoin de perdre leur temps à essayer de me convertir, car je suis déjà un d'entre eux! C'est bancal ancien système, j'ai hérité 🙁
PPS. Merci de ne pas dire "utiliser un autre éditeur" parce que je suis un vieux con et mis dans mes voies 🙂
Aha~, c'est "Bluefish" de l'éditeur (1.0.7) sur Linux
J'aime bien les deux réponses aussi. Difficile de choisir une meilleure réponse. N'avez pas essayé l'une ou l'autre méthode encore, ce qui pourra changer les choses!
zOMG, la mise à niveau de Bluefish 2.0.1 (que je ne connaissais pas parce que OpenSUSE met Bluefish dans un daft référentiel) qui semble ne pas créer l'origine du problème en premier lieu. ;^_^
OriginalL'auteur Dougal | 2010-07-09
Vous devez vous connecter pour publier un commentaire.
Normalement, si vous avez un
£
encodé en ISO-8859-1 (ie. un seul octet 0xA3), qui ne va pas dans le cadre d'une UTF-8 valide séquence d'octets, sauf si vous êtes malchanceux et il vient juste après un autre haut-peu-ensemble de caractères de manière à les faire travailler ensemble en tant que UTF-8 de la séquence. (Vous pourriez garde contre qu'en mettant un£
sur son propre en haut du fichier).Donc pas dans l'éditeur d'ouvrir un tel fichier en UTF-8; si elle le faisait, ce serait perdre la
£
complètement. Si votre éditeur ne que les, “utiliser un autre éditeur”—sérieusement! Si votre problème est que votre éditeur de chargement de fichiers que ne pas contenir£
ou tout autre caractère non-ASCII comme UTF-8, ce qui entraîne de nouvelles£
vous ajouter à eux pour être enregistrés en UTF-8 par la suite, puis de nouveau, il suffit de rajouter un£
personnage sur sa propre le haut du fichier doit certainement arrêter.Ce que vous ne pouvez pas faire est de faire de l'éditeur de charger l'ISO-8859-1 par opposition à tout autre jeu de caractères où tous seul haut-peu-ensemble d'octets sont valides. C'est seulement encodages multi-octets comme de l'UTF-8 et Shift-JIS qui vous pouvez les exclure en utilisant les séquences d'octets qui ne sont pas valides pour ce type d'encodage.
Ce qui se fait habituellement sur Windows, c'est que l'éditeur va charger le fichier en utilisant le système de page de code par défaut, généralement 1252 sur l'Ouest de la machine. (Non en fait tout à fait la même que la norme ISO-8859-1, mais presque.)
Certains éditeurs ont une fonction où vous pouvez leur donner un indice de ce que l'encodage à utiliser avec un commentaire dans la première ligne, par exemple. pour vim:
La syntaxe varient d'un éditeur à l'éditeur/de configuration. Mais il est généralement assez laid. D'autres contrôles peuvent exister à défaut de changement codages sur un répertoire, mais puisque nous ne savons pas ce que vous utilisez...
Dans le long terme, les fichiers stockés comme ISO-8859-1 ou un autre codage qui n'est pas de l'UTF-8 besoin d'aller loin et de mourir, bien sûr. 🙂
Meilleure réponse pour les matières premières technicalness et parce que "utiliser un autre éditeur" (genre de) s'est avéré être la meilleure solution! Je suis gêné et humilié 😉
OriginalL'auteur bobince
Vous pouvez mettre à caractère
ÿ
(0xFF) dans le fichier. Il est invalide en UTF8. BBEdit sur Mac identifie correctement comme ISO-8859-1. Vous ne savez pas comment votre éditeur de texte de votre choix faire.OriginalL'auteur Stephen Chu