Обычно замена с c
опцией дает мне две опции: (y) es или (n) o. Можно ли иметь несколько пронумерованных вариантов выбора да?
пример
файл
person: Alice
dog: Tobby
person: Bob
Образец 1 :%s/person:/woman:/c
Образец 2 :%s/person:/man:/c
Шаблоны 1 и 2 имеют одинаковый шаблон поиска, но разные шаблоны замены. Я хочу объединить их в один шаблон с возможностью нажатия (1) для замены 1, (2) для замены 2 или (n) без замены.
источник
:%s/person:/\=get(['woman', 'man'], input('Your choice: ') - 1, submatch(0)) . ':'/c
c
команды приведет к тому, что мне понадобится два шага для замены строки, что я считаю ненужным.Спасибо за все ответы на мой оригинальный вопрос! Теперь я включил
:SubstituteChoices
команду в мой плагин PatternsOnText , который обеспечивает надежную реализацию. Пример в вопросе будет решен через:источник