¿Qué hace [cuenta]%?

8

Esperaría [count]%saltar hacia adelante y hacia atrás entre counttiempos de llaves coincidentes o algo así, pero en cambio, escribir ese comando parece mover el cursor a un lugar aleatorio en el búfer. Parece que siempre va al mismo lugar para constantes count, pero diferentes lugares para diferentes count. Entonces, ¿qué hace exactamente ese comando?

Daniel
fuente

Respuestas:

12

De :help N%:

Ir al {count}porcentaje en el archivo, en el primer no en blanco en la línea |linewise|. Para calcular el nuevo número de línea, se utiliza esta fórmula:
( {count}* número de líneas + 99) / 100
Consulte también la 'startofline'opción.

Yo tampoco sabía esto, por cierto. Pero escribí :help %<C-d>, y N%parecía una buena combinación ;-)

Ver también: ¿Cómo navego a los temas en la documentación de Vim? .

Martin Tournoij
fuente
2

Complemento de complemento :g:matchup_motion_override_Npercent

Este complemento ofrece la posibilidad de usar [count]%para ambos movimientos:

  • {count}%adelante {count}tiempos. Requiere {count} <= g:matchup_motion_override_Npercent.
  • Para mayor {count}, {count}%va al {count}porcentaje en el archivo.

El valor por defecto es 6.

Esto significa 5%ciclo cinco b:match_words, por ejemplo, en vimscript hasta elseif. Pero 50%saltaría al medio del archivo.

Hotschke
fuente