Я составлял шаблонный список методов в vim для проекта на python. Я добавил строки между каждым методом и хотел добавить pass
к каждому методу на данный момент - пока я не реализую метод, это все еще будет интерпретируемый код Python. В vim я знаю, как редактировать пространственно смежные строки файла, используя :10,17s/<search regex>/<substitute>/
, но после внесения изменений, чтобы добавить пустые строки между методами, мне нужно было вставлять a pass
в каждую третью строку. В способе, который я нашел, использовались трубы и &
через:
:10s/<search regex>/<substitute>|13&|16&
и т. Д. У меня было около 15 амперсандов, соединенных вместе, чтобы заставить это работать. Есть ли более лаконичный способ получить такое поведение в vim?
Чтобы обратиться к комментарию, вот минимальный пример, в файле myfile.py у меня есть:
def _fun1(self):
def _fun2(self):
def _fun3(self):
def _fun4(self):
...etc
Во 2-й строке, 5-й строке, 8-й строке и т. Д. Я хочу вставить pass
(с 4 пробелами перед тем, чтобы сохранить постоянные интервалы), / у меня это до _fun15(self):
, поэтому хотелось бы получить поведение без 14 |lineNo&
с скованы вместе. Возможно инкрементная функция с переменной для номеров строк или какой-то другой код, который создает поведение.