¿Cuáles son los comandos 'debe saber' de Emacs? [cerrado]
22
Soy un converso bastante nuevo en Emacs y realmente me encanta como editor, principalmente porque sigo encontrando comandos nuevos y súper útiles. ¿Hay algún otro comando 'imprescindible' del programador que falta en mi lista?
M-x replace-string - Find and replace a given string.
M-x goto-line - Goto a specific line
M-x column-number-mode - Show the current column number in text bar
org-mode es ideal para notas. Sin embargo, no es un comando.
kasterma
otro no es un comando, pero es bueno mirar el modo ido.
kasterma
55
Mg Mg es una invocación más corta de goto-line
Frank Shearar
Respuestas:
20
Ch a - Apropos funciones de búsqueda
Ch b - ejecuta el enlace de descripción
Ch k - ejecuta la clave de descripción
Ch f - ejecuta la función describe
Ch v - ejecuta describe-variable
Si los conoce, puede explorar emacs y encontrar cosas que aún no sabe. Aprender a aprender, eso es esencial. Todo lo demás se puede encontrar más tarde.
A propósito debe estar en la parte superior de la lista. Primero tiene que descubrir cosas antes de poder leer la documentación.
Starblue
23
Bueno, primero debes conocer algunos de los conceptos básicos de la edición de texto:
C-w : Cut
M-w : Copy
C-y : Paste
C-x s : save
C-x c : save all and close
Entonces, es útil aprender a moverse por el archivo:
M-b : back one word
M-f : foward one word
C-a : beginning of line
C-e : end of line
C-n : next line
C-p : previous line
M-< : beginning of buffer
M-> : end of buffer
Entonces, es bueno comenzar a aprender a navegar con múltiples archivos / buffers y ventanas
C-x C-f : find file
C-x b : switch buffer
C-x k : kill buffer
C-x 2 : split-window-vertically
C-x 3 : split-window-horizontally
C-x o : switch window
C-x 0 : kill this window
C-x 1 : kill all other windows
Después de eso, aquí hay algunos otros misceláneos. comandos que pueden ser útiles:
C-s : search
C-r : search backward
M-/ : autocomplete word (based on previous words in the file)
M-x : align-regexp
M-( : start keyboard macro
M-) : end keyboard macro
C-x e: execute keyboard macro.
Creo que necesito imprimir esto y votarte un millón de veces.
CodexArcanum
De hecho, las últimas tres, macros, son las que hacen que emacs sea una gran victoria. Puedes usarlo sutilmente y la gente pensará que emacs es psíquico.
Macneil
2
¿No es eso más bien M-/ : autocomplete word (based on previous words in the file)? (en lugar de recortar barra invertida O estoy confundiendo esto con algo más??)
haylem
@haylem, tienes razón. lo arregló en la respuesta.
GSto
De hecho M-xes para execute-extended-command. Lo usa para comandos independientes (y align-regexpes solo uno de ellos).
rsenna
11
Increíblemente útil mientras se codifica:
M-; : comment-dwim
comment-dwim alternará los comentarios sobre la región actual; comentando si no está comentado, y viceversa. Su modo de idioma actual le permite a emacs saber cómo hacer los comentarios.
Por defecto, si no hay una región activa y hay texto en la línea, insertará un comentario al final de la línea. Personalmente, prefiero que comente toda la línea actual, lo que esto logra:
;; Original idea from
;; http://www.opensubscriber.com/message/[email protected]/10971693.html
(defun comment-dwim-line (&optional arg)
"Replacement for the comment-dwim command.
If no region is selected and current line is not blank and we are not at the end of the line,
then comment current line.
Replaces default behaviour of comment-dwim, when it inserts comment at the end of the line."
(interactive "*P")
(comment-normalize-vars)
(if (and (not (region-active-p)) (not (looking-at "[ \t]*$")))
(comment-or-uncomment-region (line-beginning-position) (line-end-position))
(comment-dwim arg)))
(global-set-key "\M-;" 'comment-dwim-line)
¡bonito! No sabía sobre este, y me encontré deseando que existiera.
GSto
Prefiero comment-or-uncomment-regionpara mis comentarios. Me permite comentar un bloque de código temporalmente si es necesario.
Inaimathi
Ato C-; alternar-comentar-en-línea para manejar el caso de línea y mantener comentarios-dwim con su funcionalidad original.
Chris Clark
Err, y debería haber incluido la función toggle-comment-on-line :) (defun toggle-comment-on-line () (interactive) (comment-or-uncomment-region (line-beginning-position) (line-end-position)))
Chris Clark
6
Intenta hacer el tutorial (Ch t). Te enseña muchas de las combinaciones de teclas fundamentales, y ENTONCES puedes comenzar a buscar otras aún más divertidas.
Avergonzado de decir que nunca había oído hablar de eso!
haylem
3
M-x apropos
M-x describe-key
M-x describe-bindings
C-x C-f ~/.emacs (ayuda si conoces a Elisp antes de ejecutar este)
Casi todo lo demás es preferencia personal. La gente a veces habla de Emacs como si fuera un editor.
Eso no es cierto.
Emacs es un lenguaje diseñado para expresar sucintamente editores (es decir, Elisp es su mejor 'característica'). La cantidad de millaje que obtenga depende directamente y completamente de qué tan bien comprende este principio.
Buena simetría, dado que lisp es un lenguaje de programación programable. (O, un lenguaje de programación que le permite describir sucintamente un lenguaje de programación.)
Frank Shearar
1
No muy correcto. Emacs es un entorno interactivo de LISP, que ha resuelto ciertas decisiones de diseño de LISP de manera que sea fácil escribir editores y extensiones de editor, y una gran cantidad de código enlatado, algunos de ellos compilados en infraestructura, que ayudan a escribir editores.
John R. Strohm
1
M-:
Esto le permite evaluar elisp arbitrario en el minibúfer
METRO-. (Mx find-tag) requiere ejecutar etags en su código
M- / (Mx dabbrev-expand)
Compilación Mx
Cx vv (Mx vc-next-action)
Mx font-lock-mode
y lea la documentación para el modo de idioma que usa (Ch m (Mx describe-mode))
También soy un gran admirador de (Mx shell), M-! (Mx shell-command) y M- | (Mx shell-command-on-region) porque me resulta muy útil poder ejecutar comandos desde dentro de emacs y cortar y pegar la salida.
Además, las líneas de ordenación Mx, los campos de ordenación Mx y los campos de ordenación numérica Mx son útiles para mantener largas listas de cosas (como nombres de variables) en orden alfabético o numérico.
Respuestas:
Si los conoce, puede explorar emacs y encontrar cosas que aún no sabe. Aprender a aprender, eso es esencial. Todo lo demás se puede encontrar más tarde.
fuente
Bueno, primero debes conocer algunos de los conceptos básicos de la edición de texto:
Entonces, es útil aprender a moverse por el archivo:
Entonces, es bueno comenzar a aprender a navegar con múltiples archivos / buffers y ventanas
Después de eso, aquí hay algunos otros misceláneos. comandos que pueden ser útiles:
Para una referencia completa: enlace
fuente
M-/ : autocomplete word (based on previous words in the file)
? (en lugar de recortar barra invertida O estoy confundiendo esto con algo más??)M-x
es paraexecute-extended-command
. Lo usa para comandos independientes (yalign-regexp
es solo uno de ellos).Increíblemente útil mientras se codifica:
comment-dwim alternará los comentarios sobre la región actual; comentando si no está comentado, y viceversa. Su modo de idioma actual le permite a emacs saber cómo hacer los comentarios.
Por defecto, si no hay una región activa y hay texto en la línea, insertará un comentario al final de la línea. Personalmente, prefiero que comente toda la línea actual, lo que esto logra:
Lo robé yo mismo de http://www.emacswiki.org/emacs/CommentingCode
fuente
comment-or-uncomment-region
para mis comentarios. Me permite comentar un bloque de código temporalmente si es necesario.(defun toggle-comment-on-line () (interactive) (comment-or-uncomment-region (line-beginning-position) (line-end-position)))
Intenta hacer el tutorial (Ch t). Te enseña muchas de las combinaciones de teclas fundamentales, y ENTONCES puedes comenzar a buscar otras aún más divertidas.
fuente
M-x apropos
M-x describe-key
M-x describe-bindings
C-x C-f ~/.emacs
(ayuda si conoces a Elisp antes de ejecutar este)Casi todo lo demás es preferencia personal. La gente a veces habla de Emacs como si fuera un editor.
Eso no es cierto.
Emacs es un lenguaje diseñado para expresar sucintamente editores (es decir, Elisp es su mejor 'característica'). La cantidad de millaje que obtenga depende directamente y completamente de qué tan bien comprende este principio.
fuente
Esto le permite evaluar elisp arbitrario en el minibúfer
visualización de solo lectura de un archivo
región de comentarios
¡entre otros!
fuente
y lea la documentación para el modo de idioma que usa (Ch m (Mx describe-mode))
También soy un gran admirador de (Mx shell), M-! (Mx shell-command) y M- | (Mx shell-command-on-region) porque me resulta muy útil poder ejecutar comandos desde dentro de emacs y cortar y pegar la salida.
Además, las líneas de ordenación Mx, los campos de ordenación Mx y los campos de ordenación numérica Mx son útiles para mantener largas listas de cosas (como nombres de variables) en orden alfabético o numérico.
fuente
Mx revert-buffer es uno que uso mucho.
fuente
Mx ayuda con tutorial
fuente