Як назвати файл, який буде найпершим у Nautilus?


16

Нові версії Nautilus є класними, оскільки вони пропускають нелінійно-цифрові букви на початку будь-якого імені файлу та сортують файли відповідно до першої буквено-цифрової літери (якщо така є). Але як назвати файл, щоб сортувати його раніше 0? Припустимо, у мене папка з цими файлами:

0apple.conf
apricot.xml
banana
camel.so
cat.py
dog.tar.bz

і я хочу додати один або два буквені префікси до cat.py, щоб сортувати його до 0apple.confфайлу. Я не хочу змінювати ім’я, просто додайте префікс. Я також не хочу змінювати прізвища інших. Я вже пробував:

  1. #cat.pyі .cat.pyімена і грецький алфавіт префікси сортувати файл до кінця (після того, як dog.tar.bzфайл, .зміни і видимість)
  2. будь-який з ,-";:-–\_(?)*+%=<>!префіксів сортує файл між camel.soі dog.tar.bz(як без префікса).

Так, є можливість додати більше нулів, щоб бути поруч на початку, але я хочу, щоб ім’я файлу було якомога коротшим і на першій позиції.

PS: Моя мова чеська (тому звірка має бути що - щось на зразок cs, cz, czechабо cs_CZ).



@Aurigae вибачте, але вони не пов'язані між собою, вони сортують їх лише в ls, але не в Nautilus
aleskva


Nope, все ще не перший
алесква

Одну відповідь можна знайти за цим посиланням: Посібник з Наутілуса під заголовком «Сортування Наутілуса». Це спосіб змінити спосіб обробки Наутілусом спеціальних символів під час сортування імен файлів.
bashBedlam

Відповіді:


7

Префікс 0вже робить файл, який слід сортувати найперше в Nautilus. Що може бути перед першим файлом? Жоден файл не міг, крім каталогів. Це справедливо незалежно від локальної локалізації, яка використовується.

Ім'я файлів

У наступному прикладі я спершу створив порожній текстовий файл, названий apple.txtпотім, зробив декілька копій і перейменував кожен файл, додавши один символьний префікс. Я використовував лише найбільш сумісні буквено-цифрові символи: 0 A á _ -і (пробіл). Це означає, що я створив 7 файлів, а також каталог, названий appleдля довідок.

Зауважимо, що áце другий лист чеської мови, який знаходиться у цьому розділі статті у Вікіпедії. Перша літера здається такою ж, як англійська: Aі a.

Сортування файлів

Як Nautilus буде сортувати ці файли в різних локальних середовищах? Виявляється, він схожий, але трохи інший. Для порівняння див. Наступний знімок екрана.

Наутілус в англійському та чеському середовищі

Nautilus сортував файли в англійському середовищі en_US.UTF-8так:

apple <-- directory
0apple.txt
Aapple.txt
áapple.txt
apple.txt <-- original file without prefix
 apple.txt
_apple.txt
-apple.txt

Nautilus сортував файли в чеському середовищі cs_CZ.UTF-8так:

apple <-- directory
0apple.txt
Aapple.txt
áapple.txt
 apple.txt
apple.txt <-- original file without prefix
-apple.txt
_apple.txt

В обох локалях не змінюється порядок каталогів та топ-3 файли, коли вони переглядаються як список у Nautilus. Це вже показує, що жоден буквено-цифровий символ раніше не може з’являтися 0apple.txt.

Обхід 1

Один із способів - створити файли з іменем, відмінним від існуючого "apple", з тим самим префіксом, 0який передує існуючому. Створення 0aaa.txtбуде проходити раніше 0apple.txtі так далі.

За допомогою цього вирішення файли сортуються так:

0.txt
0a.txt
0aaa.txt
0apple.txt
...

Таким чином, цей файл 0.txtбув би найпершим файлом, який з’явиться у Nautilus. Ніякі інші файли не можуть бути раніше 0.txt, якщо користувач не захоче створити ім'я файлу .txt(використовуючи лише пробіл).

Обхід 2

Скажіть, якщо appleце вже перший файл, який може існувати, і користувач наполягає на тому, щоб не перейменовувати apple, є інший спосіб: Перейменуйте існуючий файл із префіксом більшого числа від 0apple.txtдо 9apple.txt. Це дозволить інші файли з меншим номером префіксом 0*для 8*постати перед 9apple.txt.

