Я использую VIM для разработки на С++ уже довольно много лет, и я не хочу обсуждать вопрос о том, использовать ли IDE или мощный текстовый редактор для разработки программного обеспечения. До сих пор я участвовал в основном с библиотекой шаблонов только для заголовка, где все либо является шаблоном, либо объявлено встроенным, поэтому файлы .cpp не играют важной роли.
В последнее время я больше вовлечен в "традиционную" разработку на С++, столкнувшись с старой проблемой синхронизации заголовка/без заголовка. Мне интересно, есть ли какие-либо средства командной строки, которые могут быть использованы в make-target или интегрированы в VIM для обработки этого задания, то есть обновлять заголовочные файлы на основе файлов .cpp. В основном, объявления классов/структур или (шаблонные и встроенные) реализации должны игнорировать файлы заголовков int, в то время как объявления функций следует добавлять, удалять или обновлять на основе файла .cpp.
Я знаю инструмент lzz, однако для этого требуется, чтобы вы действительно кодировали дополнительный, третий формат файла, который затем предварительно обрабатывается на .h/. cpp до фактической компиляции.
Есть ли что-нибудь, что может сделать эту работу? Как другие разработчики, не связанные с IDE, справляются с этой проблемой?