cursor-motions – ¿Hay un objeto de texto para la línea actual?

Pregunta:

  • ¿Hay un objeto de texto para la línea actual?

  • ¿Hay un objeto de texto para ^$ ?

Respuesta:

Aquí hay una burda "línea" de objetos de texto:

xnoremap il g_o0
onoremap il :normal vil<CR>
xnoremap al $o0
onoremap al :normal val<CR>

Y un crudo objeto de texto "búfer":

xnoremap i% GoggV
onoremap i% :normal vi%<CR>

—EDITAR—

Un "operador" es un comando que no hace nada por sí mismo: d , y , etc.

Presionar esas teclas lo pone en "modo de operador pendiente", donde Vim espera a que le diga en qué desea que opere … con un "movimiento pendiente de operador".

Puede usar :omap o :onoremap para definir movimientos personalizados pendientes de operador. La técnica utilizada aquí está inspirada en :help omap-info :

  1. define un mapeo de modo visual que cubre el área deseada,
  2. utiliza ese mapeo en un mapeo pendiente de operador.

Tenga en cuenta que utilicé :onoremap porque il , al e i% aún no existen. Si está anulando un movimiento u objeto de texto existente, digamos ip , debe usar un mapeo recursivo :omap .

:help :map-operator describe un método un poco más avanzado.

Ver :help v_o para o en modo visual.

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım