summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2013-04-20 19:03:45 +0200
committerSébastien Dailly <sebastien@chimrod.com>2013-04-20 19:03:45 +0200
commit549ccbd1949889ea0fe39514fe80283fd591c033 (patch)
tree8d196b309c9ec2ec0e8fadc73e6f8d64dff6a495
parent499fa24be3f022c2426a8f019d9c99b27eb30db1 (diff)
Added article
-rw-r--r--content/Informatique/gueule1.rst62
1 files changed, 62 insertions, 0 deletions
diff --git a/content/Informatique/gueule1.rst b/content/Informatique/gueule1.rst
new file mode 100644
index 0000000..54aa577
--- /dev/null
+++ b/content/Informatique/gueule1.rst
@@ -0,0 +1,62 @@
+.. -*- mode: rst -*-
+.. -*- coding: utf-8 -*-
+
+Essai raté d'un plugin gedit
+############################
+
+:date: 20/04/2013
+:tags: Programmation, Libre, Humeur, Humeur
+
+En relisant mes articles, j'ai décidé d'utiliser languageTool_ pour vérifier la
+grammaire avant de les publier. Puis en regardant l'outil, j'ai voulu voir s'il
+existait un plugin gedit permettant de l'intégrer dans l'édition d'un texte
+(j'utilise vim, je sais que ma compagne utilise gedit pour écrire ces textes).
+
+Titivullus_ est disponible sur sourceforge, et est facile à installer (même si
+l'auteur n'a pas compris comment fonctionnait SVN), par contre l'utilisation
+n'est pas des plus pratiques : il faut charger la console d'erreur de gedit
+(qui ne peut pas être réduite), et le plugin n'est pas configurable.
+
+.. _languageTool: http://www.languagetool.org/
+.. _Titivullus: http://sourceforge.net/projects/titivullus/
+
+Heureusement, c'est du python !
+===============================
+
+Le code n'est pas compliqué à comprendre (il n'est pas parfait, mais à au moins
+le mérite d'être là), et j'ai commencé à le modifier : première étape, appeler
+languagetool en ligne de commande plutôt que de lancer le serveur web.
+Deuxième étape, surligner dans gedit la ligne en erreur pour éviter d'avoir à
+passer par la console pour savoir ce qui ne va pas ; on se plonge dans
+l'édition de `plugin sous gedit`_, et là, c'est le drame !
+
+.. _`plugin sous gedit`: https://live.gnome.org/Gedit/PythonPluginHowTo
+
+Devant du code C
+================
+
+Le binding python est assez limité, il faut remonter dans l'API C pour trouver
+ce que l'on cherche, et là :
+
+* erreur 404 dans l'API (par exemple les liens de l'« Object Hierarchy » de
+ GtkSourceView_)
+* Des messages d'erreurs abscons dûs à l'introspection (par exemple en cas de
+ mauvais objet passé en paramètre)
+* Des dépendances de plus en plus importantes à chaque nouvelle étape (gedit,
+ gtk, puis pango_\ …)
+
+Plus j'avance, et plus j'ai l'impression que le chemin qui reste à parcourir
+est grand ! Qu'il est loin le temps où je m'étais penché sur Vala_ pour
+découvrir ! J'ai finalement laissé tomber, en ayant l'impression d'avoir perdu
+mon temps : mettre en place un plugin sous gedit est définitivement trop
+compliqué pour pouvoir être réalisé facilement, sans se plonger dans le code
+GTK et le connaître sur le bout des doigts.
+
+Dommage, pour une fois que j'avais envie de me plonger dans le code et
+d'avancer… Je comprends que le greffon Titivullus soit resté à l'état de proff
+of concept et que personne ne l'ai repris : cette petite aventure m'a fait
+passer l'envie de me plonger dans du dev gnome !
+
+.. _GtkSourceView: https://developer.gnome.org/gtksourceview/stable/GtkSourceView.html
+.. _pango: https://developer.gnome.org/pango/stable/pango-Text-Attributes.html
+.. _Vala: |filename|../Informatique/vala.rst