Forum Astuces.divers [Éditeur/Vim] Correction orthographique avec Vim

Posté par (page perso) .
Tags : aucun
1
10
nov.
2007
Le saviez vous ? Vim est capable de réaliser des corrections orthographiques en ligne, et un de ses gros points forts est que cette correction tiens compte des spécificités du langage sur lequel on travaille.
Par exemple pour éditer un fichier .c ou .po, il va s'intéresser uniquement aux déclarations de chaines de caractères entre guillemets et aux commentaires, ou encore lorsqu'on travaille avec un fichier tex il ne va pas tenir compte du balisage et des formules. C'est royal !!

Pour profiter de cela, c'est assez simple, il suffit d'installer les dicos et d'activer la chose :
1) Récupérer les dictionnaires (fr.*.spl) ici : http://ftp.vim.org/vim/runtime/spell/
2) Les copier dans /usr/share/vim/vim71/spell/ (il faut être root) ou dans ~/.vim/spell/
3) Éditer le /etc/vim/vimrc (ou ~/.vimrc) et ajouter :

augroup filetypedetect
au BufNewFile,BufRead *.tex setlocal spell spelllang=fr
augroup END

Ce qui activera la chose dès que le fichier édité sera un .tex (à remplacer par n'importe quoi)

4) Profitez ...
  • # Super!

    Posté par . Évalué à 0.

    Merci pour l'astuce.

    Je suis sur un poste Windows (au taf) et j'ai dû éditer le fichier C:\Documents and Settings\userlogin\.vimrc
    Faut évidement changer le userlogin par le nom d'utilisateur.
    Alors pour créer un fichier qui commence par un point il faut le sauver à partir de...gvim par exemple. En effet c'est pas possible directement à partir du windows explorer! Arf! Arf! Il est nul ce windows!

    J'ai trouvé ceci qui pourrait interresser du monde:
    http://pages-perso.esil.univmed.fr/~lafirme/website/article.(...)
  • # Activation sur demande

    Posté par . Évalué à 1.

    Si comme moi vous n'aimez pas qu'on vous rappelle constamment votre pitoyable niveau en orthographe, voici une fonction simple pour activer/désactiver la correction à la demande en appuyant sur <F10> (à recopier dans votre .vimrc):
    " Toggle option 'spell'
    
    function! ToggleSpell()
      if &spell
        set nospell
      else
        set spell
      end
    endfunction
    
    noremap <F10> :call ToggleSpell()<cr>
    inoremap <F10> <Esc>:call ToggleSpell()<cr>a
    
  • # comment faire avec fichiers inclus avec \input

    Posté par . Évalué à 1.

    Bonjour,

    Merci pour cette "astuce", vraiment excellent !

    J'ai juste un souci : quand je fais un doc latex assez gros, je préfère "éclater" le texte dans plusieurs fichiers .tex que je ramène dans le doc principal avec des \input.

    Cependant quant j'édite les fichiers ces derniers ne possèdent pas de balises latex "importantes" (telles que \begin{document}, \includepackage{...}, ...), et il me semble de vim (gvim dans mon cas) a du mal à activer la correction orthographique correctement.

    Par exemple si je tape "kdjskdhsd" dans un tel fichier, il ne le détecte pas toujours comme une faute d'orthographe, si je rajoute \begin{document} dans le .tex, "hop!" le mot "kdjskdhsd" est souligné.

    Idem si je mets "kdjskdhsd" en commentaires latex avec "%kdjskdhsd", il détecte alors "la" faute de frappe

    Voilà, sinon encore une fois merci pour l'info ;)

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.