XQuartz, utf-8 und Dateinamen


1

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.

Antworten:


1

Okay, endlich sortiert mit Hilfe dieses Beitrags:

Zusammenfassend geht es hier:

Laden Sie den Einstellungsbereich herunter und fügen Sie diesen Eintrag hinzu:

Key=LANG Value=en_GB.UTF-8

Ich hatte dies bereits zu meinem .bashrc und meinem .profil hinzugefügt, jedoch ohne Ergebnis. Ich denke jedoch, dass XQuartz in dieser Umgebung nicht gestartet wird, sodass es erst dann angezeigt wird, wenn es zu spät ist.


Der erste Teil Ihres Vorschlags ist nicht relevant. Wie Sie vielleicht an der Ausgabe des echo $LANGIch bin in einem voll utf-8-Modus bis zur Shell-Ebene.
daniel Azuelos

-1

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:

$ appres XTerm | grep UTF
*fontMenu*utf8-mode*Label:      UTF-8 Encoding
*fontMenu*utf8-fonts*Label:     UTF-8 Fonts
*fontMenu*utf8-title*Label:     UTF-8 Titles

Ich machte einen wilden Stich in der Dunkelheit und fügte dies zu meinen .Xdefaults hinzu:

xterm*utf8-mode: 1
xterm*utf8-fonts: 1

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.


Okay, endlich sortiert mit Hilfe dieses Beitrags:
Nathan

1
Da Sie keine wirkliche Lösung für das ursprüngliche Problem finden, empfehle ich Ihnen, dies in die Kommentare einzutragen: "Hier ist, was ich getestet habe und was nicht" und nicht in eine Antwort.
daniel Azuelos
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.