czy można edytować więcej niż jedno słowo jednocześnie, które znajdują się w tym samym wierszu?
Powiedzmy na przykład, że mam to:
Spam and Eggs is all you need for a healthy breakfast
i chciałbym zmienić linię na:
organic_Spam and organic_Eggs is all you need for a healthy breakfast
Chciałbym wyróżnić „Spam” i „Jajka”, a jednocześnie „Organic_” jednocześnie do „Spamu” i „Jajek”. Trochę jak użycie bloku wizualnego do jednoczesnego pisania na różnych liniach, ale tutaj pisz rzeczy na tej samej linii. Widziałem kolegę robiącego to z Sublime Text i próbowałem googlować, ale bezskutecznie.
cursor-movement
insert-mode
brodrigues
źródło
źródło
Odpowiedzi:
Zgadzam się z Alexandrem tutaj. Podczas codziennej edycji prawdopodobnie również użyłbym tego .polecenia, ale jeśli chcesz wykonać tylko jedno polecenie, użyłbym polecenia zastępczego:
podczas gdy
&
jest to dopasowany wzór z/S\|E/
.źródło
W Vimie nie ma wielu kursorów, jak w Sublime Text (ale pamiętam, że jest kilka wtyczek). Ale to nie wydaje się tak ważne dla vima, ponieważ istnieje inny sposób na osiągnięcie tego. Na przykład masz tę linię
Zrobiłbym coś takiego: ustaw kursor w trybie normalnym na pierwszej literze
Spam
i wpisz iorganic_
Esc, a następnie dwa razy, waby wskoczyć naEggs
i naciśnij. (kropka), aby powtórzyć ostatnią akcję. Dla mnie jest to o wiele bardziej produktywne niż w Sumlime Text, ale może nie jest tak wymyślne i intuicyjne.W obu edytorach istnieje pewien rodzaj przetwarzania wstępnego dla tej akcji, w Sublime Text jest wybór miejsc dla nowej pozycji wielu kursorów za pomocą skrótu, a po tym wszystkim możesz edytować słowa jednocześnie. W Vimie tego rodzaju „przetwarzanie wstępne” dzieje się właściwie podczas edycji linii, mam na myśli to wszystkoww. rzeczy.
źródło
Jeśli ty naprawdę chcesz obsługiwać wiele kursorów, takich jak Sublime, możesz użyć tej wtyczki: https://github.com/terryma/vim-multiple-cursors
To nie jest vim , ale często go używam i działa dobrze
źródło