{
  "patterns": {
    "LogtalkError1": {
      "expression": "[\\*!]\\s+in\\sfile\\s(path)\\sat\\sor\\sabove\\sline\\s(line)"
    },
    "LogtalkError2": {
      "expression": "[\\*!]\\s+in\\sfile\\s(path)\\sbetween\\slines\\s(line)"
    },
    "LogtalkError3": {
      "expression": "[\\*!]\\s+in\\sfile\\s(path)"
    }
  },
  "commands": [
    {
      "namespace": "Process Palette",
      "action": "Compile file",
      "command": "swilgt -g \"set_logtalk_flag(report,warnings),ignore(logtalk_load('{fileAbsPath|posix}')),halt\" 2>&1",
      "arguments": [],
      "cwd": null,
      "inputDialogs": [],
      "env": {},
      "keystroke": "cmd-1",
      "stream": false,
      "outputTarget": "panel",
      "outputBufferSize": 80000,
      "maxCompleted": 3,
      "autoShowOutput": true,
      "autoHideOutput": false,
      "scrollLockEnabled": false,
      "singular": true,
      "promptToSave": true,
      "saveOption": "referenced",
      "patterns": [
        "LogtalkError1",
        "LogtalkError2",
        "LogtalkError3"
      ],
      "successOutput": "{stdout}",
      "errorOutput": "{stdout}\n{stderr}",
      "fatalOutput": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "successMessage": "Executed : {fullCommand}",
      "errorMessage": "Executed : {fullCommand}\nReturned with code {exitStatus}\n{stderr}",
      "fatalMessage": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "menus": [
        "Logtalk"
      ]
    },
    {
      "namespace": "Process Palette",
      "action": "Run unit tests",
      "command": "swilgt -g \"ignore(logtalk_load('{fileDirAbsPath|posix}/tester')),halt\" 2>&1",
      "arguments": [],
      "cwd": null,
      "inputDialogs": [],
      "env": {},
      "keystroke": "cmd-2",
      "stream": false,
      "outputTarget": "panel",
      "outputBufferSize": 80000,
      "maxCompleted": 3,
      "autoShowOutput": true,
      "autoHideOutput": false,
      "scrollLockEnabled": false,
      "singular": true,
      "promptToSave": true,
      "saveOption": "referenced",
      "patterns": [
        "LogtalkError1",
        "LogtalkError2",
        "LogtalkError3"
      ],
      "successOutput": "{stdout}",
      "errorOutput": "{stdout}\n{stderr}",
      "fatalOutput": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "successMessage": "Executed : {fullCommand}",
      "errorMessage": "Executed : {fullCommand}\nReturned with code {exitStatus}\n{stderr}",
      "fatalMessage": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "menus": [
        "Logtalk"
      ]
    },
    {
      "namespace": "Process Palette",
      "action": "Scan for dead code",
      "command": "swilgt -g \"set_logtalk_flag(report,warnings),ignore(logtalk_load('{fileAbsPath|posix}')),flush_output,logtalk_load(dead_code_scanner(loader)),dead_code_scanner::all,halt\" 2>&1",
      "arguments": [],
      "cwd": null,
      "inputDialogs": [],
      "env": {},
      "keystroke": "cmd-3",
      "stream": false,
      "outputTarget": "panel",
      "outputBufferSize": 80000,
      "maxCompleted": 3,
      "autoShowOutput": true,
      "autoHideOutput": false,
      "scrollLockEnabled": false,
      "singular": true,
      "promptToSave": true,
      "saveOption": "referenced",
      "patterns": [
        "LogtalkError1",
        "LogtalkError2",
        "LogtalkError3"
      ],
      "successOutput": "{stdout}",
      "errorOutput": "{stdout}\n{stderr}",
      "fatalOutput": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "successMessage": "Executed : {fullCommand}",
      "errorMessage": "Executed : {fullCommand}\nReturned with code {exitStatus}\n{stderr}",
      "fatalMessage": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "menus": [
        "Logtalk"
      ]
    },
    {
      "namespace": "Process Palette",
      "action": "Run doclet",
      "command": "swilgt -g \"logtalk_load(doclet(loader)),ignore(logtalk_load('{fileDirAbsPath|posix}/doclet')),halt\" 2>&1",
      "arguments": [],
      "cwd": null,
      "inputDialogs": [],
      "env": {},
      "keystroke": "cmd-4",
      "stream": false,
      "outputTarget": "panel",
      "outputBufferSize": 80000,
      "maxCompleted": 3,
      "autoShowOutput": true,
      "autoHideOutput": false,
      "scrollLockEnabled": false,
      "singular": true,
      "promptToSave": true,
      "saveOption": "referenced",
      "patterns": [
        "LogtalkError1",
        "LogtalkError2",
        "LogtalkError3"
      ],
      "successOutput": "{stdout}",
      "errorOutput": "{stdout}\n{stderr}",
      "fatalOutput": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "successMessage": "Executed : {fullCommand}",
      "errorMessage": "Executed : {fullCommand}\nReturned with code {exitStatus}\n{stderr}",
      "fatalMessage": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "menus": [
        "Logtalk"
      ]
    },
    {
      "namespace": "Process Palette",
      "action": "Generate HTML documentation",
      "command": "swilgt -g \"logtalk_load(lgtdoc(loader)),logtalk_load('{fileAbsPath | posix}'),os::change_directory('{fileDirAbsPath|posix}'),lgtdoc::directory('{fileDirAbsPath|posix}'),halt\" 2>&1 && cd {fileDirAbsPath | posix}/xml_docs && lgt2html && atom index.html",
      "arguments": [],
      "cwd": null,
      "inputDialogs": [],
      "env": {},
      "keystroke": "cmd-5",
      "stream": false,
      "outputTarget": "panel",
      "outputBufferSize": 80000,
      "maxCompleted": 3,
      "autoShowOutput": true,
      "autoHideOutput": false,
      "scrollLockEnabled": false,
      "singular": true,
      "promptToSave": true,
      "saveOption": "referenced",
      "patterns": [],
      "successOutput": "{stdout}",
      "errorOutput": "{stdout}\n{stderr}",
      "fatalOutput": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "successMessage": "Executed : {fullCommand}",
      "errorMessage": "Executed : {fullCommand}\nReturned with code {exitStatus}\n{stderr}",
      "fatalMessage": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "menus": [
        "Logtalk"
      ]
    },
    {
      "namespace": "Process Palette",
      "action": "Generate SVG diagrams",
      "command": "swilgt -g \"logtalk_load(diagrams(loader)),logtalk_load('{fileAbsPath | posix}'),os::change_directory('{fileDirAbsPath|posix}'),diagrams::directory('{fileDirAbsPath|posix}'),halt\" 2>&1 && cd {fileDirAbsPath|posix} && for f in *.dot; do dot -Tsvg \"$f\" > \"$(basename \"$f\" .dot).svg\" || continue; done",
      "arguments": [],
      "cwd": null,
      "inputDialogs": [],
      "env": {},
      "keystroke": "cmd-6",
      "stream": false,
      "outputTarget": "panel",
      "outputBufferSize": 80000,
      "maxCompleted": 3,
      "autoShowOutput": true,
      "autoHideOutput": false,
      "scrollLockEnabled": false,
      "singular": true,
      "promptToSave": true,
      "saveOption": "referenced",
      "patterns": [],
      "successOutput": "{stdout}",
      "errorOutput": "{stdout}\n{stderr}",
      "fatalOutput": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "successMessage": "Executed : {fullCommand}",
      "errorMessage": "Executed : {fullCommand}\nReturned with code {exitStatus}\n{stderr}",
      "fatalMessage": "Failed to execute : {fullCommand}\n{stdout}\n{stderr}",
      "menus": [
        "Logtalk"
      ]
    }
  ]
}
