Dies ist eine Frage in der Fortsetzung von diesem: UTF8-Dateinamen und Shell-Dienstprogramme : der alptraum von utf-8 und dateinamen ist….
Wie vermeide ich diese Verwechslung vor allem mit dem ls
Befehl für Dateinamen, die auf folgende Weise erstellt wurden:
$ echo $LANG
en_US.UTF-8
$ mkdir test
$ cd test
$ touch á
$ touch a´
$
Die erste Datei wird durch Eingabe erstellt alt ⌥ + E , EIN , der zweite durch Eingabe EIN , alt ⌥ + Shift ⇧ + E
Innerhalb eines xterm
Fenster bekomme ich:
$ ls -al
total 0
drwxr-xr-x 2 hal admin 136 Nov 11 15:52 .
drwxr-x--- 7 hal admin 4386 Nov 11 14:25 ..
-rw-r--r-- 1 hal admin 0 Nov 11 15:52 a´
-rw-r--r-- 1 hal admin 0 Nov 11 15:48 a´
$
Was falsch ist.
Innerhalb eines Terminal
Fenster bekomme ich:
$ ls -al
total 0
drwxr-xr-x 2 hal admin 136 Nov 11 15:52 .
drwxr-x--- 7 hal admin 4386 Nov 11 14:25 ..
-rw-r--r-- 1 hal admin 0 Nov 11 15:52 a´
-rw-r--r-- 1 hal admin 0 Nov 11 15:48 á
$
Welches ist richtig.
Das Ergebnis ist das gleiche, egal welche Shell ich benutze: bash
oder zsh
.
Was
xterm
oder XQuartz
Durch die Einstellung wird vermieden, dass diese 2 Dateinamen fälschlicherweise gleich aussehen. Dieses Problem tritt bei Mavericks (MacOS X 10.9) nicht auf.
quelle
echo $LANG
Ich bin in einem voll utf-8-Modus bis zur Shell-Ebene.Ich habe ähnliche Probleme (im Zusammenhang mit der R-Dokumentation), die auf dasselbe hinauslaufen.
Wenn Sie in einem XQuartz-Fenster mit der rechten Maustaste (oder bei gedrückter STRG-Taste) auf das Menü "VT-Schriftarten" klicken und dann "UTF8-Schriftarten" und "UTF8-Codierung" auswählen, wird das Problem wahrscheinlich behoben.
Ich habe jedoch noch keine Möglichkeit gefunden, diese standardmäßig zu konfigurieren, obwohl ich Folgendes gefunden habe:
Ich machte einen wilden Stich in der Dunkelheit und fügte dies zu meinen .Xdefaults hinzu:
Es ist nicht überraschend, dass dies nicht funktioniert hat, da diese beiden Ressourcen nicht existieren. Ich suche immer noch nach einer Möglichkeit, es standardmäßig zu aktivieren.
quelle