Valkertown Home

2007-04-30-actualizacic3b3n emacs

Es cierto, Emacs suele ser un poco lento al cargar, de eso no hay duda y aún en las mejores maquinas se sabe tardar en cargar, por esto cuando necesito hacer modificaciones menores sigo usando vim; Sin embargo, emacs sigue siendo mi editor de preferencia cuando se trata de pasar varias horas editando.

Ahora, emacs brilla por su capacidad para modificarlo a mis propios gustos y me encanta revisar constantemente la Emacs Wiki, siempre hay cosas nuevas que aprender.

Uno de mis ahora grandes favoritos es el server mode, realmente me da verguenza no haberlo descubierto antes; este modo permite ahorrarse unos segundos cada vez que se abre un archivo nuevo. Al iniciar el servidor de emacs se puede llamar desde la consola el _ emacsclient, _ que, en vez de iniciar otra instancia del editor, carga el nuevo archivo en la instancia que tenga el modo servidor. Esto es excelente en muchos casos, aunque muchas veces me gusta tener más de un frame de emacs, aun no manejo con tanta maestria las divisiones de emacs. A este modo de emacs se le puede combinar con It's All Text, esta extension de firefox permite editar los cuadros de texto de las páginas, en un editor externo, en mi caso escogi el emacsclient y lo utilizo principalmente para editar y corregir todo lo relacionado con el blog.

Y la lista sigue, con emacs la diversion nunca acaba.

Hace poco empece a utilizar el Emacs Code Browser, una excelente herramienta para navegar entre los archivos de un proyecto, hace demasiadas cosas como para tratar de enlistarlo todo aqui. Es mejor seguir el link y descubrir esta maravilla. Cosas como historial de archivos visitado, bookmarks en los sources...

Este mismo envio lo estoy escribiendo en emacs GNU Emacs 22.1.50.1, utilizando el weblogger mode. No estoy seguro si funciona en versiones anteriores de emacs, pero hasta el momento utilizar la version CVS de emacs ha sido bastante agradable.

Más cosas interesantes, el pair-mode, que cierra automaticamente cada parentesis que se abre y pone el cursor en medio de los dos, muy útil en mi opinión.

Para finalizar, completado automatico de variables y funciones en emacs, algo por lo que alguna vez cedi un poco en cuanto a que no sabia como se podia hacer en emacs, pero ahora aqui esta:

Tambien existe eldoc mode que permite que emacs indique que argumentos recibe cada función a medida que se va escribiendo, ya lo probe con elisp y funciona una maravilla, tengo que hacerle funcionar para C y Python

 ;; Activar Modo servidor
  (server-start)
 ;; Completado automatico manteniendo la posibilidad de indentar.
 (defun indent-or-complete ()
   "Complete if point is at end of a word, otherwise indent line."
   (interactive)
   (if (looking-at "\\>")
       (dabbrev-expand nil)
     (indent-for-tab-command)
     ))
 ;; Hooks para la tecla TAB a indent-or-complete en los modos de C y Python
 (add-hook 'c-mode-hook
       (function (lambda ()
               (local-set-key (kbd "<tab>") 'indent-or-complete)
               )))
 (add-hook 'python-mode-hook
       (function (lambda ()
               (local-set-key (kbd "<tab>") 'indent-or-complete)
               )))

EOM

comments powered by Disqus

© 2008-2012 Carlos A. Perilla deepspawn at valkertown dot org | Based on original design by Andreas Viklund