ЭТО РЕШЕНИЕ БОЛЬШЕ НЕ РАБОТАЕТ НА МОЕЙ МАШИНЕ (NEMO 4.4.2 ). Я, ВОЗМОЖНО, ОБНОВЛЮ ЭТО, КОГДА У МЕНЯ ЕСТЬ ПРАВИЛЬНОЕ РЕШЕНИЕ. ЧТОБЫ УЗНАТЬ БОЛЬШЕ ОБ ЭТОЙ ПРОБЛЕМЕ, ПРОВЕРЬТЕhttps://github.com/linuxmint/nemo/issues/2247
В случае TL;DR:можно начать с ПРИМЕЧАНИЕ:
Я получил решение от [Запрос функции] Чистая сортировка имен файлов ASCII
Что касается-
И я думаю, что он забыл сослаться на-
Укажите порядок сортировки с помощью LC _COLLATE, чтобы нижний регистр был перед прописным
Сейчас я копирую решение сюда с небольшой модификацией, чтобы сделать его проще и на случай, если оно будет удалено с github.
Резюме:Для того, чтобы получить желаемую сортировку, необходимо создать свою локализацию. Фактическая информация о сортировке находится в файле iso14651_t1_common
, на который ссылается iso14651_t1
, который, в свою очередь, используется в определении фактической локали (, т.е. en _US, или как вы предпочитаете использовать )..Мы создадим копии всех файлов, которые мы изменим, скомпилируем эти копии и сообщим системе использовать полученный двоичный файл.
ПРИМЕЧАНИЕ.:начните с шага 1. Однако, если вам не нравятся хлопоты, существует решение только для en_US_sorted.UTF-8
. загрузите zip-файл с tinyupload или Google Drive . Скопируйте и вставьте файлы локали в zip-файл в /usr/share/i18n/locales/
и перейдите к шагу 7.
перейти к/usr/share/i18n/locales/
сделайте копию желаемого определения локали (, т. е. от en_US
доen_US_sorted
)
сделайте копии файлов, содержащих информацию о заказе(iso14651_t1
иiso14651_t1_common
)
отредактируйте en_US_sorted
, чтобы использовать iso14651_t1_sorted
вместоiso14651_t1
отредактируйте iso14651_t1_sorted
, чтобы использовать iso14651_t1_common_sorted
вместоiso14651_t1_common
сделайте желаемое изменение наiso14651_t1_common_sorted
Чтобы символы подчеркивания отображались первыми, я изменил строку
IGNORE;IGNORE;IGNORE; # 33 _
-
;IGNORE;IGNORE; # 33 _
en_US_sorted.UTF-8 UTF-8
в /etc/locale.gen
и запустите sudo locale-gen
. Вам не нужно компилировать определение локали, используя localedef -i en_US_sorted -f UTF-8 -vc en_US_sorted.UTF-8
, потому что-locale-gen is a program that reads the file /etc/locale.gen and invokes localedef for the chosen localisation profiles.
Запустите validlocale en_US_sorted.UTF-8
, чтобы проверить новый файл локали.
указать системе использовать новую локаль(sudo localectl set-locale LANG=en_US_sorted.utf8
)
перезагрузка