Sous Debian Sarge, lorsque j'ouvre avec Emacs un fichier avec
l'extension .dem il ne passe pas automatiquement en mode gnuplot alors
qu'avec un fichier *.gp il le fait.
Comment régler ceci... parce que les exemples dans
/usr/share/doc/gnuplot-doc/examples
ont l'extension .dem (et pas .gp)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Sébastien Kirche
Le 9 mai 2005, s'est exprimé ainsi :
Bonsoir,
Bonsoir,
Sous Debian Sarge, lorsque j'ouvre avec Emacs un fichier avec l'extension .dem il ne passe pas automatiquement en mode gnuplot alors qu'avec un fichier *.gp il le fait. Comment régler ceci... parce que les exemples dans /usr/share/doc/gnuplot-doc/examples ont l'extension .dem (et pas .gp)
Je conseillerais de regarder auto-mode-alist qui permet d'associer une extension à un mode.
Un truc du genre devrait régler le problème dans le .emacs : (add-to-list 'auto-mode-alist '(".dem'" . gnuplot-mode)) (non testé, je n'ai pas le mode gnuplot ici)
La docstring de la variable (C-h v auto-mode-alist) est très intéressante. On voit comment faire de même pour les scripts exécutables et pour identifier un type de fichier par son contenu.
HTH. -- Sébastien Kirche
Le 9 mai 2005, noone@nowhere.com s'est exprimé ainsi :
Bonsoir,
Bonsoir,
Sous Debian Sarge, lorsque j'ouvre avec Emacs un fichier avec
l'extension .dem il ne passe pas automatiquement en mode gnuplot alors
qu'avec un fichier *.gp il le fait.
Comment régler ceci... parce que les exemples dans
/usr/share/doc/gnuplot-doc/examples
ont l'extension .dem (et pas .gp)
Je conseillerais de regarder auto-mode-alist qui permet d'associer une
extension à un mode.
Un truc du genre devrait régler le problème dans le .emacs :
(add-to-list 'auto-mode-alist '("\.dem\'" . gnuplot-mode))
(non testé, je n'ai pas le mode gnuplot ici)
La docstring de la variable (C-h v auto-mode-alist) est très
intéressante. On voit comment faire de même pour les scripts exécutables
et pour identifier un type de fichier par son contenu.
Sous Debian Sarge, lorsque j'ouvre avec Emacs un fichier avec l'extension .dem il ne passe pas automatiquement en mode gnuplot alors qu'avec un fichier *.gp il le fait. Comment régler ceci... parce que les exemples dans /usr/share/doc/gnuplot-doc/examples ont l'extension .dem (et pas .gp)
Je conseillerais de regarder auto-mode-alist qui permet d'associer une extension à un mode.
Un truc du genre devrait régler le problème dans le .emacs : (add-to-list 'auto-mode-alist '(".dem'" . gnuplot-mode)) (non testé, je n'ai pas le mode gnuplot ici)
La docstring de la variable (C-h v auto-mode-alist) est très intéressante. On voit comment faire de même pour les scripts exécutables et pour identifier un type de fichier par son contenu.
Outre le fait que cet appel parcourrera toute la liste pour vérifier que la valeur ne s'y trouve pas encore (ce qui n'est pas énorme, mais l'auto-mode-alist peut quand meme être grande), il ne l'insérera pas si elle s'y trouve déjà.
Comme on manipule une alist, on peut arriver a un résultat faux, puisqu'une recherche trouvera la première cons-cell dont la clef matche le nom de fichier. Par exemple, si l'alist ressemble a :
(("em'" . other-mode) (".dem'" . gnuplot-mode))
le 'add-to-list' n'aura aucun effet.
(let ((l '((a . 1) (a . 2)))) (add-to-list 'l '(a . 2)) (cdr (assq a l))) ==> 1
(let ((l '((a . 1) (a . 2)))) (push '(a . 2) l) (cdr (assq a l))) ==> 2
En général, je conseillerais d'utiliser 'push' par défaut, et n'utiliser 'add-to-list' que si l'on sait ce que l'on fait.
Outre le fait que cet appel parcourrera toute la liste pour vérifier
que la valeur ne s'y trouve pas encore (ce qui n'est pas énorme, mais
l'auto-mode-alist peut quand meme être grande), il ne l'insérera pas
si elle s'y trouve déjà.
Comme on manipule une alist, on peut arriver a un résultat faux,
puisqu'une recherche trouvera la première cons-cell dont la clef
matche le nom de fichier. Par exemple, si l'alist ressemble a :
Outre le fait que cet appel parcourrera toute la liste pour vérifier que la valeur ne s'y trouve pas encore (ce qui n'est pas énorme, mais l'auto-mode-alist peut quand meme être grande), il ne l'insérera pas si elle s'y trouve déjà.
Comme on manipule une alist, on peut arriver a un résultat faux, puisqu'une recherche trouvera la première cons-cell dont la clef matche le nom de fichier. Par exemple, si l'alist ressemble a :
(("em'" . other-mode) (".dem'" . gnuplot-mode))
le 'add-to-list' n'aura aucun effet.
(let ((l '((a . 1) (a . 2)))) (add-to-list 'l '(a . 2)) (cdr (assq a l))) ==> 1
(let ((l '((a . 1) (a . 2)))) (push '(a . 2) l) (cdr (assq a l))) ==> 2
En général, je conseillerais d'utiliser 'push' par défaut, et n'utiliser 'add-to-list' que si l'on sait ce que l'on fait.
--drkm
Sébastien Kirche
Le 11 May 2005, drkm vraute :
En général, je conseillerais d'utiliser 'push' par défaut, et n'utiliser 'add-to-list' que si l'on sait ce que l'on fait.
Merci pour l'explication. Imprimé pour mes archives :)
-- Sébastien Kirche
Le 11 May 2005, drkm vraute :
En général, je conseillerais d'utiliser 'push' par défaut, et
n'utiliser 'add-to-list' que si l'on sait ce que l'on fait.
Merci pour l'explication. Imprimé pour mes archives :)