Systemweite Sorierreihenfolge ändern

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Systemweite Sorierreihenfolge ändern

Beitrag von Richard » 24.11.2018 14:16:51

Hallo,

ich möchte gern die Sortierreihenfolge systemweit ändern, so dass
  • Ordner vor Dateien
  • Groß- und Kleinschreibung nicht getrennt
  • _ am Anfang von Ordnern und Dateien beachtet werden
Auch wäre es günstig wenn ich Ordner/Dateien ohne . am Anfang verstecken könnte (wie man es mit der .hidden bei Dateimanagern machen kann). Das ganze soll dann auch in allen Terminals, per SSH und bei Dateiauswahldialogen von Programmen beachtet werden. Bisher gibt es da ein echtes Kauderwelsch - jeder macht es anders. Gibt es dafür irgendwo Settings wo ich das einstellen kann? Bei Thunar hab ich das mit

Code: Alles auswählen

LC_COLLATE=C
hinbekommen.

tobo
Beiträge: 1964
Registriert: 10.12.2008 10:51:41

Re: Systemweite Sorierreihenfolge ändern

Beitrag von tobo » 24.11.2018 16:08:15

Richard hat geschrieben: ↑ zum Beitrag ↑
24.11.2018 14:16:51
ich möchte gern die Sortierreihenfolge systemweit ändern
Du kannst die Sortierreihenfolge systemweit mit z.B.: einem LC_COLLATE="XYZ" in /etc/profile oder benutzerspezifisch in ~/.profile festlegen. Aber so feingetuned wird das nicht funktionieren, wie du dir das vorstellst!?
  • Ordner vor Dateien
Sortiertechnisch (Buchstaben) gibt es keinen Grund, Verzeichnisse vor Dateien zu listen. Zumal beides als Dateien angesehen werden. ls kann man starten mit dem Parameter --group-directories-first, dann werden Verzeichnisse zuerst angezeigt. Das ist dann aber nicht sortiertechnisch, sondern nur anzeigetechnisch. In verschiedenen Dateimanagern wird das wohl ähnlich sein!?
  • Groß- und Kleinschreibung nicht getrennt
Du meinst eine Reihenfolge wie [aAbBcC] und nicht etwa [ABCabc]? Dann wäre LC_COLLATE=C kontraproduktiv, eher LC_COLLATE="de_DE.UTF-8" oder LC_COLLATE="en_US.UTF-8".
  • _ am Anfang von Ordnern und Dateien beachtet werden
Beachtet werden die sortiertechnisch auf jeden Fall. Die Frage ist, was erwartest du für ein Ergebnis?
a, _a, A, _A, b, _b, B, _B {LC_COLLATE="de_DE.UTF-8"} bzw. en_US oder aber
A, B, _A, _B, _a, _b, a, b {LC_COLLATE=C}
Auch wäre es günstig wenn ich Ordner/Dateien ohne . am Anfang verstecken könnte (wie man es mit der .hidden bei Dateimanagern machen kann).
Für versteckte Dateien gibt es ja bereits das von dir genannte Attribut des führenden Punkts. Benenne sie halt einfach um und du hast einen Grund weniger das Kauderwelsch der verschiedenen Einstellungen anzuführen.

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Systemweite Sorierreihenfolge ändern

Beitrag von Richard » 24.11.2018 17:47:32

Damit lassen sich schon einmal ein paar Sachen machen mit der .profile oder neuen Alias.
Beachtet werden die sortiertechnisch auf jeden Fall. Die Frage ist, was erwartest du für ein Ergebnis?
a, _a, A, _A, b, _b, B, _B {LC_COLLATE="de_DE.UTF-8"} bzw. en_US oder aber
A, B, _A, _B, _a, _b, a, b {LC_COLLATE=C}
Sicher sollte der Unterstrich ganz an den Anfang gesetzt werden. IN jeder Firma in der ich bisher war wurden bestimmte Ordner/Dateien auf die Weise ganz nach oben sortiert. Auch wenn das so nicht zum Standard gehört, wird es vielfach verwendet und ist irgendwie eine Art "Quasi-Standard", dem Rechnung getragen werden sollte. Dolphin zum Beispiel sortiert schon so. Unter Windows ist das normal.
Für versteckte Dateien gibt es ja bereits das von dir genannte Attribut des führenden Punkts. Benenne sie halt einfach um und du hast einen Grund weniger das Kauderwelsch der verschiedenen Einstellungen anzuführen.
Das mit dem Punkt ist aber nutzlos, wenn Programme auf bestimmte Ordner angewiesen sind. Bei selbst erstellten mag das gehen. Auch hier hat meiner Meinung nach Windows die bessere Lösung gefunden wo man beliebige Dateien mit dem Versteckt-Attribut versehen kann. Die meisten Dateimanager nutzen die .hidden-Datei, Dateiauswahldialoge in Programmen aber meist nicht und Terminal auch nicht.

Hierfür gibt es wohl keine Lösung?
Sortiertechnisch (Buchstaben) gibt es keinen Grund, Verzeichnisse vor Dateien zu listen. Zumal beides als Dateien angesehen werden. ls kann man starten mit dem Parameter --group-directories-first, dann werden Verzeichnisse zuerst angezeigt. Das ist dann aber nicht sortiertechnisch, sondern nur anzeigetechnisch. In verschiedenen Dateimanagern wird das wohl ähnlich sein!?
Das kann sein, letztlich ist aber entscheidend was mir als Endnutzer angezeigt wird. Wie das System die Ordner für sich behandelt ist mir egal, wenn gemacht wird was ich möchte. Es ist einfach übersichtlicher wenn ich eine Datei suche und da nicht noch die ganzen Unterordner mit in der Übersicht habe.

Das scheint sich nicht irgendwo zentral festlegen zu lassen? Für ls hab ich es mit einem Alias umgesetzt, Dateimanager machen das zum Glück schon alle richtig. Aber auch hier sind Dateiauswahldialoge kaum nutzbar.

Benutzeravatar
ThorstenS
Beiträge: 2875
Registriert: 24.04.2004 15:33:31

Re: Systemweite Sorierreihenfolge ändern

Beitrag von ThorstenS » 24.11.2018 21:14:48

Was mir beim schnellen Erfassen von Verzeichnissen hilft, ist diese Option:

Code: Alles auswählen

export TIME_STYLE=long-iso
Damit wird jeder Eintrag mit dem Format date "+%Y-%m-%d %H:%M" ausgegeben. Vllt. ist das ja auch was für dich.

Richard
Beiträge: 639
Registriert: 11.10.2012 14:18:37
Lizenz eigener Beiträge: GNU General Public License

Re: Systemweite Sorierreihenfolge ändern

Beitrag von Richard » 22.12.2018 08:43:28

ThorstenS hat geschrieben: ↑ zum Beitrag ↑
24.11.2018 21:14:48
Was mir beim schnellen Erfassen von Verzeichnissen hilft, ist diese Option:

Code: Alles auswählen

export TIME_STYLE=long-iso
Damit wird jeder Eintrag mit dem Format date "+%Y-%m-%d %H:%M" ausgegeben. Vllt. ist das ja auch was für dich.
Irgendwie scheint er bei mir die Eingaben in der ~/.profile komplett zu ignorieren, da wird - egal was ich mache - nichts geändert. Hab da

Code: Alles auswählen

export TIME_STYLE=long-iso
eingetragen und dann

Code: Alles auswählen

source ~/.profile
ausgeführt. Keine Fehler.

Antworten