Emacs… cuatro cositas para no perecer en el intento.

Emacs-logo

Un manual online completo español: http://www.nongnu.org/emacs-man-es/

Como todo el mundo sabe emacs es mucho más que un editor y por si fuera poco, algunas ordenes no coinciden si se lanza en una tty o sobre las X. Lo que sigue es un pequeño manual de primeros auxilios centrado en emacs23-nox, o sea el de consola (no X) más que nada, mi minúscula chuleta para tener siempre cerca.

Significado de algunas teclas en la terminologia de emacs:

Alt = M (meta)
Crtl= C (control)
SPC (Barra espacio)
RET (intro)
RETRO (retroceso)

$ emacs -nw (Lanzar emacs en consola. Para crear un alias: alias emacs=’emacs -nw’)
$ emacs -nw –debug-ini (Modo debuger para comprobar errores de sintaxis en ~/.emacs)

Teclas de socorro:

C-g (Cancelar algo: un comando, una combinación de teclas…)
C-x u (Deshacer la última pífia)

Teclas para moverse por el texto con más o menos soltura:

C-a (ir al comienzo de una línea)
C-e (ir al final de una línea)
C-f (un caracter hacia adelante)
C-b (un caracter hacia atrás)
M-f (una palabra hacia adelante)
M-b (una palabra hacia atrás)
C-n (ir a la siguiente línea)
C-p (ir a la línea anterior)
M-a (Ir al inicio de la frase)
M-e (Ir al final de la frase)
C-v (Pagina siguiente)
M-8 C-v (baja 8 lineas la pantalla, NO 8 PÁGINAS)
M-v (Pagina anterior)
M-8 M-v (Sube 8 lineas la pantalla, NO 8 PÁGINAS)
M-< (Ir al principio del texto)
M-> (Ir al final del texto)
C-l (Redibuja la pantalla. La primera vez que se pulsa, coloca la linea del cursor en el centro, la segunda arriba y la tercera abajo)

Salir:

C-x C-c (Salir de Emacs)
C-x C-s (Guardar sin salir)
C-x C-w (Guardar como)
C-x s (Guardar todos los ficheros abiertos. Preguntará.)

Copiar, cortar, pegar

C-Epc (Inicio del marcado de texto)
C-h (Marcar todo el buffer, “Seleccionar todo”)
M-w (Copiar)
C-w (Cortar)
C-y (Pegar)

Buscar alguna palabra:

C-s (busca hacia adelante)
C-r (busca hacia atras)
C-s C-s (repite la busqueda)

Borrar:

M-d (Palabra despues del cursor)
M-3 M-d (Borra 3 palabras)
C-k (del cursor a fin de linea)
M-3 C-k (Borra 3 lineas)
M-k (todo el párrafo)
M-3 M-k (Borra 3 párrafos)

Nota.- Como puede verse, muchos comandos admiten un dígito: Si borrar una linea es C-k, borrar 5 lineas será M-5 C-k, lo cual significa que se entra el dígito con la tecla Alt pulsada

Ventanas

C-x 2 (división horizontal de la ventana en dos)
C-x 3 (división vertical de la ventana en dos)
C-x 1 (Deja solo la ventana activa abierta)
C-x o (cambiar de ventana)
C-x 0 (Eliminar ventana actual)
C-x { (La acorta en dirección horizontal)
C-x ^ (La alarga en dirección vertical)
C-x } (alarga la ventana activa en dirección horizontal)

Bufers

C-x b (Cambiar de buffer)
C-x k (cierra la buffer actual. Pide confirmación)
C-x C-b (Listar buffers. Cada archivo se abre en un buffer)

Marcas por si queremos volver a una linea más adelante o de aquí a varios dias:

C-x r m (Solicita nombre para la linea marcada)
C-x r b (Ir a la linea marcada con el nombre que entremos, en este caso la “b”)
C-x r l (Lista todas las marcas)

Imprimir:

C-u M-x ps-print-buffer-with-faces (Imprimir a ps. Luego con ps2pdf pasar a pdf)
M-x print-buffer (Imprimir archivo con numeración y cabeceras)
M-x lpr-buffer (Imprimir sin numeración ni cabeceras)
M-x print-region (Imprimir trozo seleccionado con numeración y cabeceras)
M-x lpr-region (Imprimir trozo seleccionado sin numeración ni cabeceras)

Varios:

C-x C-f (brir un archivo)
C-o (Inserta linea en blanco a continuación del cursor)
M-x tetris (Otros juegos: dunnet, snake, doctor, zone…)
M-x help-with-tutorial-spec-language (abre buffer con los idiomas disponibles para el manual)
F10 (Abre la ayuda)
C-x d (Abre un directorio que se especifique)
C-x RET f (Entrar codificación de caracteres: latin-1-unix [latin1], utf-8-unix [utf8]..)

