2008-11-22 6 views
24

Si tuvieras una sesión práctica de 10 minutos para enseñarle a alguien Emacs, ¿qué mostrarías?¿Qué enseñarle a un principiante en Emacs?

 
Start emacs: emacs 
... 
Quit emacs: C-x C-c 

¿Qué otra cosa tendrían que hacer entre comenzar y salir de Emacs, mientras usted estaba detrás de ellos?

+0

¿Cuál es la tarea a mano? ¿Es Emacs la herramienta adecuada para el trabajo? – jfs

Respuesta

52

Si tuviera sólo 10 minutos, no les gustaría enseñar a los accesos directos en absoluto. Todos los accesos directos comunes están disponibles al lado de los comandos correspondientes en los menús; aquellos que los usuarios pueden descubrir por sí mismos.

Las cosas más importantes para enseñar son aquellos que permitirá a los usuarios a descubrir/aprender por sí mismos:

  • que uno puede salir de Emacs con C-x C-c o Archivo-> Salir. Cuando se ve atrapado, se debe escribir C-g, y si eso no funciona, ESC ESC ESC. [Este es probablemente el consejo más útil para evitar la frustración total con Emacs, confíe en mí.]

  • El tutorial: Ayuda-> Tutorial de Emacs, o C-h t. [Esto no es un atajo terriblemente útil para recordar ; dado el número de veces que uno lee el tutorial a lo largo de la vida ...]

  • El concepto de que cada pulsación de tecla en Emacs está vinculada a una función, y todo lo que hace Emacs es ejecutar funciones una tras otra. Que hay más funciones que posiblemente pueden asignarse teclas y funciones sin pulsar una tecla se puede activar con M-x function-name.

  • que uno puede descubrir lo que funciona un determinado invoca clave con C-h k [keystroke]. Haga que el usuario revise algunos de ellos (incluido el hecho divertido de que escribir una letra no es especial y solo invoca self-insert-command, por lo que si lo deseara, podría enlazar la letra 'z' para enviar un correo electrónico: D)

  • que uno puede buscar funciones posiblemente útiles con C-h a (o M-x apropos-command), por ejemplo C-h a paragraph muestra todos los comandos que se deben hacer con los párrafos, incluidos los accesos directos que llevarán uno al final/principio de un párrafo. Y ese C-h w command-name le dirá si el comando está ligado a alguna pulsación de tecla o no. [Hacerlos caminar a través de este para descubrir cuál es la clave para deshacer es - por lo general van a tratar de Cz y lo hace algo molesto :)]

  • que se puede leer la documentación detallada acerca de lo que hace una función con M-x describe-function (C-h f). Que Emacs tiene una gran documentación sobre la mayoría de las cosas; y M-x apropos-documentation (C-h d) es una gran manera de descubrir cosas.

  • Esa configuración se almacena en .emacs, y que uno puede recoger algunas cosas mirando ese archivo, incluso si uno no entiende Emacs Lisp.

  • Por lo general, se pueden encontrar todas las teclas que "completan" un conjunto particular de teclas escribiendo C-h después de él, p. Ej. 'C-x C-h' mostrará todos los accesos directos que comienzan con C-x; C-h C-h es particularmente útil; C-c C-h es útil para los comandos de modo específico, como cuando se encuentra en modo de java-o C++ - modo o LaTeX modo, etc. (Hmm, "modos" ...)

  • que cuando se ve atrapado, se puede buscar en http://www.emacswiki.org/. (O formule una pregunta en el canal de IRC en Freenode #emacs, o enviar a gnu.emacs.help.)

Esto debe caber en 10 minutos, y es la materia más importante, creo. No me sobrecargaría con demasiados atajos para recordar; eso no tiene sentido de todos modos: si los usuarios saben cómo descubrir accesos directos, descubrirán accesos directos para lo que utilicen con mayor frecuencia. Haga que escriban los nombres de estos comandos, y también sobre Emacswiki, etc.

Lo importante es mostrarles cuán poderoso es Emacs y cuán universal es su modelo (todas esas bromas sobre que es un sistema operativo no son solo bromas). Si solo muestras un montón de atajos arcanos para hacer cosas que ya pueden hacer en otros editores, Emacs no valdrá la pena. En el mismo espíritu, también apoyo totalmente la respuesta de Anton Nazarov de mostrarles lo que Emacs puede hacer (AucTeX si usan LaTeX, etc.) para sus propósitos específicos. Entonces pueden juzgar por sí mismos si Emacs vale la pena aprender, y aprender usando todo lo anterior.

18

mostrarles cómo iniciar el tutorial: Ch t

+0

De acuerdo: una vez que sepa cómo acceder al sistema de ayuda/tutorial, puede aprenderlo usted mismo. vim es de la misma manera. –

3

creo que le muestran cómo

  • para abrir y guardar archivos
  • para matar/búfer alternativo
  • para cambiar/Kill/ventanas divididas
  • para seleccionar un rango.

Y cuéntele sobre M-x. Dile que él escriba esos pasos en alguna parte. Creo que la navegación básica se puede hacer usando las teclas de flecha. Ahora esto es todo lo que necesita.

Si conoce M-x, puede buscar fácilmente, reemplazar y otras cosas.