За допомогою цього вирішення файли сортуються так:

0mango.txt
1kiwi.txt
2orange.txt
...
9apple.txt
...

Обхід 2 не підходить, якщо 0apple.txtціле не може бути перейменовано з будь-якої причини. Обхід 1 буде більш ефективним, оскільки 0.txtзавжди з'явиться перед 0mango.txtабо іншими іменами файлів, про які може придумати користувач.

Як я тестував

У моєму тестуванні було встановлено лише необхідні локальні пакети, щоб підготувати чеське середовище до запуску Nautilus в Ubuntu. Швидкий спосіб запуску програми в іншій місцевості LANG=<LOCALENAME> nautilusкомандою не працював. Отже, наступні кроки.

  • Встановіть ці пакети language-pack-gnome-cs language-pack-gnome-cs-base language-pack-cs language-pack-cs-baseчерез APT в Терміналі

  • Перейдіть у Налаштування системи> Мова та підтримка

  • У розділі Мова - Мова для меню та вікон перетягніть назву čeština(слово для "чеської", зазначене у Вікіпедії ) вгоріEnglish

  • Вийдіть із системи та увійдіть знову, щоб набути чинності

Тестовано з використанням Nautilus 3.14.3 в Ubuntu 16.04 LTS (Live).

TL; DR Ім'я файлу з префіксом 0робить перший файл у Nautilus. Жоден інший файл, крім каталогів, не може з’являтися перед самим першим файлом.


Щодо Nautilus сортування поведінки божевілля та неповаги до змінних довкілля, дивіться цей старіший пост .
clearkimura

1
Як рідна чеська людина, я повинен вас виправити: Áабо áце друга літера в чеському алфавіті після Aабо a. Подивіться на лівий стовпчик у пов'язаній таблиці Вікіпедії. У правому стовпчику написано літеру в лівій колонці.
Мелебій

@ Мелебій виправлено відповідно. Моє погано, я неправильно прочитав у стовпці "Ім'я" замість "Буква" у таблиці.
clearkimura

Інша незначна річ - це те, що Áабо áне є тим самим Aабо a. Але ви відповіли на більшість мого запитання, дякую
aleskva

Я мав намір використати лист з чеської мови, який може витіснити типові римські букви або навіть цифри, але я неправильно читав таблицю у Вікіпедії. Мені соромно за свою нерозумну помилку ... Хоча я ще не пробував з іншими мовами.
клеаркімура

2

Ви спробували пробіл нульовий як префікс?

[0cat.py]

Інші символи, про яких ви згадали, теж не працюють для мене, але нульовий пробіл працює добре.

Ви також можете спробувати інші комбінації просторових символів та нуля, такі як: -0cat.pay, _0cat.py тощо. Вони також повинні працювати.


Класно, але чи добре це, якщо я хочу працювати з цим файлом за допомогою терміналу?
алесква

Я думаю, що я повинен кодувати ім'я файлу, і автозаповнення не працюватиме, що не так зручно.
алесква

Я також не можу перейменувати жоден файл із цим іменем у Nautilus (я можу це зробити лише за допомогою терміналу), що теж не так зручно.
алесква

2
Спробуйте інше поєднання просторових знаків і нуля, щось на зразок -0cat.py або! 0cat.py або щось інше, вони також повинні працювати. Я відредагував свою відповідь.
Равексіна,

Для мене немає, 00apple.conf все ще до -0cat.py: /
aleskva

0

Я маю успіх у іменуванні файлів за допомогою префікса aa. Скажіть, початкове ім'я файлу info.txt - ім'я буде aa.info.txt. Можна поширити це на "ааа". або "bb." і т. д. Я уникав би спеціальних символів та пробілів, деякі з яких могли б скласти склад сценаріїв надмірно складними.


Це не відповідає на питання ОП.
edwinksl

Як щодо цього, посилаючись на його іспит, aa.00apple.conf?
Роджер

Що з 000apple.conf?
userDepth

Погано, що 00apple - це після 0apple, і якщо ви додасте ще нулі, ви не на початку
aleskva
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.