OK
AJAX error!

Les forumsGrammalectePlantage avec OpenOffice

Plantage avec OpenOffice

Tout d'abord, un immense merci ! Comme j'écris beaucoup, Grammalecte m'est vite devenu indispensable pour corriger les accords faits à la va-vite et les mots qui sont séparés ou non par un -
Vous n'imaginez même pas le temps que ça me fait économiser pour la relecture !

Ensuite, j'ai un petit souci : je travaille sur des documents de tailles diverses. Je n'ai aucun problème avec les documents les plus petits (environ 65 000 signes pour le plus élevé). Par contre, sur mon document le plus gros (445 000 signes), il plante systématiquement au bout d'une minute environ. J'ai essayé de le découper en plusieurs petits bouts, le problème ne revient plus mais j'ai besoin de travailler avec tout sur la même page.
J'utilise la dernière version stable d'Open office, j'ai pis le grammalecte adapté, j'ai même purgé mon profil open office et réinstallé open office, puis l'extension, etc, le problème subsiste. La taille est le seul critère que j'ai réussi à mettre en avant, je n'utilise rien de spécial dans ce document (pas de police bizarre, pas d'image, pas de format, pas de caractères spéciaux autres que les oe, les é et à majuscules, pas de couleur). J'ai aussi essayé sans succès de créer un nouveau document et d'y coller le texte tel quel, de supprimer la mise en page, rien à faire

J'ai aussi parfois cette erreur-là : img4.hostingpics.net…
J'ai l'impression qu'elle se présente quand j'arrive à un endroit précis du texte avec la fenêtre de correction "Orthographe et Grammaire" mais je n'arrive pas à faire mieux.

Et enfin, dans un autre registre : quand j'utilise le formateur de texte, il remplace correctement les points de suspension, même lorsque j'ai mis 4 points. En revanche, quand j'utilise la fenêtre de correction et que je fais "modifier", il me met le signe qui correspond aux points de suspension mais il me laisse le quatrième point. Il fait pareil quand j'ai mis seulement deux points (sauf que le formateur ne le corrige pas automatiquement, mais je pense que c'est mieux comme ça)
Pour illustrer :
... donne bien …
.. donne ….
.... donne ….
le 06 août 2014 à 13:56
Pour le premier problème, il faudrait m’envoyer le document, si c’est possible, à l’adresse : dicollecte at free dot fr, pour tester ça en mode debug.
Effectivement, il y a plantage de l’application. Grosso modo, quelque chose plante, et lors du traitement de l’exception, l’application plante à nouveau parce qu’elle n’arrive pas à faire un print. D’expérience, je dirais qu’il y a un plantage récurrent qui fait coincer l’application, car si ça n’arrive qu’une seule fois, Writer arrive à gérer et à relancer l’application.
Bref, Grammalecte plante, exception, print, relance de Grammalecte par Writer, replantage, exception, print, relance, replantage, exception, print… Bref, ça tourne en boucle, et comme print, sur Windows, donne sur du vide, ça finit par planter complètement au bout d’un moment.
Ceci dit, essayez sur LibreOffice pour voir si vous avez le même problème. (Je ne fais pas trop confiance à OpenOffice.)

Quant au second problème, ça ne vient pas de Grammalecte mais de Writer. Pour une raison inconnue, si vous passez par la boîte de dialogue, le comportement n’est pas le même que si vous faites un clic droit pour corriger l’erreur.

Avec la boîte de dialogue, le correcteur remplace .... par …. C’est un bug de Writer. Il faudrait que je signale le problème sur leur bugtracker.
Avec un clic droit sur l’erreur, le correcteur remplace .... par … (ce qui est correct).

Quant au formateur de texte, c’est une application indépendante qui ne fonctionne pas du tout comme le correcteur grammatical.
le 06 août 2014 à 14:58
Je vous ai envoyé le fichier incriminé.

Merci de votre sollicitude !
le 06 août 2014 à 17:20
Ça fonctionne bien avec LibreOffice. Et ça plante effectivement avec OpenOffice. Je constate quatre plantages, toujours pour le même type d’erreur, mais concernant des règles de contrôle différentes.
Comme je le soupçonnais, ça concerne le moteur d’expressions régulières, qui renvoie un objet “None” alors qu’il est censé renvoyer un objet Match (cf. API de Python). La doc de Python précise : « Match objects always have a boolean value of True ». Un objet None n’a certainement pas True pour valeur et aucune méthode ne peut lui être appliquée. Bref, c’est bien un bug de Python, ce n’est pas Grammalecte qui provoque ces crashs. Il faut que je réfléchisse à la manière de contourner ça. Pas avant la semaine prochaine.

Les paragraphes qui provoquent ces plantages sont :

Il remit soigneusement le carreau en place…


La galerie s’ouvrit tout à coup sur une caverne…


Il tomba sur une autre patrouille et assassina le mage en premier…


La voix agaçante de la gamine était revenue la hanter…

le 06 août 2014 à 19:03
Je crois que j'ai à peu près compris d'où venait le problème.
Je pense que je vais télécharger LibreOffice, pour l'adopter ou au moins pour changer les paragraphes incriminés le temps qu'une solution soit disponible.

Mais si le problème ne vient pas de Grammalecte, il ne vaudrait pas mieux signaler le bug pour qu'il soit corrigé sur python plutôt que de modifier Grammalecte ? Ou alors ça supposerait d'attendre une mise à jour d'Open Office ?

Merci beaucoup en tout cas !
le 06 août 2014 à 19:56
Le bug est déjà corrigé dans Python, mais OpenOffice inclut une vieille version et refuse pour l’instant de passer à Python 3.3. C’est pourquoi je recommande LibreOffice, qui est, à mon avis, mieux à tout point de vue concernant Writer (pour le reste, je ne sais pas, mais c’est probablement aussi le cas).
le 06 août 2014 à 20:34
Ça fonctionne parfaitement avec LibreOffice et le dépaysement n'a pas duré longtemps, je vais sûrement le garder du coup ^^
le 07 août 2014 à 01:08
Ce bug est coriace, je ne parviens pas à le corriger. Je ne suis pas sûr de comprendre le problème.

Un objet Match fonctionne normalement, puis à un moment donné il est appelé dans une fonction eval(). Et, dans certains cas, cet objet est mystérieusement transformé en None.

Je ne comprends pas pourquoi ça arrive et pourquoi ça n’arrive que dans certains cas. :/

Edit : Bug corrigé.
le 26 août 2014 à 16:39

Notification par e-mail    0