Entrar comandos de shell durante la sesión de emacs:

C-z (Suspende la sesion emacs y entra en la shell. Volver a emacs con fg o con %emacs)
M-! (Muestra en el mini buffer un mensaje para entrar un comando y lo abre un una ventana)
C-u M-! (Inserta la salida del comando en la posición del cursor)

Algunas posibilidades:

M-x recover file (levantar respaldo del archivo)
M-x describe-key INTRO (y presionando una combinación de teclas devuelve el comando asignado)
M-x apropos INTRO print (Muestra información de “print”)
M-x list-faces-display (Ver lista y muestra de los estilos disponibles)
M-x set-foreground-color (Pedirá color en inglés para las fuentes.
M-x set-background-color (Pedirá color para el fondo)
M-x w3m-browser-url (Pedirá url para conectar. Precisa w3m-el)
M-x global-linum-mode (Mostras/esconder números de linea)
M-x global-visual-line-mode (Cortar/no cortar palabras al final de la pantalla)
M-x global-hl-line-mode (Resaltar la linea donde está el cursor)
M-x goto-line (Ir a una linea que se especifique)
M-x insert file (Para insertar en el cursor un archivo)

Para hacer permanente cualquiera de las opciones anteriores, colocarla en ~/.emacs de la siguiente forma:

(global-set-key (kbd “<f7>”) ‘global-linum-mode)

Para mostrar u ocultar los numeros de linea pulsando F7

Una pequeña muestra del archivo .emacs (La lineas que empiezan por ;; son comentarios suficientemente explicativos):

;; Navegador w3m:
(setq w3m-default-display-inline-images t)
(setq w3m-use-cookies t)
;; Navegador de archivos (nav) pulsando F8:
(add-to-list ‘load-path “/home/templix/.emacs.d/nav/”)
(require ‘nav)
(nav-disable-overeager-window-splitting)
(global-set-key [f8] ‘nav-toggle)
;; Mostrar consola al pulsar F5:
(global-set-key (kbd “<f5>”) ‘eshell)
;; No cortar palabras al final de linea pulsando F6:
(global-set-key (kbd “<f6>”) ‘global-visual-line-mode)
;; Mostar/esconder números de linea con F7:
(global-set-key (kbd “<f7>”) ‘global-linum-mode)
;; Ignorar determinados buffers para que al pulsar C-x b no salgan en el listado
(require ‘iswitchb)
(iswitchb-mode)
(add-to-list ‘iswitchb-buffer-ignore “^ “)
(add-to-list ‘iswitchb-buffer-ignore “*Messages*”)
(add-to-list ‘iswitchb-buffer-ignore “*ECB”)
(add-to-list ‘iswitchb-buffer-ignore “*Buffer”)
(add-to-list ‘iswitchb-buffer-ignore “*Completions”)
(add-to-list ‘iswitchb-buffer-ignore “*scratch*”)
(add-to-list ‘iswitchb-buffer-ignore “*ftp “)
(add-to-list ‘iswitchb-buffer-ignore “*bsh”)
(add-to-list ‘iswitchb-buffer-ignore “*jde-log”)
(add-to-list ‘iswitchb-buffer-ignore “^[tT][aA][gG][sS]$”)
;; Escuchar música con emms:
(add-to-list ‘load-path “~/emms/”)
(require ‘emms-setup)
(emms-standard)
(emms-default-players)
;; tabulación de 4 espacios:
(setq-default tab-width 4)

Notas sobre los ajustes del archivo precedente:

– Instalar nav: Descarga de http://code.google.com/p/emacs-nav/. Una vez descomprimido copiar el directorio en .emacs.d/ y renombrar como nav. Abrir con M-x nav

– Al pulsar C-x b (Listar buffers abiertos) El buffer que aparece en primer lugar, resaltado en otro color, es el que se mostrará al pulsar Enter. Si queremos cambiar a otro buffer pulsar C-s para rotar el orden de los elementos de la lista.

– Escuchar música con emms en emacs.
descargar  <http://www.gnu.org/software/emms/&gt; y descomprimir en el directorio personal. En .emacs colocar las lineas. Llamar com M-x emms (Pulsando TAB apareceran más opciones). Si se queda de error en el emms-setup, instalar el paquete emms de los repos.

Como medio aperitivo ya vale… RECUERDA: PARA ACCEDER A UNA ENTRADA MÁS ACTUALIZADA ENTRA EN NUESTRAS WIKIS:

https://tractatuslapipaplena.herokuapp.com/blog/emacs/

http://lapipaplena.no-ip.org/wiki/#!emacs

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto:
search previous next tag category expand menu location phone mail time cart zoom edit close