Al usar set showcmd
Vim muestra comandos parciales en la última línea de la pantalla. Por ejemplo, en el modo Normal al escribir el comando, se dt.
muestra la última línea dt
y luego, al presionar .
el comando, se completa y, por lo tanto, no se muestra nada.
¿Hay alguna manera de mostrar comandos completos? Por ejemplo, al escribir dt.gU(
, primero dt.
se mostrará; y al comenzar a escribir el segundo comando, el primero se borrará, de modo que al final solo gU(
se mostrará.
Esto podría ser útil, por ejemplo, para ilustrar GIF; y para verificar que escribiste lo que querías si enfrentas algún resultado inesperado.
dt.gU(
hay 2 comandos: dt.
y gU(
... Entonces, lo que realmente quieres es mostrar algún tipo de historial de comandos (Vim ya muestra los "comandos completos").
src/normal.c
las llamadas de código clear_showcmd()
en varios lugares ( normal_cmd()
, do_pending_operator()
, end_visual_mode()
). Estoy jugando con volcar en un archivo showcmd_buf
en esos puntos, que se veía bastante bien, pero me hace estar bastante seguro de que no puede obtener lo que quiere sin modificar de manera similar el código fuente de Vim y reconstruirlo. Por supuesto, hacerlo podría valer la molestia de hacer tus gifs.
dt
muestra porque es el operador actual pendiente. Una vez que se le da una moción, ya no es un operador pendiente. Supongamos que fuimos más allá y lo hicimos másdt.gU(gu)daw
o menos. ¿Es todo ese "un comando completo", o son cuatro comandos completos, o algo más?