I would like to run some external tools that require their output to be parsed, independently of my default build scripts. For example, I have a tool that searches all source files for some identifiers that I can then jump to. The problem is that there's no way for me to have these two independent of each other, i.e. if I have Project A, B, and C, I want them each to be able to run Tool Z without having to put Tool Z into each of the build scripts as a variant. That's possible, but it's inconvenient (e.g. if I change Tool Z I have to now go and find all build scripts that reference it). My other option is to make a separate build script for Tool Z and then select it every time I need to use it, but that's inconvenient.
Is there a simpler way to do this? I can't just bind Tool Z to a key because I need to filter the output so I can jump to code. I could write a plug in that would select Tool Z as the build system and execute it and then reset the build system, but I'm not sure exactly how to do that.