Problèmes avec les symboles Unicode dans certaines applications exécutées dans Terminal.app et iTerm2

10
Darwin DeoGloria 13.3.0 Darwin Kernel Version 13.3.0: Tue Jun  3 21:27:35 PDT 2014; root:xnu-2422.110.17~1/RELEASE_X86_64 x86_64

Nouveau compte d'utilisateur. Terminal.app et iTerm2 avec ensemble UTF-8. Les caractères accentués fonctionnent très bien dans toutes les applications ("å, ä, ö, é"). Mais certains caractères (larges?) Unicode n'apparaissent pas dans certaines applications de ligne de commande. Je l'ai découvert pour la première fois dans weechat, mais dans le shell bash, cela fonctionne très bien.

En stock Mavericks bash:

DeoGloria:~ test$ echo -e "\xE2\x9A\x91"

Copier et coller le caractère du drapeau avec la souris.

DeoGloria:~ test$ 
-bash: ⚑: command not found

bash fonctionne comme prévu. Démarrage de zsh par défaut, aucune configuration effectuée

DeoGloria:~ test$ zsh
DeoGloria:~ test$ echo -e "\xE2\x9A\x91"

Montrant bien. Mais pas quand je colle:

DeoGloria% <2691>
zsh: command not found: \u2691

Paramètres régionaux:

DeoGloria% locale
LANG="sv_SE.UTF-8"
LC_COLLATE="sv_SE.UTF-8"
LC_CTYPE="sv_SE.UTF-8"
LC_MESSAGES="sv_SE.UTF-8"
LC_MONETARY="sv_SE.UTF-8"
LC_NUMERIC="sv_SE.UTF-8"
LC_TIME="sv_SE.UTF-8"
LC_ALL=

Démarrer emacs ou vi à partir de zsh et coller "past" fonctionne très bien. Cela ne fonctionne pas en nano. Je reçois un personnage non visuel.

Je soupçonnais certains problèmes avec ncurses, mais bash, zsh, nano, emacs sont tous liés à

/usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)

Je suis à court d'idées. Des pointeurs?

marvi
la source
Question similaire ici, mais pas de réponse complète: superuser.com/questions/583031/…
nloveladyallen

Réponses:

1

Question interessante! J'ai fait quelques tests de mon côté.

zsh

xXx:~/ $ <2691>                                                                                                                                                                                              
zsh: command not found: \u2691
xXx:~/ $🇧🇸                                                                                                                                                                                                                                                                                         
zsh: command not found: 🇧🇸
xXx:~/ $                                                                                                                                                                                                                                                                                                                                                  
zsh: command not found: 

J'ai aussi fait plusieurs tests avec d'autres coques et les résultats ne sont pas les mêmes:

sh

sh-3.2$ 
sh: ⚑: command not found

frapper

Ok, cela devrait être le même que sh:

bash-3.2$ 
bash: ⚑: command not found

csh / tcsh

[LeBouc-xXx:~] xXx% \U+2691
⚑: Command not found.

Apparemment, tous ces shells ne sont pas définis avec les mêmes options d'entrée / sortie. J'ai essayé avec xterm / terminal et iTerm2 pour voir si je pouvais être un problème logiciel. C'est la même chose partout.

Je n'ai pas le temps de chercher / lire cela , mais vous pourriez trouver quelques informations utiles sur l'éditeur de ligne de zsh ici .

Si vous le trouvez, tenez-moi au courant, je serais heureux d'avoir la réponse définitive à votre question.

Nibor Ndj
la source