¿Cómo hago para tirar y retroceder a través del texto eliminado anterior?

10

Emacs tiene este práctico anillo de matar que se puede recorrer después de tirar, presionando M-yrepetidamente. ¿Hay alguna manera de cambiar la dirección de ciclismo? ¿Entonces no necesito recorrer todo cuando realmente quiero llegar al primero?

stevosn
fuente

Respuestas:

8

Esto es de 12.2.2 Yanking anteriores asesinatos :

'M-y' puede tomar un argumento numérico, que le indica cuántas entradas avanzar el puntero del "último tirón". Un argumento negativo mueve el puntero hacia el frente del anillo; desde el frente del anillo, se mueve "alrededor" hasta la última entrada y continúa hacia adelante desde allí.
Carl Roberts
fuente
¡Dios mío, llego un minuto tarde!
JeanPierre
4

Tienes algunas opciones para esto: -

  1. Puede usar el counselque proporciona el comando counsel-yank-popque mostrará la lista de todo el texto extraído y puede seleccionar cualquiera de ellos usando ivy(esto es lo que uso). En su caso, puede presionar M->para ir a la primera entrada en kill-ring.

  2. si usa helm, existe el comando helm-show-kill-ringque hace lo mismo que se mencionó anteriormente, excepto que usa un helmmarco de restricción en lugar de ivy.

  3. Si no desea ninguna de las opciones anteriores, eche un vistazo al paquete browse-kill-ring.

Además, una variable útil kill-do-not-save-duplicatesservirá como su nombre lo indica :)

Chakravarthy Raghunandan
fuente
3

Parece que podría usar -1 como argumento de prefijo M-ycomo lo indica el manual :

Mi puede tomar un argumento numérico, que le indica cuántas entradas avanzar el puntero de último tirón. Un argumento negativo mueve el puntero hacia el frente del anillo; desde el frente del ring, se mueve hasta la última entrada y continúa hacia adelante desde allí.

Jean Pierre
fuente
1

Echa un vistazo a la página Wiki de Emacs Examinar Kill Ring . La característica básica es mostrarle un búfer de todas las entradas de ring de asesinatos y permitirle actuar sobre ellas (editar, tirar, etc.).

Las alternativas y mejoras de la función básica también se presentan en esa página, que incluyen:

  • browse-kill-ring+.el:

    • Puede buscar (o hacer estallar) otros anillos, además del kill-ring- en particular, el secondary-selection-ring(ver secondary-sel.el).

    • Puede copiar o mover selecciones de un anillo a otro (usando c).

    • Vamos a delete-selection-modereemplazar la región activa cada vez que inserte un kill.

  • Icicles le permite limpiar el anillo de matar selectivamente durante la finalización, eliminando entradas sobre la marcha. Puede ordenar las terminaciones de varias maneras.

    • C-- C-y tira del anillo de matar usando la terminación.
    • M-yen el nivel superior (es decir, no después de un tirón del anillo de matar o secondary-selection-ringdel second-sel.el) tira de uno de esos anillos con la finalización. Tira de forma predeterminada por kill, pero una selección secundaria si usa un argumento prefijo.

    Cuando usa cualquiera de estos, puede alternar entre los candidatos de finalización (las entradas en el anillo), en varios pedidos, o puede elegir cualquiera de ellos directamente, sin ciclar.

Dibujó
fuente