Потужність g:
:g/\vdefn.*\n\s*\zs"([^"]|\n)*"/normal gngq
Частина між /s досить пояснює себе, оскільки це регулярний вираз із вашого початкового запитання.
normal gngqнаприкінці дещо цікаво. gnвибере наступну відповідність регулярного виразу і gq, звичайно, форматує цей вибір (як ви згадували у своєму запитанні).
:gце дійсно велика частина. Це, на мій погляд, одна з найкорисніших функцій Vim. Команда gex приймає регулярний вираз і команду Ex, і вона виконує команду в кожному рядку, з яким відповідає регулярний вираз. Якщо ви ще не дізналися про це :g, настійно рекомендую зробити це, оскільки це значно підвищить вашу продуктивність. Кілька ресурсів - це власний Vim :help :gабо Power of g на вікі Vim.
gnвибирається з рядка, деVвикликається наступне (не те, що в тому ж рядку) виникнення шаблону. Документація Vim зазначає, що якщо візуальний режим активний, вибір продовжується з поточного рядка через наступний шаблон. Це викликає небажану поведінку.