Не кажется, что dired предоставляет интерфейс для сортировки файлов/папок в соответствии с произвольной функцией компаратора. (По умолчанию он позволяет сортировать только по имени и по дате).Сортировка emacs dired buffer в соответствии с пользовательским компаратором
я копал в исходный код для того, чтобы определить механизм для этой сортировки, и я вижу, что это призыв к (revert-buffer)
в dired-sort-toggle
(в dired.el
), который делает повторного отображения. Это приводит меня к пониманию того, что при прошивке просто выполняется команда ls с определенными ключами, а затем считывается вывод в буфер.
Есть ли лучший способ достичь этой пользовательской сортировки, чем для того, чтобы использовать функцию ls-to-point для пользовательской? Я чувствую, что может существовать переменная, которая содержит упорядоченный список файлов/каталогов в буфере, который я мог бы переустановить.
Я нашел переменную dired-subdir-alist
, но это только кажется, содержит верхний каталог (даже если в соответствии с документацией, это похоже именно список, я хочу)
Dired-подкаталог-креном является переменная, определенная в `dired.el '. Документация: Список ассоциаций поддиректорий и их буфер позиций. Каждый подкаталог имеет элемент: (DIRNAME. STARTMARKER). Порядок элементов в обратном порядке в буфере. В простых случаях этот список содержит один элемент.
Как я могу найти такую переменную?
Я рассмотрю это. В конце концов я выяснил, что именно эта функция «insert-directory» действительно отвечала за порядок файлов и каталогов. – erjoalgo