Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 02/07/2006, à 13:17

Saito

[Résolu]Emacs et personnalisation en-têtes

Bonjour à tous,

j'utilise la library auto-insert d'emacs permettant d'insèrer une en-tête statique ou non lors de l'ouverture d'un fichier. Jusque là, ça va. Seul problème: emacs me rajoute toujours l'en-tête par défaut en plus.

Exemple pour un fichier *.h:

                                           (mon en-tête)
/**********************************************************************
 * ml.h
 *
 *  Fait par moi ** <moi@parlabas.com>
 * Creation: <02-07-2006 13:07:50>
 * Time-stamp: <>
 **********************************************************************/
#ifndef _ML_H_
#define _ML_H_
#endif /* _ML_H_ */

                                              (en-tête par défaut)
/*
** ml.h
** 
** Made by moi
** Login   <moi@localhost.localdomain>
** 
** Started on  Sun Jul  2 13:07:50 2006 moi
** Last update Sun Jul  2 13:07:50 2006 moi
*/

#ifndef   	ML_H_
# define   	ML_H_
#endif 	    /* !ML_H_ */

Au cas où quelqu'un ait déjà utilisé cette fonctionnalité, et saurait l'utiliser.
Voici le passage de mon .emacs concernant l'auto-insert:

(require 'autoinsert)
(auto-insert-mode 1)
(setq auto-insert t)
(setq auto-insert-query nil)
(add-hook 'find-file-hooks 'auto-insert) 
(setq auto-insert-directory (expand-file-name "~/.elisp/autoinsert/"))
(setq auto-insert-alist
             '(
 (("\\.p[lm]$" .  "Perl Program")
                   nil
		   "#!/usr/bin/perl -w\n\n"
		   "use strict;\n")
("\\.\\tex$" . "autoinsert.tex")

))

;;en-tête dynamique
(define-auto-insert
   (cons "\\.\\([Hh]\\)\\'" "en-tête C/C++")
      '(nil
           "/*" (make-string 69 ?*) "\n"
           " * " (file-name-nondirectory buffer-file-name) "\n"
           " *\n"
           " *  "(user-full-name)" ** <"(progn user-mail-address)">\n"
	   " * Creation: <"(format-time-string "%d-%m-%Y %H:%M:%S" (current-time))">\n"
           " * Time-stamp: <>\n"
           " *" (make-string 68 ?*) "*/\n"
           (let* ((noext (substring buffer-file-name 0 (match-beginning 0)))
                  (nopath (file-name-nondirectory noext))
                  (ident (concat "_" (upcase nopath) "_H_")))
             (concat "#ifndef " ident "\n"
                     "#define " ident "\n\n"
                     "\n#endif /* " ident " */\n"))))

Merci par avance smile

Dernière modification par Saito (Le 03/07/2006, à 19:44)


Aku-Soku-Zan_Shinsengumi

Hors ligne

#2 Le 02/07/2006, à 14:43

Saito

Re : [Résolu]Emacs et personnalisation en-têtes

Hihi, alors que ça fait 2 jours que je cherche, je me décide à poster ici, et pouf je trouve...

Le problème vient en fait de /usr/share/emacs-extra/auto-template.el. Il suffit donc soit de le supprimer ou plutôt de mettre tout le contenu de ce fichier en commentaire (avec des ';' en lisp wink )

Voilà voilà...
smile


Aku-Soku-Zan_Shinsengumi

Hors ligne