URL: https://linuxfr.org/forums/general-general/posts/abbrev-mode-sensible-%C3%A0-la-casse-dans-emacs Title: Abbrev-mode sensible à la casse dans Emacs Authors: chx dein Date: 2006年01月28日T21:28:57+01:00 Tags: Score: 0 C'est dommage, il n'y a toujours pas de forum consacré aux éditeurs... Tant pis. Ma question concerne Emacs. J'ai découvert aujourd'hui le mode abréviation. Le problème c'est que celui-ci est insensible à la casse et modifie automatiquement la casse de l'insertion. Par exemple, si vous faîtes : ` fr C-x a i g France ` Cela lie l'abréviation fr au mot complet France. Ensuite si vous entrez : `Fr` cela devient : `FRANCE` Ce qui n'est évidement pas le comportement attendu (on attendait plutôt `France`). En règle générale, dès qu'il y a une majuscule dans l'abbréviation, Emacs la remplace par l'élément prévu, mais entièrement en majuscule. C'est pour cela que j'aimerais : - d'une part que le mode abbrev soit sensible à la casse - d'autre part qu'il ne modifie jamais ce qu'il doit insérer. J'ai pas mal cherché : sur google : [http://www.google.com/search?rls=fr&q=abbrev-mode+case-s(...)](http://www.google.com/search?rls=fr&q=abbrev-mode+case-sensitive&ie=UTF-8&oe=UTF-8) Le premier lien est mort, la version en cache [http://72.14.203.104/search?q=cache:G0nF6opCdnwJ:lists.gnu.o(...)](http://72.14.203.104/search?q=cache:G0nF6opCdnwJ:lists.gnu.org/archive/html/emacs-devel/2002-07/msg00760.html+abbrev-mode+case-sensitive&hl=fr&ct=clnk&cd=1) fonctionne bien, mais impossible de mettre la main sur le patch proposé. Voici la partie intéressante de mon .emacs : ;; sauvegarder le fichier ~/.abbrev_defs (if (not (file-exists-p "~/.abbrev_defs")) ;if there is no abbrev file £spaces£ £/spaces£(write-abbrev-file "~/.abbrev_defs")) ;create one (read-abbrev-file "~/.abbrev_defs") ;load abbrev file (setq save-abbrevs t) ;save it automatically (setq-default dabbrev-case-replace nil) ; case when expanding (setq dabbrev-case-replace nil) ; Preserve case when expanding (setq-default dabbrev-case-fold-search nil) (setq-default case-fold-search nil) (setq abbrev-mode t) Les variables _dabbrev-case-fold-search_ et _dabbrev-case-replace_ n'existe pas dans ma version de Emacs donc c'est normal que ça ne change rien. Avez-vous une idée ? D'autre part, je voudrais savoir si vous saviez où on peut trouver des fichiers .abbrev. Je compte mettre le mien à disposition, mais j'ai l'impression d'être le premier à le faire ! Je vous remercie d'avance...