[Vim] La correction grammaticale !

Introduction

Préambule

Comme vous le savez surement Vim est doté d’un excellent système de correction syntaxique qui vous corrigera sans problème un « Caffé » en « Café » mais qu’en est-il de la correction grammaticale ?
Nous allons ici découvrir un outil fort intéressent nommé LanguageTool et son extension Vim !

Qu’est ce que LanguageTool

LanguageTool est un correcteur grammatical. C’est-à-dire qu’il corrigera vos erreurs d’accord, de pluriel, etc. Le produit est à l’origine disponible pour OpenOffice et à l’instar de ce dernier LanguageTool est écrit en Java. Ceci permet donc de l’exécuter partout et non plus seulement dans OpenOffice.

Installation

Installation de LanguageTool

La première chose à faire est de télécharger LanguageTool sur votre Ordinateur. Pour cela le plus simple est de se rendre sur le site de LanguageTool — http://www.languagetool.org/ — et récupérer le lien vers la dernière version. À l’heure où j’écris ces lignes la version courante est la 1.5. Le fichier que nous allons télécharger est au format OXT qui correspond au format d’extension d’OpenOffice. Prenez soin d’adapter les lignes suivantes à votre version de LanguageTool.

$ mkdir -p ~/software/languagetool/1.5
$ cd ~/software/languagetool/1.5
$ wget http://www.languagetool.org/download/LanguageTool-1.5.oxt

Les fichiers OXT sont en réalité des archives ZIP que nous pouvons facilement décompresser à l’aide de la commande unzip. Pour cela procédons comme suit.

$ unzip LanguageTool-1.5.oxt

Nous avons donc maintenant une liste de fichiers et de dossier assez importante dont le fichier LanguageTool.jar. Ce fichier est la version compilée — appelée bytecode— du correcteur, c’est donc celui ci que Vim exécutera pour faire fonctionner la correction grammaticale.
Nous allons maintenant installer l’extension Vim pour utiliser notre correction grammaticale.

Installation de l’extension Vim

Il existe une extension Vim maintenue par Dominique Pellé et disponible sur le site de Vim — http://www.vim.org/scripts/script.php? script_id=3223. Nous allons télécharger la dernière version de l’extension qui à l’heure d’aujourd’hui est la 1.14. Comme toujours les fichiers Vim se trouve dans le dossier caché .vim à la racine de notre dossier personnel.

$ cd ~/.vim
$ wget « http://www.vim.org/scripts/download_script.php?src_id=15306 » -O LanguageTool.zip

Attention: Ce lien télécharge la version 1.14 qui n’est peut-être pas la dernière version.
L’extension Vim est au format ZIP nous la décompressons donc.

$ unzip LanguageTool.zip

Et supprimons l’archive

$ rm LanguageTool.zip

Il ne nous reste plus qu’à configurer Vim pour qu’il utilise notre extension correctement!

Configuration

Nous allons configurer Vim pour qu’il utilise LanguageTool. La configuration de Vim se trouve dans le fichier caché .vimrc à la racine de votre dossier personnel. Éditez-le.

$ vim ~/.vimrc

Il nous faudra tout d’abord spécifier à l’extension Vim l’endroit où trouver le fichier JAR de correction grammaticale. Ceci se fait à l’aide de la variable ’g:languagetool_jar’. Dans notre cas le fichier jar se trouve dans le dossier software ->languagetool ->1.5 dans notre dossier personnel nous ajouterons donc cette ligne à notre fichier .vimrc.

let g:languagetool_jar=$HOME .
‘/software/languagetool/1.5/LanguageTool.jar’

Enfin par défaut la correction grammaticale est anglaise. Pour modifier ce comportement vous avez deux solutions. Soit, modifier la langue du document en cours d’exécution

:setlocal spell spelllang=fr

Soit, modifier la configuration par défaut pour tous les documents. Cette configuration peut déjà avoir été effectué si vous utilisez la correction syntaxique de Vim. Pour cela éditer le fichier vimrc et ajouter la ligne suivante.

setlocal spell spelllang=fr

Utilisation

L’extension Vim pour LanguageTool ajoute deux nouvelles commandes, LanguageToolCheck et LanguageToolClear. La commande LanguageToolCheck permet d’activer la correction grammaticale. Le document courant sera parcouru par LanguageTool et l’écran de Vim sera découpé en deux pour vous afficher la liste des erreurs grammaticales trouvées dans le document. La commande LanguageToolClear, elle, permet de fermer la correction grammaticale.
Lors de l’exécution de LanguageToolCheck, LanguageTool vous donnera des informations comme celle ci

Error: 1/37 (FRENCH_WHITESPACE) @ 1L 192C
Message: Point d’interrogation est …
Context: …de la correction grammaticale ? Nous …
Correction: ?

La première ligne vous informera du type d’erreur que vous rencontrez (ici un problème d’espace) et de la ligne où se produit l’erreur — Ici la ligne 1 — ainsi que le caractère sur la ligne. Il vous est ensuite présenté la raison de l’erreur et le contexte de l’erreur, c’est-à-dire le texte où se trouve l’erreur. Enfin LanguageTool vous propose une correction pour le problème que vous pouvez utiliser si vous le souhaitez !

Conclusion

Nous avons vu ici qu’il était très simple d’utiliser la correction grammaticale de LanguageTool dans Vim ce qui prouve encore une fois que tout est possible avec Vim. Si ce n’est pas déjà fait vous pouvez accompagner cette correction avec la correction syntaxique de Vim qui est inclus dans le cœur de Vim. En espérant que cet article vous a aidé, n’hésitez pas à me faire vos retours et n’oubliez pas : Vim c’est la vie !

Cet article est aussi disponible au format tex ou PDF.

Si vous avez apprécié cet article, pensé à laissé un commentaire ou vous abonner au flux RSS feed.

3 thoughts on “[Vim] La correction grammaticale !

  1. Je n’arrive pas a faire fonctionner la correction grammaticale.

    Pour l’installation pas de soucis mais quand je renseigne les deux lignes :

    let g:languagetool_jar=$HOME .
    ‘/software/languagetool/1.7/LanguageTool.jar’

    dans mon .vimrc j’ai un retour :

    Erreur détectée en traitant /home/master/.vimrc :
    ligne 106 :
    E15: Expression invalide :
    E15: Expression invalide : $HOME .
    ligne 107 :
    E492: Commande inconnue: ‘/software/languagetool/1.7/LanguageTool.jar’
    Appuyez sur ENTRÉE ou tapez une commande pour continuer

    Pouvez vous m’aider ?

    • Bonjour lifala,

      Il semble que la variable d’environnement HOME ne soit pas bien interprété par vim. Que donne l’affichage de celle ci via $ echo $HOME ?
      Qu’elle est votre système d’exploitation/distribution ?
      Une solution simple pour palier au problème serait de remplacer la variable $HOME par le chemin absolut du répertoire personnel mais ceci revient à contourner le problème plutôt qu’à le résoudre !!

      En espérant pouvoir vous aidez.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *