GNU Emacs: Mejorando Tabbar

emacs

Ya vimos cómo Añadir pestañas a Emacs. Ahora veremos cómo cambiar las agrupaciones.

Ingredientes

Nuevamente, Emacs y emacs-goodies-el.

Agrupaciones

A menudo me ha ocurrido que he tenido que abrir ficheros Makefile. Realmente es un fastidio que tabbar agrupe por extensiones: a mí me gustaría tener disponibles mi Makefile, los .C y los .CPP que utilizo constantemente.

Hoy editaremos a mano, una vez más, nuestro queridísimo .emacs (_emacs para los Windozes). Ahí va un ejemplo de hacer lo que he descrito:

(defun tabbar-buffer-groups (buffer)
  (with-current-buffer (get-buffer buffer)
    (cond
     ((eq major-mode 'dired-mode) '("Main") )
     ((memq major-mode '(c-mode c++-mode makefile-mode)) '("Coding") )
     )
    )
  )

Claro, que suele ser un fastidio tener todas las pestañitas ésas: scratch, Messages, ... Ahí va mi configuración:

(defun tabbar-buffer-groups (buffer)
  "Return the list of group names BUFFER belongs to.
Return only one group for each buffer."
  (with-current-buffer (get-buffer buffer)
    (cond
     ((member (buffer-name) '("*scratch*")) '("Misc") )
     ((member (buffer-name) '("*Messages*")) '("Misc") )
     ((member (buffer-name) '("*Completions*")) '("Misc") )
     ((member (buffer-name) '("*Ediff Registry*")) '("Misc") )
     ((eq major-mode 'dired-mode) '("Main") )
     ((memq major-mode '(c-mode c++-mode makefile-mode)) '("Coding") )
     (t '("Main") )
     )
    )
  )

Como podéis ver, tengo 3 grupos principales: Misc, Coding y Main. Por defecto lo mete todo en "Main", salvo los ficheros de c, c++ y Makefiles que son "Coding", y los buffers habituales van a "Misc".

Con esta base y un poco de imaginación, se pueden hacer muchas cosas muy apañadas...

Referencias

Mike's Emacs Help Page (y ese Mike no soy yo Laughing out loud).

Próxima semana:

Bueno... Podéis observar que he roto lo habitual de escribir cada semana. A parte de que estoy muy liado, ¡se me están acabando las ideas!.

David ha proporcionado unos cuantos TES y Brue también ha puesto su granito de arena. Si alguien más participa, ¡estupendo! pero, por mi parte, se acaban los TES.

De todas maneras, podéis poner vuestros trucos y marcarlos como "emacs" en la pestaña "Tema". Siempre son bienvenidos Eye-wink

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Lk2

Ups...

Pues al añadir tus reglas tal cual al final del .emacs, al vovler a iniciarlo ya no me aparecen por ningún lado las pestañas... y al volver a quitarlo recupero las ventanas pero sin estas reglas tan bonicas.

¿Qué puede ocurrir?

Imagen de Vigilante

Lo mismo

A mi me ocurrió lo mismo pero pensé que era algún problema mio al editar, copiar-pegar. No me acuerdo exactamente cual es el problema pero date cuenta que si abres emacs y en el menú Options pulsas Save Option, podrás ver un mensaje de error orientativo (quizás te falte, sobre algún paréntesis o no lo introdujiste en la sección adecuada).