====== EMACS ======
GNU Emacs es el editor de texto con presentacion en terminal, estrella del sistema operativo GNU, y esta disponible en muchas plataformas.
Su fichero de configuracion es ~/.emacs.el
.
Para cargar un archivo en Emacs podriamos utilizar:
emacs fichero
Si el archivo ya existe, se te presentara entonces la primera pagina del texto en pantalla.
La manera mas sencilla de aprender emacs es el completo tutorial en linea que incluye. Para ello usa Esc para ir al modo de comandos, e ingresa help-with-tutorial.
Comandos de Emacs
Los comandos en Emacs son caracteres de control (realizados mientras presionamos la tecla Ctrl mientras tipeamos otro caracter) o en prefijos por un conjunto de caracteres reservados Esc o Ctrl+x.
Podremos tipear tecla Esc directamente (porque realmente es un caracter) y seguirla por otro caracter. La tecla Ctrl debe mantenerse presionada mientras tipeamos el otro caracter.
Comandos Comunes
Retroceder | Borra hacia atras |
Supr | Borra hacia adelante |
Ctrl+Barra espaciadora | Selecciona/bloque de texto |
Ctrl+k | Borra todo el texto desde el cursor hasta el final de la linea |
Ctrl+/ | Deshacer |
Ctrl+g | Cancelar comando |
Ctrl+x,Ctrl+c | Salir |
Comandos de Ayuda
Ctrl+h | help-command: |
Muestra el primer caracter en montones de archivos de ayuda |
Ctrl+h,t | help-with-tutorial: |
Comando que ejecuta el tutorial de Emacs |
Ctrl+h,i | information: |
muestra la mayoria de los comandos de Emacs |
Ctrl+h,k | describe-key: |
Informa que hace una tecla particular |
Ctrl+h,a | command-apropos: |
pregunta una cadena y luego busca todos los comandos de Emacs que la contengan |
Esc+? | tambien hace command-apropos | |
Ctrl+h ? | help-for-help: |
Describe como usar las ayudas. |
Manejo de ficheros y comandos de guardado
Ctrl+x,Ctrl+f | Abrir fichero: solicita el nombre de fichero a buscar, y lo carga en un buffer de edicion del mismo nombre |
Ctrk+x,Ctrl+s | Guardar: almacena el buffer en el disco con un nombre asociado |
Ctrl+x,Ctrl+w | Guardar como: Solicita un nuevo nombre de archivo y escribe el buffer en el |
Comandos de Movimiento del Cursor o de la pantalla
Emacs operaba en antiguos sistemas UNIX, cuyas terminales iniciales carecian de teclas de control asociadas a los teclados actuales. Normalmente hoy utilizamos las flechas de cursor y las de control del cursor y control de paginado, pero en Emacs podremos contar tambien con las equivalencias de los teclados antiguos.
Flechas del cursor | Mueve el cursor |
Ctrl+a | Mueve el cursor al Inicio de la linea |
Ctrl+e | Mueve el cursor al Fin de la linea |
Ctrl+f | Mueve el cursor hacia adelante un caracter |
Ctrl+b | Mueve el cursor hacia atras un caracter. |
Esc+f | Avanza el cursor una palabra |
Esc+b | Retrocede el cursor una palabra |
Ctrl+n | Mueve el cursor a linea a continuacion |
Ctrl+p | Mueve el cursor a la linea previa |
Ctrl+v | Avanza pantalla |
Esc+v | Retrocede pantalla |
Esc+<; | Va al inicio del buffer |
Esc+>; | Va al final del Buffer |
Comandos para Copiar y Borrar
Ctrl+@ | set-mark-command |
Marca el comienzo de un area de texto a ser operada |
Ctrl+d | delete-char |
Borra el caracter debajo del cursor ("Supr") |
Esc+d,d | delete-word |
Borra desde el cursor hasta el final de la palabra inmediatamente por delante del cursor |
Cttl+k | kill-line |
Elimina la linea actual |
Ctrl+w | kill-region |
Borra el area de texto entre la marca y la posicion actual del cursor. |
Ctrl+y | yank |
inserta en la posicion actual del cursor actual o en la localizacion mas recientemente borrada |
Esc+w | copy-region-as-kill |
Copia un area entre la marca y el cursor al buffer de borrado, de modo que pueda ser colocado en otro lado. |
Comandos de Busqueda
Ctrl+s | isearch-forward |
Busca incrementalmente una cadena de texto. |
Ctrl+r | isearch-backward |
Similar al anterior, pero busca la cadena en sentido inverso |
Esc+% | query-replace |
Buscar y reemplazar |
Comandos de Ventana y Buffer
Ctrl+x,0 | zero-window |
Borra la ventana actual |
** Ctrl+x,2** | double-window |
divide la ventana actual en dos partees, permitiendo editar en dos localizaciones diferentes de un mismo archivo, o permitiendo ver dos ficheros distintos a la vez |
Ctrl+x,b | switch-to-buffer |
Presenta un buffer distinto en pantalla |
Ctrl+x,o | other-window |
Mueve el cursor a la otra ventana (asumiendo que existan dos ventanas o buffers abiertos a la vez |
Ctrl+x, Ctrl+b | list-buffers |
lista los buffers cargados en memoria |
Salir de Emacs, corregir errores y otros
Ctrl+x, Ctrl+c | save-buffers-kill-emacs |
Guarda los buffers editados pero no guardados sale de Emacs. |
Ctrl+x, Ctrl+z | suspend |
Pasa emacs a segundo plano y vuelve a la shell. Tipea fg para volver a Emacs. |
Ctrl+g | keyboard-quit |
Si mientras tipea un comando comete un error, aborta el comando en progreso. |
** Ctrl+u** | universal-argument |
Si desea repetir un comando varias veces ingrese este comando, ...seguido de un nro. (para la cantidad de veces) ...seguido de un comando que desea repetir |
Ctrl+x,u | undo |
deshace el ultimo comando ingresado, en caso de haber cometido un error. |
Esc+x | execute-extended-command |
pregunta el nombre de un comando de emacs; Le permite ejecutar un comando si conocer como se llama, pero no puede recordar su atajo. |
Recursos adicionales
Diferencias con Vi
A diferencia de Vi, Emacs no es un editor con modo de insercion, lo que significa que cualquier caracter que ingresemos en Emacs se insertara automaticamente en el archivo, a no ser que incluya un prefijo de Comando.
Otra distincion entre Emacs y Vi consiste en que emacs es capaz de editar varios archivos a la vez. La ventana de Emacs puede dividirse en varias ventanas, cada una de las cuales presentara una vista en el buffer de memoria. Cada buffer de memoria corresponde normalmente a un archivo diferente. Es por ello que muchos de los comandos listados a continuacion se emplean para leer ficheros y cargarlos en nuevos buffers, asi como mover distinto contenido entre buffers diferentes .