Aller au contenu
ElementaryOS France
alexandreR

Amélioration du tri dans Pantheon-files

Recommended Posts

Bonjour !

Tout d'abord, félicitation pour ce joli travail avec elementary OS !

Depuis un bout de temps (+ de 5 ans) j'ai remarqué un problème au niveau du tri dans nautilus et tout programme utilisant la lib glib pour effectuer son tri de fichier par nom.

Vous me direz, depuis le temps ça se serait vu!

Ca se voit et les developpeurs gnome ignore le problème (
+ de 30 bugs ouvert en relation
https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/322271
https://bugzilla.gnome.org/show_bug.cgi?id=355152
https://bugs.launchpad.net/ubuntu/+source/thunar/+bug/684317
...).

Je m'explique...

créez un répertoire avec des fichiers bidons sous shell:

touch 001
touch 004
touch 1
touch 4
touch a
touch A
touch b
touch B

ls affichera:

001  004  1  4  a  A  b  B

Pantheon-files:

1 001 4 004  a  A  b  B

et ça devient plus pénible quand les nombres des fichiers représentent des dates ou des décimaux.

une date en 070324 pour 24/03/2007 passera après 120218 pour 18/02/2012 ... etc.

Ceci vient de l'utilisation de g_utf8_collate_key_for_filename qui interprete les nombres contenu dans le nom.
Même si le but est louable, ça marche pas à tout les coups, et c'est particulièrement pénible...

Ainsi en amélioration, en attendant d'avoir un éventuel retour sur le bug ouvert pour glib https://bugzilla.gnome.org/show_bug.cgi?id=754777 ,
je vous propose de remplacer les appels à g_utf8_collate_key_for_filename par g_utf8_collate_key qui elle, ne fait pas d'interprétation...
et/ou de rendre paramétrable cette gestion de tri dans gconf...

J'ai réalisé une lib hack temporaire pour ce problème, disponible à https://github.com/heralight/GlibSortFileNameHackLibrary
pour le tester tuer vos instances de Pantheon-files et exécuté
LD_PRELOAD=/pathToYourLib/glibSortFileNameHack.so pantheon-files

ça marche très bien sous gnome car je peux faire un export LD_PRELOAD dans .gnomerc, mais pas sous elementary... peut-être auriez-vous une idée ?

Chaleureusement,

Alexandre

 

 

P.S.: Ce post était précédemment dans ElementaryOS France Votre communauté Idées & améliorations

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×