Zwykle zamiennik z c
opcją daje mi dwie opcje: (y) es lub (n) o. Czy jest możliwe wybranie kilku numerowanych opcji tak?
Przykład
Plik
person: Alice
dog: Tobby
person: Bob
Wzór 1 :%s/person:/woman:/c
Wzór 2 :%s/person:/man:/c
Wzory 1 i 2 mają ten sam wzorzec wyszukiwania, ale różne wzorce zastępcze. Chcę ujednolicić je w jeden wzór z opcją naciśnięcia (1) dla zamiany 1, (2) dla zamiany 2 lub (n) dla braku zamiany.
źródło
:%s/person:/\=get(['woman', 'man'], input('Your choice: ') - 1, submatch(0)) . ':'/c
c
polecenia spowoduje, że potrzebuję dwóch kroków, aby zastąpić ciąg, co moim zdaniem jest niepotrzebne.Dziękuję za wszystkie głosy poparcia dla mojego pierwotnego pytania! Włączyłem teraz
:SubstituteChoices
polecenie do mojej wtyczki PatternsOnText , która zapewnia niezawodną implementację. Przykład w pytaniu zostałby rozwiązany poprzez:źródło