Nach zweitägigem Ausprobieren von vim stand ich vor dem Problem des Einfügens von Include Guards in C++ Header Dateien.
Da der Name der Definition nicht immer eindeutig vom Dateinamen abhängt (sondern evtl auch vom einem/mehreren namespaces) verwende ich folgenden Eintrag in der .vimrc:
command -nargs=1 IG :normal ggO#ifndef <args><CR>#define <args><Esc><C-O>Go#endif //<args><Esc><C-O>
der Befehl
IG nimmt als Argument den Namen der Definition entgegen. Am Anfang und am Ende des Dokuments wird der Include Guard hinzugefügt und schließlich der Cursor zur vorigen Position zurückgesetzt.
Ein Beispiel aufruf wäre etwa
:IG NAMESPACE_FILENAME_H
der in einer leeren Datei den Quelltext
#ifndef NAMESPACE_FILENAME_H
#define NAMESPACE_FILENAME_H
#endif //NAMESPACE_FILENAME_H
erzeugt.
Keine Kommentare:
Kommentar veröffentlichen