Jump to content
ElementaryOS France

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

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...