Dic 27 2008

Perl en emacs

Tag: basicoverdrive @ 4:08 pm

En el .emacs podemos cargar cperl-mode para perl en lugar de perl-mode. Aunque existan dos modos para perl:

(fset ‘perl-mode ‘cperl-mode)

cperl-mode se parece a cc-mode respecto a los keystrokes de desplazamiento y otras funcionalidades.

Para depurar en perl podemos usar M-x cperl-db.

Perl es un lenguaje que permite variables tales como $’, $/, etc por lo que cperl permite usar una tabla de sintaxis que ayuda a entender la mayor parte código extraño en perl.

En nuestro .emacs además podemos agregar opciones interesantes para tener un comportamiento determinado cuando desarrollemos en perl:

Con esta línea mostrará sólo el nivel más alto de nodos cuando se lea un fichero perl:

(add-hook ‘c-perl-mode-hook ‘hide-body)

Para cargar outline mode como modo menor cuando se cargue el modo perl:

(add-hook ‘c-perl-mode-hook ‘outline-minor-mode)

Con esta línea cambiamos el prefijo para los comandos outline de C-c @ a C-c C-o:

(set outline-minor-mode-prefix «\C-co»)

Carga el fichero para poder acceder al modo cperl-mode:

(load-file «cperl-mode.el)


Dic 22 2008

SQL en emacs

Tag: basicoverdrive @ 11:48 pm

Para utilizar SQL bajo emacs requiere tener instalado el cliente mysql como mínimo.

Existen 2 métodos a la hora de operar con SQL:

  • Interactivo (interactive): te comunica directamente con la base de datos del servidor, ejecuta los comandos y muestra la salida inmediatamente.
  • Editando (editing): te permite construir y editar comandos más complejos.

Para ejecutar el modo interactivo debemos pulsar M-x sql-mysql y luego pregunta por el modo específico de la base de datos. También pedirá datos como username, password, base de datos y servidor a conectar.

Para entrar en modo editando debemos ejecutar M-x sql-mode. Este modo provee cierta asistencia para componer sentencias SQL complejas.

C-c C-c : ‘sql-send-paragraph‘; envía el párrafo.
C-c C-v : ‘sql-send-region‘; envía una región.
C-c C-b : ‘sql-send-buffer‘; envía el buffer completo.


Dic 21 2008

TeX y LaTeX en emacs

Tag: basicoverdrive @ 9:56 pm

Los comandos LaTeX normalmente toman la forma:

\keyword{text}

Debido a que LaTeX es extensible, Emacs no checkea que la palabra clave sea correcta. Además de ello en LaTeX, los caracteres {} y $$ aparecen en pares, por lo que emacs genera estos pares.

Para entrar en el modo LaTeX debemos invocar M-x latex-mode o bien M-x plain-text-mode si vamos a trabajar con TeX. Además de ello existen otras dos opciones más, que son M-x tex-latex y M-x text-context. Veamos que juego de keystrokes facilita emacs para tareas fundamentales en estos modos:

C-c { : inserta el par de llaves.
C-c } : se desplaza por el par de llaves.
(sin keystroke asociada) : ‘tex-validate-buffer‘; valida la apertura y cierre de llaves y dolares en el buffer.
(sin keystroke asociada) : ‘tex-validate-region‘; valida la apertura y cierre de llaves y dolares en una región dada.
C-q «; inserta quotation marks (ya que no forma parte del ASCII standard).
C-q `; inserta quotation marks (ya que no forma parte del ASCII standard).
C-c C-o; ‘latex-insert-block‘: inserta un par comando.
C-c C-c; ‘latex-close-block‘; inserta el cierre del comando en caso de haber escrito la apertura.
C-c C-f; ‘tex-file‘; parsea, compila y muestra el tex.
C-c C-l; ‘tex-recent-output-buffer‘; representa el fichero si no se encuentra en una ventana el buffer.
C-c C-u; para ver el resultado del fichero usando el visor xdvi.
C-c C-p; ‘tex-print‘; imprime el fichero.
C-c C-q; ‘tex-show-print-queue‘; muestra la cola de impresión.
C-j; ‘tex-terminate-paragraph‘; inserta dos retornos ‘duros’ y checkea la sintaxis del párrafo.
C-c C-b; ‘tex-buffer‘; procesa el buffer.
C-c C-k; ‘tex-kill-job‘; mata el procesamiento.
C-c TAB; ‘tex-bibtex-file‘; procesa el trabajo actual usando bibtex (para bibliografias).
(sin keystroke asociada) : ‘tex-all-print‘; imprime el dvi usando una impresora adicional. Para ello checkea la variable tex-alt-dvi-print-command.
(sin keystroke asociada) : ‘latex-insert-item‘; inserta un \item en latex.
(sin keystroke asociada) : ‘latex-split-block‘; inserta el final del bloque actual y el principio de uno nuevo.
(sin keystroke asociada) : ‘tex-insert-quote‘; inserta «.


« Página anteriorPágina siguiente »