Sortieren Sie die Dateinamen (nummeriert) in dired

10

Wenn Dired Dateien nach Namen sortiert, werden sie in alphabetischer Reihenfolge sortiert. Das ist gut mit Briefen; Wenn die Dateinamen jedoch mit Zahlen beginnen, ist es besser, nach numerischen Werten zu sortieren.

Beispiel:

So sortiert dired meine Dateien:

10 11 12 13 ... 1 21 22 23 ... 2 31

Ich möchte 1 2 3 4… 9 10 11…

Nick
quelle

Antworten:

11

Hier ist meine Konfiguration:

(setq dired-listing-switches "-laGh1v --group-directories-first")

Der relevante Teil ist -1v.

abo-abo
quelle
5

Neben der Antwort von @ abo-abo möchte ich nur die Dokumentation zitieren:

dired-listing-switchesist eine in dired.el definierte Variable. Sein Wert ist "-Al --si --time-style long-iso"

Dokumentation: Schalter lsfür Dired übergeben. MUSS die lOption enthalten . Kann alle anderen Optionen enthalten, die nicht widersprechen -l; enthält möglicherweise sogar F, b, iund s. Siehe auch die Variable dired-ls-F-marks-symlinkszum FSchalter. Auf Systemen wie MS-DOS und MS-Windows, die die lsEmulation in Lisp verwenden, werden einige der lsSwitches nicht unterstützt. Weitere Informationen finden Sie in der Dokumentzeichenfolge von insert-directoryin ls-lisp.el.

Grundsätzlich können Sie die Switches anpassen, die beim Aufrufen verwendet werden sollen ls

Nsukami _
quelle
2

Die gegebenen Antworten sind für dieses genaue Problem besser, da sie direkt mit dem Verhalten von Dired zusammenhängen. Der Allgemeinheit halber möchte ich jedoch den sort-numeric-fieldsBefehl erwähnen , der speziell zum Sortieren von Zahlen nach Größe und nicht zum lexikografischen Sortieren dient.

(sort-numeric-fields FIELD BEG END)

Sortieren Sie die Zeilen im Bereich numerisch nach dem ARGdritten Feld jeder Zeile. Felder werden durch Leerzeichen getrennt und von 1 bis 1 nummeriert. Das angegebene Feld muss in jeder Zeile der Region eine Zahl enthalten, die für hexadezimale und oktale Werte mit "0x" oder "0" beginnen kann. Ansonsten wird die Nummer entsprechend interpretiert sort-numeric-base. Bei einem negativen Argument wird nach dem ARGvon rechts gezählten th-Feld sortiert . Von einem Programm aufgerufen, gibt es drei Argumente : FIELD, BEGund END. BEGund ENDgeben Sie die zu sortierende Region an.

Matthew Piziak
quelle