Zope es una aplicación poderosa para construir soluciones vía web, una vez que se está usando, conviene saltar de la edición a través de su interfaz web hacia un editor de texto. En esta documentación se enfocará al uso de emacs con Zope. |
Cuando se desarrolla una aplicación en Zope es deseable contar con un buen editor en lugar de un área de texto en un navegador para editar, color de sintaxis, autocompletación, búsquedas, copiado y pegado, modificación por expresiones regulares, y todo lo que un buen editor puede ofrecer.
Uso de Emacs y Zope
Si Zope y emacs están correctamente configurados como se describe en la próxima sección, cuando se marca el ícono del lápiz en un navegador, se usa la ventana de emacs que debe estar abierta previamente, para almacenar los cambios hechos, en lugar de C-x C-s, se emplea C-x #, esto cierra el buffer que se activa en emacs al momento de ir al enlace del lápiz y almacena el archivo en el servidor.
Configuración
Esta sección describe la configuración tanto de emacs y zope.
Configuración de emacsclient
El primer paso es usar a emacs con emacsclient, configurar emacs para que en lugar de abrir una nueva instancia de emacs cuando se le invoque, aproveche el proceso que ya está en ejecución. En el archivo de configuración .emacs se inserta o adiciona la línea
- (server-start)
una vez que emacs ha leído el archivo de configuración(La primera vez reiniciando emacs), se puede invocar emacsclient con la ruta del archivo que se quiere editar, y se abrirá en la ventana de emacs que ya está en ejecución.
Configuración de Zope y el cliente para usar zope-edit
Zope debe tener el producto External-Editor habilitado, se identifica que este producto está instalado si aparece un ícono de un lápiz al costado derecho de las páginas que pueden editarse.
En el computador desde el cuál se desea hacer la edición, se requiere que esté instalado zope-edit, (en Debian y derivados apt-get install zopeedit), y en el archivo de configuración .zope-external-edit, se debe hacer que la variable editor tenga como valor a emacsclient
- editor=emacsclient
Cuando se instala zope-edit en una distribución hija de Debian el archivo /etc/mailcap se actualiza convenientemente para que los archivos de tipo Zope se editen a través de zope-edit de la forma siguiente, si este no es su caso, se puede hacer adicionando esta línea al archivo manualmente :
application/x-zope-edit; /usr/bin/zopeedit '%s'; description=Zope ExternalEditor; test=test "$DISPLAY" != ""
Emacs y el modo xml para dtml y zpt
Finalmente para que emacs sepa que los archivos .dtml y .zpt son de la familia xml, por ejemplo, para que la sintaxis se haga visible en colores y se pueda emplear el modo xml, se adiciona en el archivo .emacs líneas como las siguientes :
(setq auto-mode-alist
(cons '("\\.zpt" . xml-mode) auto-mode-alist))
(setq interpreter-mode-alist
(cons '("zope" . xml-mode)
interpreter-mode-alist))
(setq auto-mode-alist
(cons '("\\.dtml" . xml-mode) auto-mode-alist))
(setq interpreter-mode-alist
(cons '("zope" . xml-mode)
interpreter-mode-alist))

