J'ai récemment eu une discussion avec
Armin Ronacher (que j'admire beaucoup soit dit en passant), qui me demandait pourquoi je n'avais pas choisi
PyGtk au lieu de
PyQt4 pour coder
PyK.
Selon lui, PyGtk est un bon toolkit, bien pensé dans son architecture. Je suis tout à fait d'accord là-dessus mais mon choix s'était fait suivant certains points :
- J'ai adoré les démos fournies par Qt4, vraiment impressionnantes ;
- Ma première interface graphique avait été réalisée il y a longtemps et se nommait TeXBases, avec Ruby + Gtk et j'en ai gardé des souvenirs cauchemardesques en ce qui concernait la doc de l'époque. Finalement, j'avais fini par la recoder en PyQt4 ;
- J'ai découvert qu'il existait une alternative à Scintilla dans Qt4, celle-ci me permettrait de coder ma propre coloration syntaxique, mon folding, etc.; maintenant, avec du recul je peux vous affirmer que celle-ci est loin d'être au point (lenteur, incohérences, ). Bien sûr, je suis loin d'être un excellent codeur, mais même les bêtes de course sous Qt4 le disent et on voit plein de projets switcher d'un coup sous Scintilla tellement c'est abominable.
Exemple : j'avais implémenté les numéros de ligne dans PyK. Résultat : affichage d'une lenteur inouie pour un fichier dépassant les 5 Ko ! Oui, on peut faire beaucoup de choses avec Qt4, mais pas ça (c'est faisable, mais toujours lent cependant en C++) ; - J'avais déjà réalisé reStInPeace et cela m'a aidé à coder PyK.
Cela ne signifie pas l'abandon de PyQt4 pour ma part, loin s'en faut ; mais j'ai envie d'aller voir ailleurs un petit moment... ne serait-ce que pour pouvoir étendre les capacités d'autres logiciels communs sous Linux (GEdit, Vim, etc.).
Alors aujourd'hui je me suis mis à glâner divers renseignements sur PyGtk, et surtout des liens nouveaux et peu connus. C'est fou comme Gtk a évolué, notamment avec Glade3 dont l'interface ne ressemble plus à TheGimp. Dire qu'il a fallu des projets auxiliaires comme
Gazpacho pour ça saute aux yeux de tout le monde !
J'aurai aussi certaines critiques à faire sur Gtk en général sur le peu que j'ai vu :
- Glade 3, c'est bien, mais placer par défaut un GtkWindow en mode invisible me paraît vraiment complètement débile ;
- Certains widgets ne sont pas dans Glade 3 (GtkSourceView, GtkHTML, etc.) ;
- Fautes de frappe dans Devhelp qui font perdre du temps. Exemple : set_tabs_width au lieu de set_tab_width.
Partager