Referencia emacs

Ejemplos de configuración: Nguyen Duc Hieu emacs config

  • Cancelar comando: C-g
  • Deshacer: C– (M-x revert-buffer vuelve al ultimo (auto)guardado)
  • Rehacer: C-g C-x u (en teoria, tambien C-g C–)
  • Salir: C-x C-c

Ayuda

  • M-x apropos
  • Lista comandos (modo actual): M-x describe-mode

Desplazamiento

  • Ir a linea: M-g g #linea

Autocompletar: M-tab

Buscar / reemplazar

  • Buscar: C-s (adelante), C-r (atras) (repetir pulsacion para encontrar siguiente ocurrencia)
  • Reemplazar: M-% (usar y/n o ! en cada sustitución)
  • Buscar en ficheros: M-x [lgrep / rgrep / grep]

Ficheros

  • Guardar: C-x C-s

Regiones

  • Seleccionar todo el buffer: C-x h
  • Cortar: C-w
  • Copiar: M-w
  • Pegar: C-y

Ordenar:

  • M-x sort-lines
  • M-x sort-paragraphs
  • M-[num] M-x sort-fields (num es el numero de columna por el que ordenar)

Buffers

  • Listado («Buffer List»): C-x C-b
    • Marcar buffer para eliminar del listado: d
    • Marcar buffer para guardar: s
    • Completar operaciones pendientes: x
  • Cambio: C-x b
  • Cerrar: C-x k

Ventanas

  • Partir vertical: C-x 3
  • Partir horizontal: C-x 2
  • Cerrar: C-x 0
  • Cerrar todas las demás: C-x 1
  • Cambiar: C-x o

Modos

  • Cambiar: M-x nombre_modo

«Procesamiento de textos»

FlySpell: modo menor para corregir sobre la marcha errores ortográficos.

Entorno de desarrollo (programación)

Language Server Protocol

Comprobación sintáctica integrada: FlyMake, FlyCheck

  • Indentar: C-M-\ (o M-x indent-region)
  • Compilar: C-c C-u
  • Enviar a REPL: C-c C-j (linea), C-c C-r (region)
  • Etiquetas (tags)
    • Completar: M-tab

Ejecutar

  • Ejecutar comando: M-!
  • Abrir ELISP REPL: M-x ielm

Javascript: M-x js-mode

Helm, evil…

  • M-.: ir a símbolo (función)
  • Autocompletar: Setup Tern + Company-mode
  • Navegar funciones: xref-js2

Personalización simple: M-x customize

Guardar estado: cambiar desktop-save-mode a 1. Por defecto, debería usar el fichero .emacs-desktop del directorio actual (con lo cual basta cambiar de directorio para usar varios escritorios), pero parece que si no se define el path explicitamente no lo reconoce. Así pues, en ~/.emacs:

(setq desktop-path ‘(«./»))

Otra forma de usar rápidamente varios escritorios es con los «marcadores de escritorio»

Dired, ImageDired

Orgmode (Manual, cheatsheet):

  • Despliegue nodos: Tab
  • Añadir nodo en mismo nivel: M-enter
  • Mover nodos: M-cursor (izquierda-derecha, arriba-abajo)
  • Crear enlace a fichero: C-u C-c C-l (se pueden incluir búsquedas en ficheros: [[file:~/ejemplo::/regexp]])
  • Abrir enlace: C-c C-o
  • Editar enlace: C-c C-l
  • Buscar en fichero actual: C-c /
  • Etiquetas: C-c C-q
  • Cambiar estado tarea: C-c C-t
  • Marcar checkbox: C-c C-c
  • Marcar checkbox en linea: C-c C-x C-b
  • Agenda: M-x org-agenda (normalmente se personaliza como C-c a)
    • Clock in: C-c C-x tab
    • Clock out: C-c C-x C-o
    • Informe: C-c C-x C-r
  • Búsqueda en agenda: C-c a / (texto libre), C-c a m (etiquetas). Permite expresiones como «+computer +wifi -ethernet -{8\.11[bg]}»
  • Babel
  • Capture
  • Tablas
    • Crear con «|»
    • Cambiar de campo, evaluar formula: tab
    • Fórmula en un campo: «:= …»
    • Recalcular tabla entera: C-u C-c C-c
  • Orgprotocol
  • Org-wiki
  • Ox-hugo
  • Convertir a blog, Convertir con Jekyll (Octopress)

«Easy templates«. Del manual:


< s TAB expands to a ‘src’ code block.

< l TAB expands to:

#+BEGIN_EXPORT latex

#+END_EXPORT

Org comes with these pre-defined easy templates:
s #+BEGIN_SRC ... #+END_SRC
e #+BEGIN_EXAMPLE ... #+END_EXAMPLE
q #+BEGIN_QUOTE ... #+END_QUOTE
v #+BEGIN_VERSE ... #+END_VERSE
c #+BEGIN_CENTER ... #+END_CENTER
C #+BEGIN_COMMENT ... #+END_COMMENT
l #+BEGIN_EXPORT latex ... #+END_EXPORT
L #+LATEX:
h #+BEGIN_EXPORT html ... #+END_EXPORT
H #+HTML:
a #+BEGIN_EXPORT ascii ... #+END_EXPORT
A #+ASCII:
i #+INDEX: line
I #+INCLUDE: line

More templates can added by customizing the variable org-structure-template-alist, whose docstring has additional details.

Pendientes de clasificación

Cambiar variable: M-x set-variable
Insertar caracter arbitrario: C-q caracter
Mostrar parentesis: M-x show-paren-mode (o  (show-paren-mode 1) en .emacs)
Repetir comando: C-x z (cada z vuelve a repetir)

* Edición
Cambiar mayusculas / minusculas: M-u (mayusculas), M-l (minusculas), M-c (inicial a mayuscula). Regiones: C-x C-l, C-x C-u
Unir linea actual con anterior: M-^ (puede ser necesario pulsar dos veces &quot;^&quot;)
Nueva linea indentada: C-j
Nueva linea comentada: M-j

* UTF / Unicode
C-x 8 Enter Point/Name

* Macros de teclado
Comenzar grabación: C-x (
Terminar: C-x )
Ejecutar: C-x e e e e...

«Extensiones» interesantes

html-mode

C-c 1..5 insertar h1..h5
C-c / insertar etiqueta de cierre
C-c izq / dcha Desplazarse a la etiqueta correspondien

1 comentario

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *