Если ваш файл соответствует точному шаблону, который вы разместили, вы можете решить это с помощью 4 команд:
:%s/^class\s*/interface I
:%s/^\s\+{\_[^}]*}//
:g/^\s*$/d
:%s/)\zs$/;
- Изменить
class
на interface I
- Удалить блоки с отступом
- Удалить пустые строки
- Добавить
;
после окончания )
Если вам нужно использовать это в более чем одном файле (хотя я рекомендую это дажеесли вы собираетесь использовать его один раз) скопируйте и вставьте этот текст в буфер, а затем запишите его в файл, скажем /tmp/cs
.Затем, сосредоточившись на буфере, который вы хотите изменить, запустите :so /tmp/cs
.