Quindi ho letto :help scroll-cursor
e mi piace molto zz
, che mette la linea su cui si trova il cursore al centro della finestra.Scorrimento Vim relativo al cursore, mappatura personalizzata
Sto cercando aiuto per creare una mappatura che abbia un rendimento simile a zz
ma mette la linea su cui è posizionato il cursore al 20% dell'altezza della finestra (o 25%, 30% ecc.).
Modifica:
Grazie a ZYX e Drasill, sono stato in grado di modificare la sua funzione per ottenere la funzionalità desiderata:
function ScrollToPercent(percent)
let movelines=winheight(0)*a:percent/100
if has("float") && type(movelines)==type(0.0)
let movelines=float2nr(movelines)
endif
let oldso=&so
execute ":set so=" . movelines
execute "normal! zt"
execute ":set so=" . oldso
endfunction
Grazie per l'esempio, ma questa funzione sposta solo il cursore, non il cursore e la linea sotto il cursore. Vedere la mia modifica sopra per il mio risultato finale. –
@Nick Canzoneri Stavo semplicemente aggiornando la mia funzione mentre stavi scrivendo questo commento. – ZyX