Byłoby to całkiem przydatne, gdyby zostało zmapowane, np .::: nnoremap gm: wywołanie kursora (0, len (getline ('.')) / 2) <cr>
Heptite
3
Wystarczy virtcol („$”) / 2.
Luc Hermitte
@Luc Hermitte: Ładne, ale nie do końca najlepsze zachowanie, gdy w grę wchodzą twarde karty.
ephemient
Dlatego używam virtcol zamiast col. :) Ale rzeczywiście powinniśmy użyć | a nie kursor (). BTW, len () nie da lepszego wyniku. Ponadto len spowoduje inne problemy ze znakami wielobajtowymi.
Luc Hermitte
8
Pisanie gmby to zrobiło, ale porusza się po liniach ekranu (patrz :help gm). Aby działał z liniami tekstowymi, można ponownie przypisać to polecenie:
gm wydaje się przesuwać kursor na środek ekranu, ale jeśli moja linia tekstu jest krótsza niż długość ekranu, nie przenosi mnie na środek. Przepraszamy za brak wyjaśnień.
teggy
@teggy: Rozumiem. Zmodyfikowałem swoje rozwiązanie, aby zmienić mapowanie gm, aby przejść do środka wiersza tekstu. Jak widać łączy w sobie rozwiązania Ephemient i Luca Hermitte'a.
JooMing
Jak wskazał ephemient, nadal występuje problem z twardymi tarbami, ponieważ kursor () liczy je jako jeden znak każdy. Co więcej, nie będzie również działać ze znakami wielobajtowymi.
Luc Hermitte
7
Oto rozwiązanie, które będzie respektować zarówno tabele twarde, jak i znaki wielobajtowe.
Oto najlepsze rozwiązanie, jakie znalazłem. Skakanie dokładnie na środek linii nie jest zbyt praktyczne. Najprawdopodobniej nadal będziesz musiał przesunąć kursor o kilka pozycji po przejściu na środek. Co jeśli możesz przeskoczyć do konkretnej postaci? Wiele osób po prostu szuka postaci, a następnie naciska „Dalej”, aż do niej dotrze. To jest powolne. Wtyczka Easy-motion oferuje lepsze rozwiązanie.
Moim ulubionym jest <leader><leader>spostać, na którą chcesz skakać. Easy Motion zastępuje wszystkie mecze różnymi literami do wyboru. Zobacz samouczek. To zmieniająca życie wtyczka ...
Pisanie
gm
by to zrobiło, ale porusza się po liniach ekranu (patrz:help gm
). Aby działał z liniami tekstowymi, można ponownie przypisać to polecenie:źródło
Oto rozwiązanie, które będzie respektować zarówno tabele twarde, jak i znaki wielobajtowe.
źródło
Oto najlepsze rozwiązanie, jakie znalazłem. Skakanie dokładnie na środek linii nie jest zbyt praktyczne. Najprawdopodobniej nadal będziesz musiał przesunąć kursor o kilka pozycji po przejściu na środek. Co jeśli możesz przeskoczyć do konkretnej postaci? Wiele osób po prostu szuka postaci, a następnie naciska „Dalej”, aż do niej dotrze. To jest powolne. Wtyczka Easy-motion oferuje lepsze rozwiązanie.
Moim ulubionym jest
<leader><leader>s
postać, na którą chcesz skakać. Easy Motion zastępuje wszystkie mecze różnymi literami do wyboru. Zobacz samouczek. To zmieniająca życie wtyczka ...źródło