Hu,
Remember CNC pro will do this automatically for you when you either load the program or edit it and CNC Lite/Plus does this already.
You really have two separate questions here.
So to answer your first question directly we would suggest a single macro called from your G code file. It would be easiest to make one two line macro. Since macros are public or in other words global to all routines you only have to write it once and all routines in the system can share it from where ever it's called.
Since the logic is compiled when the CNC.EXE starts, it wouldn't take any more time as if we were to hardcoded it in as we do when it loads or is edited.
This is related to the next question because when it loads, it's true, it looks ahead the full program length, but if you were to flip a physical switch to enable block delete while it was running and moving, then the macro method would catch it on the fly as cutting. It would do the same if you turned it off quickly.
The key to this not to use both methods at the same time. So on the tool parameter screen leave the block skip character blank. Remember the Block Skip character is selectable to any character you want to use for block skip and a blank is acceptable. This way it will not automatically skip those \ blocks while loading, rather it will depend on the state of your switch to skip those blocks on the fly, even while moving.
Tech Support
CamSoft Corp.
(909) 674-8100
support@camsoftcorp.com www.cnccontrols.com