cambiar permanentemente el modo de búfer de un archivo?


7

Pregunta de principiante:

En OSX 10.6.8, Aquamacs tiene muchos modos de almacenamiento intermedio. Mis archivos .tex se abren en modo TeX, pero me gustaría abrirlos en modo LaTeX. Puedo cambiar el modo con "Cambiar modo de búfer", pero incluso después de "guardar" o "guardar como", el modo anterior permanece.

¿Cómo puedo cambiar el modo de una vez por todas? (La pregunta también se refiere a los emacs estándar, supongo).


No hay un "Guardar" o "Guardar como ..." en Aquamacs . Solo para aclarar, ¿quiere decir "Guardar búfer" / "Guardar búfer como ..." o "Guardar sesión como ..."?
Greenonline

Respuestas:


7

Además de la respuesta específica de Andrew Swann para archivos TeX, la forma más general de establecer el modo por extensión de archivo es colocar una nueva entrada (o adaptar la existente) en el auto-mode-alist.

Del manual :

Esta variable contiene una lista de asociación de patrones de nombre de archivo (expresiones regulares) y los comandos de modo principal correspondientes. Por lo general, los patrones de nombre de archivo prueban los sufijos, como '.el' y '.c', pero este no tiene por qué ser el caso. Se ve un elemento ordinario de la lista (regexp. Mode-function).

Por ejemplo,

      (("\\`/tmp/fol/" . text-mode)
       ("\\.texinfo\\'" . texinfo-mode)
       ("\\.texi\\'" . texinfo-mode)
       ("\\.el\\'" . emacs-lisp-mode)
       ("\\.c\\'" . c-mode)
       ("\\.h\\'" . c-mode)
       ...)

Por lo tanto, uno normalmente haría un cambio permanente en la lista con algo como:

(add-to-list 'auto-mode-alist '("\\.tex\\'" . latex-mode))

Tenga en cuenta las barras invertidas, que escapan caracteres especiales.

La lista funciona porque se usará el primer valor coincidente en la lista. Por lo tanto, puede agregar al principio de la lista independientemente del contenido original para ese tipo de archivo, y se utilizará su nuevo valor.


6

Puede personalizar la variable, tex-default-modepor ejemplo latex-mode.

Este es en realidad el valor predeterminado en tex-mode.el, por lo que tiene una configuración / personalización variable que anula, tal vez establecida por aquamacso tiene una instalación anterior emacs.


3

También puede usar variables locales de archivo: poner %-*- mode: latex -*-como la primera línea en su archivo.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.