tutorial source para for vim emacs editor window

vim - source - emacs tutorial



¿Mejor navegación de ventana en Emacs? (5)

¿Has probado WindMove ? Viene incluido con Emacs 21+. Se mueve con Mayúsculas , Mayúsculas abajo , Mayúsculas a la izquierda y Mayúsculas a la derecha , aunque puede cambiar el modificador. De los documentos:

;; Installation: ;; ;; Put the following line in your `.emacs'' file: ;; ;; (windmove-default-keybindings) ; shifted arrow keys ;; ;; or ;; ;; (windmove-default-keybindings ''hyper) ; etc. ;; ;; to use another modifier key. ;; ;; ;; If you wish to enable wrap-around, also add a line like: ;; ;; (setq windmove-wrap-around t)

Cuando divido la ventana en emacs varias veces (debajo del terminal), toda la pantalla se divide en varias partes con una disposición jerárquica. En vim es fácil cambiar entre ventanas de manera intuitiva con Control-w + (h, j, k, l), pero en Emacs solo puedo usar Control-x + o para cambiar a "la otra ventana", lo que probablemente requiera Varias iteraciones para finalmente llegar a la ventana que pretendo. Me pregunto si hay una mejor manera similar a la de Vim para navegar fácilmente entre ventanas.


En Icicles , por defecto, Cx o está vinculado al icicle-other-window-or-frame , que funciona de esta manera:

  • Sin prefijo arg o un prefijo numérico distinto de cero: si el marco seleccionado tiene varias ventanas, entonces esta es other-window . De lo contrario, es other-frame .

  • Con un argumento de prefijo cero (por ejemplo, C-0 ): si el marco seleccionado tiene varias ventanas, entonces esta es icicle-select-window con ventanas en el marco como candidatos. De lo contrario (marco de una sola ventana), esto es icicle-select-frame .

  • Con Cu simple: si el marco seleccionado tiene varias ventanas, entonces esta es icicle-select-window con ventanas de todos los marcos visibles como candidatos. De lo contrario, esto es icicle-select-frame .

Bueno, entonces, ¿qué son icicle-select-window y icicle-select-frame ?

Son comandos múltiples que le permiten elegir una ventana o marco para seleccionar por nombre. (Puede vincularlos por separado, si lo desea; cada uno cambia su comportamiento en función de sus propios argumentos de prefijo).

Los nombres de ventanas y marcos se toman de sus búferes mostrados, con [N] ( N = 1,2, ...) anexado si es necesario para un nombre único si el mismo búfer se muestra en más de una ventana / marco.

Al ser multi-comandos, puedes elegir completando y / o completando un ciclo. La finalización puede ser prefix, subcadena, regexp o difusa.

http://www.emacswiki.org/emacs/Icicles_-_Multi-Commands


Esa fue también mi primera experiencia con emacs. Pero, usando el movimiento del viento, puedo hacerlo de la manera que yo quiera. Yo uso esto como el modificador para windmove:

(windmove-default-keybindings ''meta)

Uso ALT para la navegación de windmove.


Me parece que el enlace predeterminado para other-window es muy tedioso. He definido lo siguiente en mi .emacs :

(global-set-key [(control ?,)] (lambda () (interactive) (other-window -1))) (global-set-key [(control ?.)] (lambda () (interactive) (other-window 1)))

Simplemente encuentre algunas combinaciones de teclas de fácil acceso (yo uso un diseño Dvorak, por lo que C-, y C-. Puede que no sea tan fácil de alcanzar), preferiblemente uno al lado del otro, para unirse a esas lambdas.

Además, encontré la wiki de Emacs hace unos meses. ¡Nifty Tricks tiene una buena lista de formas para hacer que Emacs sea más fácil de usar!


Ver switch-window . Se numerarán ventanas para permitirle cambiar directamente a la que desea.