# All other lines are deleted:
/^typedef struct/d
-/^ FL_FORM/d
-/[vcl]data/d
+/^ /{; /FL_OBJECT/!d; }
# For all lines starting with FL_OBJECT...
# The struct is ended by "} FD_xxx;", so now's the time to paste back the
# contents of the hold space.
-/} FD_/{
+/^} FD_.*;/{
# 1. Rewrite "} FD_xxx;" as "\nstruct FD_xxx : public FD_base {".
s/} \(.*\);/\