Forum: Rails France problème de jeu de caractère

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
88121bbaff086ad61f10eaad843385b2?d=identicon&s=25 Lily ^_^ (lilyweb)
on 2009-05-27 12:28
Bonjour,

Je rencontre un problème avec Ruby on Rails et ce n'est pas la première
fois.

J'enregistre tous mes fichiers en utf-8 avec Scite. J'ai abandonné
notepad++ que je croyais coupable de mon souci.

Pour une raison mystérieuse, il semble que des caractères invisibles se
glissent dans le fichier si par malheur Scite le charge dans un autre
encodage que UTF-8, et c'est ensuite irréversible. Je me retrouve devant
l'erreur :

lib/fight.rb:16: syntax error, unexpected kEND, expecting $end

Si je retappe EXACTEMENT le même code, dans un fichier tout neuf créé et
sauvé en UTF-8 dès le début, je n'ai plus d'erreur. C'est exactement le
même code, à la virgule près. En revanche, ctrl+A et un copié / collé
dans un nouveau fichier re génère la même erreur.

Quelqu'un a déjà rencontré ce problème ? Aurait une solution ? Et
surtout une méthode pour éviter définitivement ce problème.
2fd0206c71a1b22a9cc6293f38537461?d=identicon&s=25 Cyril Mougel (shingara)
on 2009-05-27 13:29
(Received via mailing list)
Le 27 mai 09 à 12:28, Lily Bang a écrit :

> se
> le
> même code, à la virgule près. En revanche, ctrl+A et un copié / collé
> dans un nouveau fichier re génère la même erreur.
>
> Quelqu'un a déjà rencontré ce problème ? Aurait une solution ? Et
> surtout une méthode pour éviter définitivement ce problème.


Iconv ? pour transformer l'encodage de ton fichier ?

--
Cyril Mougel
http://blog.shingara.fr
88121bbaff086ad61f10eaad843385b2?d=identicon&s=25 Lily ^_^ (lilyweb)
on 2009-05-27 14:09
Je peux déjà choisir l'encodage avec Scite et notepad++, et j'ai essayé
de convertir aussi avec kaboom.
Est-ce qu'iconv ferait quelque chose de plus ?

Bon, il se trouve que j'ai réussi à récupérer mon fichier en repassant à
notepad++ et en lui demandant de reconvertir le fichier en UTF-8 sans
BOM (la même manip ne fonctionnait pas sous Scite). Je suis quand même
preneuse si quelqu'un connaît l'explication de ce problème... ça
m'aiderait à l'éviter par la suite.
B7f80de9fb9a11da74b1c941a8c562ba?d=identicon&s=25 Stéphane Akkaoui (Guest)
on 2009-05-27 14:27
(Received via mailing list)
Les charsets, c'est comme les TimeZones, c'est la plaie. Tout ce qui
est fait pour permettre aux gens de communiquer entre eux quand ils
sont tous différents, c'est la plaie.

Je ne crois pas que ton problème soit lié à du code et encore moins à
rails.
Il faut juste que tu fasse gaffe à l'encodage que tu utilise avec ton
(tes) éditeur(s) de texte. Il y en a qui gère ça plus ou moins bien,
mais je n'ai aucun référence à te donner : personnellement je les
trouve tous pourris.

En règle générale :
  - Essaye de trouver une préférence dans les configurations de ton
éditeur pour le forcer à toujours utiliser un encodage précis.
  - Essaye d'utiliser partout ce même encodage.
  - Essaye d'éviter le copier-coller entre des fichiers d'encodage
différent (ça ne devrait pas poser de problèmes, mais on ne sait
jamais, avec certains OS et éditeurs...)

Et surtout : bon courage :)

--
Stéphane Akkaoui
http://imeuble.info
http://www.sociabliz.com

Le 27 mai 09 à 14:09, Lily Bang a écrit :
53d6845ee2656b1ef581523da50834b8?d=identicon&s=25 Jean-Philippe Moal (Guest)
on 2009-05-27 16:24
(Received via mailing list)
Lily Bang a écrit :
> Je peux déjà choisir l'encodage avec Scite et notepad++, et j'ai essayé
> de convertir aussi avec kaboom.
> Est-ce qu'iconv ferait quelque chose de plus ?
>
> Bon, il se trouve que j'ai réussi à récupérer mon fichier en repassant à
> notepad++ et en lui demandant de reconvertir le fichier en UTF-8 sans
> BOM (la même manip ne fonctionnait pas sous Scite). Je suis quand même
> preneuse si quelqu'un connaît l'explication de ce problème... ça
> m'aiderait à l'éviter par la suite.
>
Le BOM est une série de caractères en tout début de fichier qui indique
explicitement que celui-ci est en Unicode.

Par contre j'en ai jamais vu l'utilité, et pas mal de trucs foirent à
cause de ca, donc en gros à ne pas utiliser (à moins que quelqu'un
puisse m'éclairer sur son utilité ?).
This topic is locked and can not be replied to.