To może wydawać się trochę za daleko, ale przełączyłem się na vim i jestem bardzo szczęśliwy z przepływu pracy. Staram się dyscyplinować, aby nie używać klawiszy strzałek, ponieważ trzymanie rąk na klawiszach alfa przez cały czas jest tak wielką rzeczą podczas pisania. Więc kiedy muszę nawigować, wychodzę z trybu wstawiania, przechodzę w tryb normalny i wracam do trybu wstawiania.
Istnieje wyjątek, w którym jest to bardziej zakłócające: używam clang complete
z fragmentami i super tab
co jest świetne. Z wyjątkiem tego, że za każdym razem, gdy wypełniam funkcję auto po wypełnieniu parametrów, jestem przed kursorem, )
więc aby kontynuować, muszę przesunąć kursor o jeden znak w prawo. Jak możesz sobie wyobrazić, dzieje się to bardzo często .
Jedyne opcje, jakie mam (o ile wiem) to: Esclalub →i nie jestem zadowolony z żadnej z nich. Pierwszy zmusza mnie do uderzenia w 3 klawisze za prosty ruch kursora o 1 znaku, drugi zmusza mnie do przesunięcia ręki na klawisze strzałek. Trzecią opcją byłoby CTRL-Lzmapowanie lub coś →.
Więc jaki jest najlepszy sposób na zrobienie tego?
//snippets (clang complete + supertab):
foo($`param1`, $`param2`)
//after completion:
foo(var1, var2|)
^ ^
| |
I am here |
Need to be here
|
oznacza pozycję kursora
)
jeśli w funkcji jest co najmniej jeden argument. Więc piszę to ręcznie. Teraz o wiele bardziej przydatny.)
, założę się, że przeskakuje bez wstawiania. (Nie używam tej wtyczki))
<C-O>l
przejście do trybu normalnego dla 1 polecenia trybu normalnego.Odpowiedzi:
Mapuj, )aby pominąć istniejące,
)
jeśli jest to nawias zamykającyZaczerpnięte z: http://vim.wikia.com/wiki/Automatically_append_closing_characters
Stara odpowiedź
:h i_CTRL-O
wykonaj jedno polecenie, wróć do trybu wstawiania.Ctrl-ol przeniesie Cię o jedną postać w prawo, a następnie wróci do trybu wstawiania.
Alternatywnie niektóre wtyczki nawiasu klamrowego pozwalają po prostu wpisać nawias zamykający )i zastąpią istniejący.
źródło
)
jest ostatnim znakiem w linii (i zdarza się to często podczas pisania kodu).CTRL-O a
jednak działa. Więc chyba zapisaliśmy jeden klucz. :)del
)
to tylko dwie postacie i zawsze umieści cię po nawiasie zamykającym.Wpisz następujące polecenie, aby znaleźć klawisze sterujące używane w trybie wstawiania.
ctrl-b nie jest używane, ale możesz chcieć poświęcić jakiś inny klucz.
Działa to, aby przesunąć kursor w prawo o jeden znak. Lub zmapuj jakiś podwójny znak.
źródło