quand je demande un path au finder, via Appscript, il me donne "o^" (par
exemple) au lieu de "ô" en UTF-8 pourtant j'ai bien :
zsh-% locale
LANG="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_CTYPE="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_ALL=
donc comment convertir les trucs genre "o^" en "ô" ?
ça doit être un truc built-in, les "o^" c'est une sorte d'asscii étendu
?
--
« L'ennemi, c'est comme le sexe.
Faut tirer dessus de temps en temps pour avoir la paix. »
(Pierre Desproges)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Erwan David
(Une Bévue) écrivait :
quand je demande un path au finder, via Appscript, il me donne "o^" (par exemple) au lieu de "ô" en UTF-8 pourtant j'ai bien : zsh-% locale LANG="fr_FR.UTF-8" LC_COLLATE="fr_FR.UTF-8" LC_CTYPE="fr_FR.UTF-8" LC_MESSAGES="fr_FR.UTF-8" LC_MONETARY="fr_FR.UTF-8" LC_NUMERIC="fr_FR.UTF-8" LC_TIME="fr_FR.UTF-8" LC_ALL >
donc comment convertir les trucs genre "o^" en "ô" ? ça doit être un truc built-in, les "o^" c'est une sorte d'asscii étendu ?
Non c'est de l'unicode en forme normale dissociée
En fait pour un caractère accentué, en unicode il y a un choix à faire: - soit on utilise un caractère unicode représentant la lettre accentuée (NFC ou forme normale composée) - soit on utilise 2 caractères : la lettre de base + un caractère représentant l'accent. (forme normale décomposée).
Apple utilise la deuxième forme. Le ^ que vous lisez est en fait un ^ sans largeur, destiné à se mettre sur le caractère précédent. (et Apple est le seul à le faire, car les protocoles internet ont choisi la forme normale composée, donc la plupart des outils unix attendent la NFC).
quand je demande un path au finder, via Appscript, il me donne "o^" (par
exemple) au lieu de "ô" en UTF-8 pourtant j'ai bien :
zsh-% locale
LANG="fr_FR.UTF-8"
LC_COLLATE="fr_FR.UTF-8"
LC_CTYPE="fr_FR.UTF-8"
LC_MESSAGES="fr_FR.UTF-8"
LC_MONETARY="fr_FR.UTF-8"
LC_NUMERIC="fr_FR.UTF-8"
LC_TIME="fr_FR.UTF-8"
LC_ALL >
donc comment convertir les trucs genre "o^" en "ô" ?
ça doit être un truc built-in, les "o^" c'est une sorte d'asscii étendu
?
Non c'est de l'unicode en forme normale dissociée
En fait pour un caractère accentué, en unicode il y a un choix à faire:
- soit on utilise un caractère unicode représentant la lettre accentuée
(NFC ou forme normale composée)
- soit on utilise 2 caractères : la lettre de base + un caractère
représentant l'accent. (forme normale décomposée).
Apple utilise la deuxième forme. Le ^ que vous lisez est en fait un ^
sans largeur, destiné à se mettre sur le caractère précédent. (et Apple
est le seul à le faire, car les protocoles internet ont choisi la forme
normale composée, donc la plupart des outils unix attendent la NFC).
quand je demande un path au finder, via Appscript, il me donne "o^" (par exemple) au lieu de "ô" en UTF-8 pourtant j'ai bien : zsh-% locale LANG="fr_FR.UTF-8" LC_COLLATE="fr_FR.UTF-8" LC_CTYPE="fr_FR.UTF-8" LC_MESSAGES="fr_FR.UTF-8" LC_MONETARY="fr_FR.UTF-8" LC_NUMERIC="fr_FR.UTF-8" LC_TIME="fr_FR.UTF-8" LC_ALL >
donc comment convertir les trucs genre "o^" en "ô" ? ça doit être un truc built-in, les "o^" c'est une sorte d'asscii étendu ?
Non c'est de l'unicode en forme normale dissociée
En fait pour un caractère accentué, en unicode il y a un choix à faire: - soit on utilise un caractère unicode représentant la lettre accentuée (NFC ou forme normale composée) - soit on utilise 2 caractères : la lettre de base + un caractère représentant l'accent. (forme normale décomposée).
Apple utilise la deuxième forme. Le ^ que vous lisez est en fait un ^ sans largeur, destiné à se mettre sur le caractère précédent. (et Apple est le seul à le faire, car les protocoles internet ont choisi la forme normale composée, donc la plupart des outils unix attendent la NFC).
-- Le travail n'est pas une bonne chose. Si ça l'était, les riches l'auraient accaparé
unbewusst.sein
Erwan David wrote:
Non c'est de l'unicode en forme normale dissociée
OK, il y a maintenant "l'UTF-8Mac"...
En fait pour un caractère accentué, en unicode il y a un choix à faire: - soit on utilise un caractère unicode représentant la lettre accentuée (NFC ou forme normale composée) - soit on utilise 2 caractères : la lettre de base + un caractère représentant l'accent. (forme normale décomposée).
Apple utilise la deuxième forme. Le ^ que vous lisez est en fait un ^ sans largeur, destiné à se mettre sur le caractère précédent. (et Apple est le seul à le faire, car les protocoles internet ont choisi la forme normale composée, donc la plupart des outils unix attendent la NFC).
ben, du coup, quand je rentre un caractère accentué à la NFC, le terminal mes ort des trucs bizarres genre : zsh-% cd /Users/yt/dev/Appscript/do<0302>ssier sans ti<0302>tre ôîôîôîôîôîôîôîôî% mais le cd résultant est OK et même dans une ligne où il n'y a pas (plus) d'accent j'ai tjs des trucs bizarres :
zsh-% echo $LANG fr_FR.UTF-8 ôîôîôî% zsh-%
et quand je met dans un fichier ces caractères dissociés, TextEdit m'affiche autre chose, il s'y perd sans doute.
Je viens de lire la page : <http://pierre.albarede.free.fr/technique/Unix.html> où il est conseillé : « Avec Mac OS X.6, Preferences, Encodings, Character Set Encoding, activer uniquement UTF-8. Ouvrir l'inspecteur (touche commande I), Advanced, Character Encoding, UTF-8 doit être le seul choix (cocher « Set locale environment variables on startup » affecte la variable d'environnement LANG, voir le bouton d'aide). ls -v semble inutile. Voir la rubrique dans l'aide « Displaying high-bit characters ». »
je n'ai pas trouvé cette pref "Encodings, Character Set Encoding" ... je suis sous SL 10.6.3 (?).
-- « L'ennemi, c'est comme le sexe. Faut tirer dessus de temps en temps pour avoir la paix. » (Pierre Desproges)
Erwan David <erwan@rail.eu.org> wrote:
Non c'est de l'unicode en forme normale dissociée
OK, il y a maintenant "l'UTF-8Mac"...
En fait pour un caractère accentué, en unicode il y a un choix à faire:
- soit on utilise un caractère unicode représentant la lettre accentuée
(NFC ou forme normale composée)
- soit on utilise 2 caractères : la lettre de base + un caractère
représentant l'accent. (forme normale décomposée).
Apple utilise la deuxième forme. Le ^ que vous lisez est en fait un ^
sans largeur, destiné à se mettre sur le caractère précédent. (et Apple
est le seul à le faire, car les protocoles internet ont choisi la forme
normale composée, donc la plupart des outils unix attendent la NFC).
ben, du coup, quand je rentre un caractère accentué à la NFC, le
terminal mes ort des trucs bizarres genre :
zsh-% cd /Users/yt/dev/Appscript/do<0302>ssier sans ti<0302>tre
ôîôîôîôîôîôîôîôî%
mais le cd résultant est OK et même dans une ligne où il n'y a pas
(plus) d'accent j'ai tjs des trucs bizarres :
zsh-% echo $LANG
fr_FR.UTF-8
ôîôîôî%
zsh-%
et quand je met dans un fichier ces caractères dissociés, TextEdit
m'affiche autre chose, il s'y perd sans doute.
Je viens de lire la page :
<http://pierre.albarede.free.fr/technique/Unix.html>
où il est conseillé :
« Avec Mac OS X.6, Preferences, Encodings, Character Set Encoding,
activer uniquement UTF-8. Ouvrir l'inspecteur (touche commande I),
Advanced, Character Encoding, UTF-8 doit être le seul choix (cocher «
Set locale environment variables on startup » affecte la variable
d'environnement LANG, voir le bouton d'aide). ls -v semble inutile.
Voir la rubrique dans l'aide « Displaying high-bit characters ». »
je n'ai pas trouvé cette pref "Encodings, Character Set Encoding" ...
je suis sous SL 10.6.3 (?).
En fait pour un caractère accentué, en unicode il y a un choix à faire: - soit on utilise un caractère unicode représentant la lettre accentuée (NFC ou forme normale composée) - soit on utilise 2 caractères : la lettre de base + un caractère représentant l'accent. (forme normale décomposée).
Apple utilise la deuxième forme. Le ^ que vous lisez est en fait un ^ sans largeur, destiné à se mettre sur le caractère précédent. (et Apple est le seul à le faire, car les protocoles internet ont choisi la forme normale composée, donc la plupart des outils unix attendent la NFC).
ben, du coup, quand je rentre un caractère accentué à la NFC, le terminal mes ort des trucs bizarres genre : zsh-% cd /Users/yt/dev/Appscript/do<0302>ssier sans ti<0302>tre ôîôîôîôîôîôîôîôî% mais le cd résultant est OK et même dans une ligne où il n'y a pas (plus) d'accent j'ai tjs des trucs bizarres :
zsh-% echo $LANG fr_FR.UTF-8 ôîôîôî% zsh-%
et quand je met dans un fichier ces caractères dissociés, TextEdit m'affiche autre chose, il s'y perd sans doute.
Je viens de lire la page : <http://pierre.albarede.free.fr/technique/Unix.html> où il est conseillé : « Avec Mac OS X.6, Preferences, Encodings, Character Set Encoding, activer uniquement UTF-8. Ouvrir l'inspecteur (touche commande I), Advanced, Character Encoding, UTF-8 doit être le seul choix (cocher « Set locale environment variables on startup » affecte la variable d'environnement LANG, voir le bouton d'aide). ls -v semble inutile. Voir la rubrique dans l'aide « Displaying high-bit characters ». »
je n'ai pas trouvé cette pref "Encodings, Character Set Encoding" ... je suis sous SL 10.6.3 (?).