web-dev-qa-db-fra.com

Comment nommer un fichier pour être le tout premier dans Nautilus?

Les nouvelles versions de Nautilus sont cool, car elles ignorent les lettres non alphanumériques au début de tout nom de fichier et trient les fichiers en fonction de la première lettre alphanumérique (le cas échéant). Mais comment nommer un fichier afin de le trier avant 0? Supposons que j'ai un dossier avec ces fichiers:

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

et je veux ajouter un préfixe d'une ou deux lettres au cat.py afin de le trier avant le fichier 0Apple.conf. Je ne veux pas changer le nom, ajoutez juste un préfixe. Je ne veux pas non plus changer le nom des autres. J'ai déjà essayé:

  1. #cat.py et .cat.py noms et préfixes d'alphabet grec trient le fichier à la fin (après que dog.tar.bz fichier; . change également de visibilité)
  2. l'un des préfixes ,-";:-–\_(?)*+%=<>! trie le fichier entre camel.so et dog.tar.bz (comme sans aucun préfixe).

Oui, il existe une option permettant d’ajouter plus de zéros au début, mais je veux que le nom du fichier soit le plus court possible et à la toute première position.

PS: Ma langue est le tchèque (par conséquent, la collation devrait correspondre à quelque chose comme cs, cz, czech ou cs_CZ).

16
aleskva

Le préfixe 0 rend déjà le fichier trié dans Nautilus. Qu'est-ce qui peut arriver avant le tout premier fichier? Aucun fichier ne pourrait, sauf les répertoires. Cela est vrai indépendamment des paramètres régionaux utilisés.

Nom du fichier

Dans l'exemple suivant, j'ai d'abord créé un fichier texte vide nommé Apple.txt, puis effectué plusieurs copies et renommé chacun des fichiers en ajoutant un préfixe à un seul caractère. J'ai utilisé uniquement la plupart des caractères alphanumériques compatibles: 0 A á _ - et (espace). Cela signifie que j'ai créé 7 fichiers au total, plus un répertoire nommé Apple comme référence.

Notez que á est la deuxième lettre du tchèque, qui se trouve dans cet article section sur Wikipedia. La première lettre semble être la même qu'en anglais: A et a.

Tri de fichier

Comment Nautilus va-t-il trier ces fichiers dans différents environnements régionaux? Il s'avère que c'est similaire mais légèrement différent. Voir la capture d'écran suivante pour la comparaison.

Nautilus in English and Czech environment

Nautilus triait les fichiers dans l'environnement anglais en_US.UTF-8 comme ceci:

Apple <-- directory
0Apple.txt
Aapple.txt
áApple.txt
Apple.txt <-- original file without prefix
 Apple.txt
_Apple.txt
-Apple.txt

Nautilus a classé les fichiers dans l'environnement tchèque cs_CZ.UTF-8 comme ceci:

Apple <-- directory
0Apple.txt
Aapple.txt
áApple.txt
 Apple.txt
Apple.txt <-- original file without prefix
-Apple.txt
_Apple.txt

Dans les deux environnements locaux, l'ordre des répertoires et des 3 premiers fichiers n'est pas modifié lors de l'affichage sous forme de liste dans Nautilus. Cela montre déjà qu'aucun caractère alphanumérique ne peut apparaître avant 0Apple.txt.

Solution de contournement 1

Une solution consiste à créer des fichiers avec un nom autre que "Apple" existant avec le même préfixe 0 qui précède celui existant. La création de 0aaa.txt viendra avant 0Apple.txt et ainsi de suite.

En utilisant cette solution de contournement, les fichiers sont triés comme suit:

0.txt
0a.txt
0aaa.txt
0Apple.txt
...

De cette façon, le fichier 0.txt serait le tout premier fichier à apparaître dans Nautilus. Aucun autre fichier ne peut précéder 0.txt, à moins que l'utilisateur ne souhaite créer un nom de fichier .txt (avec uniquement un caractère d'espacement).

Contournement 2

Dites si Apple est déjà le tout premier fichier pouvant exister et que l'utilisateur insiste pour ne pas renommer Apple, il existe un autre moyen: Renommez le fichier existant avec préfixe numérique supérieur de 0Apple.txt à 9Apple.txt. Cela permettra aux autres fichiers avec le préfixe de numéro inférieur 0* de 8* d'apparaître avant 9Apple.txt.

En utilisant cette solution de contournement, les fichiers sont triés comme suit:

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

La solution de contournement 2 est inappropriée si le 0Apple.txt dans son ensemble ne peut pas être renommé pour une raison quelconque. La solution de contournement 1 sera plus efficace puisque 0.txt apparaîtra toujours avant 0mango.txt ou d'autres noms de fichiers auxquels l'utilisateur peut penser.

Comment ai-je testé

Lors de mes tests, seuls des packages de paramètres régionaux essentiels ont été installés pour préparer l'environnement tchèque à l'exécution de Nautilus dans Ubuntu. Le moyen rapide d'exécuter le programme dans d'autres paramètres régionaux à l'aide de la commande LANG=<LOCALENAME> nautilus ne fonctionnait pas. Par conséquent, les étapes suivantes.

  • Installez ces paquets language-pack-gnome-cs language-pack-gnome-cs-base language-pack-cs language-pack-cs-base via APT dans Terminal

  • Allez à Paramètres système> Langue et support

  • En Langue - Langue des menus et des fenêtres , faites glisser l’entrée nommée čeština (Mot pour "tchèque" noté par Wikipedia ) au-dessus de English

  • Déconnectez-vous et reconnectez-vous pour prendre effet

Testé avec Nautilus 3.14.3 dans Ubuntu 16.04 LTS (Live).

TL; DR Nom de fichier avec le préfixe 0 crée le tout premier fichier dans Nautilus. Aucun autre fichier, à l'exception des répertoires, ne peut apparaître avant le tout premier fichier.

7
clearkimura

Avez-vous essayé l'espace zéro comme préfixe?

[0cat.py]

Les autres personnages que vous avez mentionnés ne fonctionnent pas non plus pour moi, mais Space zéro fonctionne correctement.

Vous pouvez également essayer d’autres combinaisons de caractères spéciaux et zéro, comme: -0cat.pay, _0cat.py, etc. Cela devrait également fonctionner.

2
Ravexina

Je réussis à nommer des fichiers en utilisant le préfixe aa. Dites que le nom de fichier d'origine est info.txt - le nom serait aa.info.txt. On pourrait prolonger cela avec "aaa". ou "bb." etc. J'éviterais des caractères spéciaux et des espaces, dont certains pourraient compliquer inutilement la composition de scripts.

0
Roger