Franck Joncourt a écrit, dimanche 20 mai 2007, à 18:08 : > On Sun, May 20, 2007 at 04:56:17PM +0200, Remi Vanicat wrote: > > Franck Joncourt <[EMAIL PROTECTED]> writes: > > > > > ; definition du hook personnel > > > (defun my-hook () > > > (define-key cc-mode-map "\C-c i" 'insert-cfile-header)) _________________________________^^^^!^
> > [...] > > > > > > (global-set-key (kbd "\C-c i") 'insert-cfile-header) > > > > donc si tu essais > > (defun my-hook () > > (define-key cc-mode-map (kbd "\C-c i") 'insert-cfile-header)) > > > > il se passe quoi ? > > Il ne se passait rien. Aucun raccourci n'etait attribue. Attention aussi à la syntaxe des séquences de touches, pour « C-c i » c'est, entre autres, (kbd "C-c i") "\C-ci" En positionnant le curseur à la fin d'une des deux lignes ci-dessus, et en tapant « C-x C-e », Emacs va afficher « "^Ci" », où ^C représente un seul caractère, Control-C ; on peut d'ailleurs le taper directement avec « C-q C-c ». La méthode kbd me semble préférable --- il suffit de taper la séquence voulue, puis « C-h l » affichera la représentation de celle-ci, à mettre entre double-quotes comme argument de kbd... > Un tonnerre d'applaudissements : j'ai trouve. Bravo. > C'est pas cc-mode mais c-mode pour un fichier ".c". Mais je ne comprends > pas pourquoi il me chargeait cc-mod et ne lui associait pas le > raccourci, car c'est pourtant ce que j avais ecrit. Ah, ce n'est pas de ta faute, « emacs -q --no-site-file toto.c » (Sarge) me fait le même coup ; mais c'est pervers, le « c-mode » est chargé par le fichier ... « cc-mode.el » : M-x apropos RET c-mode RET ... Entrée sur c-mode => c-mode is an interactive autoloaded Lisp function in `cc-mode'. Au pif, je dirais que le fichier cc-mode a remplacé un vieux c-mode ? > Donc, j'ai teste deux methodes : > > 1/ Auto insert : comme il m'avait ete souligne dans un mail : > emacs + auto-insert avec google me donne une solution > > http://www.docmirror.net/fr/linux/howto/misc/LinuxDoc+Emacs+Ispell-HOWTO/LinuxDoc+Emacs+Ispell-HOWTO-6.html > > Je vais adopter celle-ci pour l'ouverture de fichiers vierges. Ça doit marcher, mais demande sur news:fcae ce qui est utilisé maintenant. > 2/ > - Creation d'une fonction pour inserer un fichier > - Creation d'un hook (1) avec association de la dite fonction et un > raccourci clavier > - Ajout du hook (1) au hook du mode pour lequel on veut mettre en place > le raccourci clavier. Ça s'exécutera à chaque appel de la fonction c-mode, il est plus élégant d'utiliser (eval-after-load "cc-mode" ; le nom du fichier, sans chemin ni extension '(ta-fonction-c-mode-setup)) pour ne définir qu'une fois la c-mode-map(*) et les fonctions associées. (*) et pas cc-mode-map ! -- Jacques L'helgoualc'h -- Lisez la FAQ de la liste avant de poser une question : http://wiki.debian.net/?DebianFrench Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et "Reply-To:" To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]