Problème avec la fonction insert

Le
Nicolas Matringe
Bonsoir

J'utilise la fonction (insert "acedfxxx") pour ajouter du texte dans un
fichier, or le texte effectivement inséré n'est pas celui que j'ai spécifié.
Mon code elisp est (insert "htFF9050070000")
et le résultat dans le fichier final : ht7FE44500130000

Comme si la chaîne était interprétée comme des nombres hexadécimaux et
que des 0 étaient insérés dedans.
C'est normal ? Comment faire pour insérer littéralement mes caractères ?

Merci d'avance
Nicolas
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Vincent Belaïche
Le #21774341
Salut,

Elisp est un langage à portée dynamique, es-tu sûr que la fonction insert qui
est appelée est la fonction insert standard, ou bien est-ce qu'elle n'est pas
surchargée dans le contexte où tu l'appelles.

Sinon autre piste, est-ce que ton code Elisp est dans un fichier encodée en
UTF8 et l'insertion est faite dans un fichier en ASCII.

A+,
Vincent.

Nicolas Matringe a écrit :
Bonsoir

J'utilise la fonction (insert "acedfxxx") pour ajouter du texte dans un
fichier, or le texte effectivement inséré n'est pas celui que j'ai
spécifié.
Mon code elisp est (insert "htFF9050070000")
et le résultat dans le fichier final : ht7FE44500130000

Comme si la chaîne était interprétée comme des nombres hexadécimaux et
que des 0 étaient insérés dedans.
C'est normal ? Comment faire pour insérer littéralement mes caractères ?

Merci d'avance
Nicolas
Nicolas Matringe
Le #21774301
Bonsoir

Vincent Belaïche a écrit :
Salut,

Elisp est un langage à portée dynamique, es-tu sûr que la fonction
insert qui est appelée est la fonction insert standard, ou bien est-ce
qu'elle n'est pas surchargée dans le contexte où tu l'appelles.



Je ne pense pas mais comment en être sûr? Si c'est le cas ce n'est en
tout cas pas de mon fait.


Sinon autre piste, est-ce que ton code Elisp est dans un fichier encodée
en UTF8 et l'insertion est faite dans un fichier en ASCII.



C'est une possibilité... Mais il me semble tout de même très étrange que
les caractères FF se transforment en 7FE. Ce sont des caractères, des
lettres, pas des représentations numériques.

Juste pour me rafraîchir la mémoire et si ce n'est pas abuser, comment
fait-on déjà pour voir le codage utilisé ?

Merci
Nicolas
A+,
Vincent.

Nicolas Matringe a écrit :
Bonsoir

J'utilise la fonction (insert "acedfxxx") pour ajouter du texte dans
un fichier, or le texte effectivement inséré n'est pas celui que j'ai
spécifié.
Mon code elisp est (insert "htFF9050070000")
et le résultat dans le fichier final : ht7FE44500130000

Comme si la chaîne était interprétée comme des nombres hexadécimaux et
que des 0 étaient insérés dedans.
C'est normal ? Comment faire pour insérer littéralement mes caractères ?

Merci d'avance
Nicolas
Nicolas Matringe
Le #21774281
On Nov 27, 7:58 pm, Nicolas Matringe
Bonsoir

Vincent Belaïche a écrit :

> Salut,

> Elisp est un langage à portée dynamique, es-tu sûr que la fonctio n
> insert qui est appelée est la fonction insert standard, ou bien est-c e
> qu'elle n'est pas surchargée dans le contexte où tu l'appelles.

Je ne pense pas mais comment en être sûr? Si c'est le cas ce n'est en
tout cas pas de mon fait.

> Sinon autre piste, est-ce que ton code Elisp est dans un fichier encod ée
> en UTF8 et l'insertion est faite dans un fichier en ASCII.

C'est une possibilité... Mais il me semble tout de même très étra nge que
les caractères FF se transforment en 7FE. Ce sont des caractères, des
lettres, pas des représentations numériques.



Après vérification, les deux fichiers (le .el et le fichier cible)
sont en iso-latin-1-dos
Je cherche une éventuelle autre fonction insert dans les modes déjà
chargés par ailleurs...

Nicolas
Xavier Maillard
Le #21774071
Nicolas Matringe
Je cherche une éventuelle autre fonction insert dans les modes déjà
chargés par ailleurs...



C-h f insert RET

Sinon, verifie que tu n'as pas ce comportement en lancant emacs
-Q.
Publicité
Poster une réponse
Anonyme