OVH Cloud OVH Cloud

Associer les .dem avec le gnuplot-mode

4 réponses
Avatar
noone
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)

Merci d'avance.

4 réponses

Avatar
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
Avatar
noone
Merci
ça marche impec
Avatar
drkm
Sébastien Kirche writes:

(add-to-list 'auto-mode-alist '(".dem'" . gnuplot-mode))



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
Avatar
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