Coraz bardziej mnie frustruje pisanie tego
:% s / some_really_long_string / some_other_really_really_long_string_that_may_or_may_not_related_to_the_first_one / gc
Czy jest jakiś sposób, aby skopiować / wkleić te ciągi w trybie ex?
Możesz użyć, Ctrl-Raby wstawić wartość rejestru w wierszu polecenia Ex. Jeśli na przykład wciągnąłeś jakiś tekst do rejestru domyślnego, możesz go przywołać Ctrl-R".
Istnieją również skróty do niektórych typowych przypadków. Możesz wstawić bieżące słowo pod kursorem za pomocą Ctrl-RCtrl-Wlub bieżącą nazwę pliku za pomocą Ctrl-RCtrl-F.
Zobacz te tematy, aby uzyskać więcej informacji, w tym kilka innych przykładów:
:help c_CTRL-R
:help cmdline.txt
Warto także przeczytać rejestry:
:help registers
Ctrl-R
, że oznacza to, że musisz zmienić, aby zdobyć kapitałR
. ale kiedy go wypróbowałem, potrzebujesz po prostuctrl-r
bez zmiany.Prawie zawsze unikam wpisywania szukanego ciągu w poleceniu zastępczym, najpierw wykonując wyszukiwanie (z
/
) lub „słowo pod kursorem” (z*
), a następnie wykonując:Gdy brakuje wzorca wyszukiwania, polecenie zastępcze użyje ostatniego wzorca wyszukiwania.
Oprócz tego, że wpisujesz mniej znaków, pierwszy przypadek, wyszukiwanie za pomocą
/
, pozwala najpierw przetestować złożony wzorzec wyszukiwania przed wykonaniem podstawienia. Drugi przypadek, szukając z*
, pozwalają unikać wkładania atomy start / end, czyli\<
a\>
.-
Nawiasem mówiąc, możesz uniknąć
g
flagi, dodając linięw twoim
vimrc
pliku.źródło