Yanıtlar:
İşte kaba "satır" metin nesneleri:
xnoremap il g_o0
onoremap il :normal vil<CR>
xnoremap al $o0
onoremap al :normal val<CR>
Ve kaba bir "tampon" metin nesnesi:
xnoremap i% GoggV
onoremap i% :normal vi%<CR>
---DÜZENLE---
: Bir "operatör" tek başına hiçbir şey yapmaz bir komuttur d, yvb
Bu tuşlara basmak sizi "operatörün beklemede olduğu mod" a koyar; burada Vim, üzerinde "operatörün beklemede olduğu bir hareketle" ne işlemesini istediğinizi söylemenizi bekler.
Operatör bekleyen özel hareketleri tanımlamak için :omapveya :onoremaptuşlarını kullanabilirsiniz. Burada kullanılan teknikten ilham alınmıştır :help omap-info:
Not kullandığım olduğunu :onoremapçünkü il, alve i%zaten yoktur. Varolan hareketi veya metin nesnesi geçersiz kılma durumunda - ki ip- Bir özyinelemeli eşleme kullanmalıdır: :omap.
:help :map-operator biraz daha gelişmiş bir yöntemi açıklar.
Bkz :help v_oiçin ogörsel modunda.
oonoremap içinde (operatör bekleyen modu)? oGörsel modda ne yapar ? Bunun "diğer taraf" olduğunu tahmin ediyorum, çünkü bir seçimin diğer tarafına atlıyor gibi görünüyor ... Nasıl bulabilirim :h? :h x_oVeya ile bulamıyorum :h o.
0 yerine ^ kullanmak için ek bir çözüm öneririm (böylece satır ilk karakterin başında başlar:
xnoremap il g_o^
onoremap il :normal vil<CR>
xnoremap al $o^
onoremap al :normal val<CR>
Bu şekilde "satırda değişiklik" yaparsak girinti seviyesine saygı gösterecektir.