I don’t believe there’s a preprocessor pass before the header tool pass, so that wouldn’t work. But I might be wrong, I’ve never bothered with that kind of thing.
Since you already have it, the best compromise here is to use Visual Assist X snippets. You could easily create a “Surround With” macro for blueprint events:
UFUNCTION( BlueprintImplementableEvent )
$selected$
Then you can just select the line or place the cursor at the start, then insert the snippet using either the contextual menu or a keyboard shortcut, if you assign one to VAssistX.VaSnippetInsert (I use CTRL+W, CTRL+W). The contextual menu uses mnemonic shortcuts, so you can just use that key to choose the shortcut without ever touching the mouse. Naming the above snippet to “Blueprint Event”, using it becomes “Home, SHIFT+End, CTRL+W, CTRL+W, B”. There’s sadly no way to assign a keyboard shortcut to a non-built-in VAX snippet. (I did map one to RefactorCreateImplementation, however, it is a godsend.)
Alternatively, you can create a shortcut snippet, where you match a shortcut to a snippet. For instance, I created this Slate Stylesheet Property (ssprop) shortcut snippet:
/** @todo document */
UPROPERTY( Category=Appearance, EditAnywhere )
$propertytype$ $propertyname$;
$ClassName$& Set$propertyname$( const $propertytype$& In$propertyname$ ){ $propertyname$ = In$propertyname$; return *this; }
By the same logic, you could create a really simple shortcut for BlueprintImplementableEvent like “bie” or something and have that insert the full keyword. If you just want it to show up in the contextual menu, don’t type in a shortcut and just use the “BlueprintImplementableEvent” keyword as the snippet name. Then as you’re typing in your UFUNCTION declaration, you can just write “Blue”, hit CTRL+Space and that brings up whatever snippets start with Blue:

It’s an amazing tool, really, and I can’t stand programming without it.
(And now I feel like a shill. I wasn’t paid for this, I swear! ;))