Does Grbl have a command to call a subprogram? For example if the command was P[file name]. The main program would include.
G0 X10 Y10
P[key-hole]
G0 X100 Y100
P[key-hole]
The reason for this is if the key-hole program changed I would only have to edit one file, instead of finding every program that includes a key-hole and editing them.