¿Cómo puedo marcar Emacs à la Vim?


Me gustaría poder establecer múltiples marcas en Emacs como lo hace Vim. En Vim puede presionar m B y eso pondría una marca en esa línea en el archivo. Prensado posterior' b luego moverá el cursor de nuevo a esa línea. Puede hacer múltiples marcas con m{a -A-Z} ¿Hay alguna manera de tener múltiples marcas como esta en Emacs?

Author: Drew, 2010-09-22

5 answers

Puede usar lo que Emacs llama registers. La documentación las explica mejor que yo.

 16
Author: High Performance Mark,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-22 15:25:32

De Documentación de Emacs :

C-x r SPC r

  • Registre la posición del punto y el búfer actual en el registro r (punto a registro).

C-x r j r

  • Salta a la posición y al búfer guardados en el registro r (jump-to-register).

Pero si desea que sus posiciones persistan automáticamente de una sesión de Emacs a la siguiente, debería usar marcadores :

C-x r m RET

  • Establecer el marcador para el archivo visitado, en el punto.

C-x r m agregar a favoritos RET

  • Establezca el marcador llamado bookmark en el punto (bookmark-set).

C-x r b agregar a favoritos RET

  • Salta al marcador llamado bookmark (bookmark-jump).

C-x r l

  • Listar todos los marcadores (list-bookmarks).

M-x agregar a favoritos-guardar

  • Guarde todos los valores de marcadores actuales en el archivo de marcadores predeterminado.
 30
Author: Jérôme Radix,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-23 10:55:47

Pruebe el anillo de marcas para marcas rápidas:

C-espacio Haga una marca en la posición actual; también, agregue la posición al anillo de la marca.

C-xC-x Vuelve a la marca anterior.

C-UC-space Ciclo a través de las marcas en el anillo de marcas.

Usé Vim durante una década antes de cambiar a Emacs hace unos años, y aunque los registros y marcadores se veían bien al principio, el anillo de marcas es lo que realmente termino usando el 90% del tiempo. Generalmente Solo uso el espacio C, C-x C-x, pero el ciclismo también funciona.

Por cierto, tenga en cuenta que hacer grandes movimientos de teclas sin flecha como M-v a menudo agregará una marca al anillo de marcas. Solo practica estos combos clave y es probable que los encuentres suficientes para la mayoría de las tareas.

Radix ya hizo un buen trabajo explicando los registros y marcadores, y estos son útiles para ubicaciones en archivos a las que se hará referencia a menudo o que necesitan anotación.

 6
Author: labyrinth,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-05-27 12:40:40

Vanilla Emacs hace que especifique un nombre para cada marcador. Lo que quieres, parece, es una forma rápida de crear marcadores sin nombrarlos just simplemente pulsa una tecla. Desea marcadores autonamed , disponibles con Marcador+. Incluso puede hacer que se resalten automáticamente , si lo desea (la franja o la línea).

 5
Author: Drew,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-11-02 15:59:11
 0
Author: ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-22 15:25:20