This tool is experimental and as such not officially supported.
Developing TPL can be quite cumbersome since the only way to check syntactical correctness of a TPL file is to upload it to BMC Discovery via the UI. A larger TPL file in development may need to be uploaded several times which becomes rather tedious very quickly.
This project aims to mitigate this by developing an IDE for TPL. The IDE should provide tools to easily check and correct a file in development without the need to upload it to BMC Discovery every time.
In the moment the IDE can only be run under Windows. It comes as a normal Notepad++ editor with several plugins installed. There is no actual installation required other than extracting a zip file. You can download the zip file here (current version 0.4).
Extract the zip file somewhere on your local machine and run tpledit.bat from the extracted files.
Older versions: v0.3
You can drag a .tpl file into the editor and press F6 to open a dialog to run TPLint. TPLint is basically a command line interface for a stripped down version of the Reasoning compiler. It just does the compilation step, producing errors and warnings, but will not create any .eca files.
The dialog for TPLint (pressing F6 in Notepad++) looks like this:
The default command line options should analyze the current file and all other files in the same directory and subdirectories. By default TPLint uses the taxonomy which comes as a file located in the taxonomy sub directory. If you are developing a TPL patterns which use custom node kinds you will have to modify this taxonomy file.
In the extracted files folder there is an example directory. Go to example0 and drag the file BMC_ADDM.tpl into the open Notepad++ editor. You should see an overview of the pattern on the right hand side of the editor:
Clicking on the entries navigates you quickly to the single patterns of this pattern module.
Press now F6 and click on "OK" on the next dialog. You should see a lot of output ending with:
TPLint ====== Analyzed modules: Common_Functions, BMC.ADDM Used modules: Common_Functions, BMC.ADDM No issues found!
Try modifying the file and introduce some syntax errors. Repeat the process and see how the output changes.