Yanıtlar:
:call cursor(0, len(getline('.'))/2)
Yazmak gm
bunu yapardı, ancak ekran satırlarına göre hareket ediyor (bkz. :help gm
). Metin satırlarıyla çalışmasını sağlamak için şu komutu yeniden eşleştirebilirsiniz:
map gm :call cursor(0, virtcol('$')/2)<CR>
İşte sabit levhalara ve çok baytlık karakterlere de saygı duyacak bir çözüm.
:exe 'normal '.(virtcol('$')/2).'|'
İşte bulduğum en iyi çözüm. Tam olarak çizginin ortasına atlamak çok pratik değil. Ortaya geçtikten sonra imleci hala birkaç konum hareket ettirmeniz gerekecektir. Belirli bir karaktere atlayabilirseniz ne olur? Birçok kişi sadece karakteri arar, daha sonra karaktere ulaşana kadar "ileri" tuşuna basar. Bu yavaş. Easy-motion eklentisi daha iyi bir çözüm sunar.
Benim favorim o <leader><leader>s
zaman atlamak istediğiniz karakter. Easy Motion, seçim yapabilmeniz için tüm eşleşmeleri farklı harflerle değiştirir. Eğiticiye bakın. Hayat değiştiren bir eklenti ...