1

Cuando inicio XEmacas, hasta que presiono una tecla, alterna entre dos pantallas. Uno de ellos tiene lo siguiente:

XEmacs 21.4 (patch 21) "Educational Television" (cygwin, Mule) of Tue Dec 4 2007 on vzell-de 

`C-' means the control key,`M-' means the meta key 


Information, on-line help: 

XEmacs comes with plenty of documentation... 


M-? F: read the XEmacs FAQ (a capital F!) 
M-? t: read the XEmacs tutorial (also available through the Help menu) 
f1: get help on using XEmacs (also available through the Help menu) 
M-? i: read the on-line documentation 

M-x describe-project: read about the GNU project 
M-x about-xemacs: see who's developing XEmacs 

le pediría que alguien lo lea en voz alta, asegurarse de que entienden lo que dice y luego darles, a utilizar en caso de emergencia, mi número de teléfono celular y botiquín de primeros auxilios.

1

Me gustaría mostrar los accesos directos para las operaciones más comunes, tales como:

  • Guardar: Ctrl-xs
  • Guardar como: Ctrl-XW
  • Abrir/encontrar el archivo: Ctrl-f
  • Deshacer:-_ ctrl
  • tampón de muertes: ctrl-xk
  • Cambiar a tampón: ctrl-b
  • paragr Fill APH: Mq

y copiar/cortar y pegar: marcador de

  • Set: Ctrl-espacio
  • Corte: Ctrl-W
  • Copia: Mw
  • línea de
  • Corte: ctrl- k
  • Pegar: ctrl-y
1
  • abrir un archivo,
  • guardar un archivo,
  • de navegación básico,
  • marca establecida, copiar, cortar y pegar,
  • Mostrar deshacer y destruir el anillo,
  • Mostrar CG,
  • Mostrar buscar y reemplazar,
  • ventana dividida y pasar a otra ventana,
  • Cambiar a otros tampones,
  • Mostrar el asistente,
  • Explicar Información,
  • Mostrar dired a:
    • abrir algún archivo,
    • ejecutar un comando para comprimir otro archivo,
    • abrir, editar y guardar el archivo comprimido,
    • abrir un directorio en un host remoto,
    • abrir & guardar algunos archivos en el host remoto,
    • copiar som e archivo del host remoto.
  • Abra un shell y ejecute algunos comandos de salida larga y navegue en el búfer.
6

Mostraría lo más importante para ese modo de usuario novato. Por ejemplo, cuando muestro Emacs a mis amigos en la facultad de física, les muestro AucTeX con preview-latex y RefTeX. También iMaxima es genial. Si tengo que mostrar Emacs a los desarrolladores de software, les muestro algo como el modo JDEE o Python con Ropemacs. Tetris, vagabundo y w3m puede ser usado para dar la idea de que Emacs puede hacer todo :) Entonces me muestro cómo iniciar el tutorial y dan enlace a EmacsWiki.org

1

Al dar ejemplos emacs nunca es suficiente para dar solamente la vinculación de la clave, ya que puede variar y lo hace. C-x M-c no está definido en mi sistema.

1
  1. Aprender a usar la ayuda C-h C-h
  2. Haga lo exercice tutorial.
  3. Mata a algo, y a otra cosa, y un tercero, luego C-y para tirar de él, y M-y para recorrer el anillo de matar. Gran factor "Woah", rápido y barato. Entonces dígales que funciona en su shell diario.
  4. Navegue en el búfer con the mark ring. C-u C-SPC (espacio) lo lleva a donde estaba antes de y, repite, recorre las 16 últimas posiciones, independientemente del estado de edición.

¿Sabes cuándo desafortunadamente deshacer las cosas solo para obtener "dónde estabas antes"? Ahí tienes.

Este es un truco ninja de emacs asesino. Todos deberían saberlo lo antes posible.

+0

+1 para señalar que los proyectiles tienen anillos de muerte también. – phils

0

Creo que lo primero que hay que preguntar antes de intentar enseñarles algo es "¿qué es lo que quieren aprender de Emacs?" Y, ¿está intentando venderlos con la idea de aprender Emacs o ya están comprometidos?

Si son programadores y están buscando un nuevo entorno de desarrollo, muéstrenles ECB, cómo funcionan las etiquetas, etc. Si están buscando un editor de texto general, muéstrelos M-x re-builder. Si están buscando escribir documentos rápidamente y publicarlos eventualmente, muéstreles org-mode con HTML y exportaciones de LaTeX.

0

Además de lo que ya se ha mencionado, también les mostraría M-x global-set-key después de haber mostrado M-x en general y M-x apropos.

Yo les diría que el objetivo de Emacs es que es infinitamente personalizable y que uno debe personalizarlo para adaptarlo a sus preferencias. Les diría que prueben primero las asociaciones de teclas estándar y las ventajas de que aparezcan en Bash, OS X, etc.

0
  • C-g
  • Copiar
  • división de Windows
  • M-x
  • A propósito
  • Describir clave
  • mandato DESCRIBE
  • Abrir archivos
  • búfer alternativo
  • Entorno de desarrollo específico del idioma, incluido el depurador y el REPL.
Cuestiones relacionadas