Comment obtenir le mode principal actuel?


30

Si je modifie un fichier .tex dans emacs, par défaut (pour moi) le coin inférieur droit du cadre indiquera "LaTeX / P". Cependant, je ne parviendrai pas à ce mode en tapant "Mx LaTeX / P-mode"; Je ne peux y accéder qu'en tapant "Mx latex-mode".

À part Googler, comment suis-je censé savoir que ce que je tape pour accéder à ce mode est le "mode latex"?

Réponses:


43

Je pense que la manière la plus simple est de vérifier la valeur de la major-modevariable buffer-local , avec:

  • C-hv major-mode RET
  • M-: major-mode RET

12

C-h m vous donne de l'aide sur le mode actuel et vous indique généralement le nom de la commande qui active le mode.

Par exemple, en mode Emacs-Lisp C-h mvous indique que vous êtes en Emacs-Lispmode. La commande qui active le mode est juste emacs-lisp-mode.

C-h mfournit également un lien vers la bibliothèque qui définit le mode, et si vous cliquez sur ce lien, il vous amène à la définition de la commande mode. Par exemple, en mode Emacs-Lisp C-h mvous indique:

Emacs-Lisp mode defined in `lisp-mode.el'

Et si vous cliquez sur le lien, lisp-mode.elEmacs vous amène à la définition de la commande emacs-lisp-mode, qui est la commande qui active le mode:

(define-derived-mode emacs-lisp-mode prog-mode "Emacs-Lisp"
  "Major mode for editing Lisp code to run in Emacs.
  ...)

0

Il est possible d'obtenir le mode majeur simplement en évaluant cette expression:

(print major-mode)


2
Cela semble répéter la réponse de @ phils: examinez la variable major-mode( emacs.stackexchange.com/a/18084/105 ).
Drew

Oui, nous évaluons la même chose variable de cours, car c'est ce qui stocke la valeur du mode majeur. La différence est juste la façon dont vous souhaitez implémenter cette fonction. nous pouvons peut-être définir une fonction, avec cette commande en place et la lier avec une clé. Donc mon point étant elisp vs en utilisant la ligne de mode emacs.
sidharth arya
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.