Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Two-mode-mode et desktop

1 réponse
Avatar
Ph. Ivaldi
Bonjour,

J'utilise le paquet two-mode-mode qui permet de basculer automatiquement
le buffer d'un mode majeur à un autre suivant le contexte.
La fonction lasy-mode ci-dessous bascule two-mode-mode.

(defun lasy-mode ()
"Treat, in some cases, the current buffer as a literate Asymptote program."
(interactive)
(setq default-mode '("LaTeX" latex-mode)
second-modes '(("Asymptote"
"\\begin{asy"
"\\end{asy"
asy-mode)))
(if two-mode-bool
(progn
(latex-mode)
(if lasy-keep-key
(use-local-map lasy-mode-map)
(use-local-map LaTeX-mode-map)))
(progn
(two-mode-mode))))

asy-mode est défini ainsi:
(define-derived-mode asy-mode c++-mode "Asymptote"
"doc"
etc...
)


Le problème est le suivant:
si je ferme Emacs alors que le buffer est en two-mode-mode et asy-mode
je le retrouve lors de la session suivante (via desktop) en asy-mode et
non pas en t-m-m&asy-mode.

Y a-t-il un moyen de basculer tous les buffers en t-m-m&asy-mode en
latext-mode au moment de la fermeture ?
Avez-vous une autre proposition pour résoudre ce problème ou pensez vous
qu'il s'agisse d'un bug de two-mode-mode (ce dont je doute).

Merci de votre aide,
--
Philippe Ivaldi.

1 réponse

Avatar
Ph. Ivaldi
Le 26 août 2006 à 11h13:47,
Ph. Ivaldi écrivit :

Bonjour,



Salut,


J'utilise le paquet two-mode-mode qui permet de basculer
automatiquement le buffer d'un mode majeur à un autre suivant le
contexte. La fonction lasy-mode ci-dessous bascule two-mode-mode.

[...]

Le problème est le suivant: si je ferme Emacs alors que le buffer est
en two-mode-mode et asy-mode je le retrouve lors de la session
suivante (via desktop) en asy-mode et non pas en t-m-m&asy-mode.



Il suffit de lire la documentation de desktop.el

(if (featurep 'desktop)
(progn
(defun asy-restore-desktop-buffer (desktop-b-f-nanme d-b-n d-b-m)
(find-file desktop-b-f-nanme))
(add-to-list 'desktop-buffer-mode-handlers
'(asy-mode . asy-restore-desktop-buffer))))

devrait convenir.

Merci de votre aide,



De rien.
--
Philippe Ivaldi.