diff --git a/wacc-syntax/extension.js b/wacc-syntax/extension.js index 35638c7..5641e55 100644 --- a/wacc-syntax/extension.js +++ b/wacc-syntax/extension.js @@ -15,8 +15,7 @@ function activate(context) { if (document.languageId !== 'wacc') return; let diagnostics = []; - let errors = generateErrors(document.getText()); - + let errors = generateErrors(document.getText(), document.fileName); errors.forEach(error => { console.log(error); let range = new vscode.Range(error.line - 1 , error.column - 1, error.line - 1, error.column + error.size); @@ -32,22 +31,21 @@ function deactivate() { console.log('IntelliWACC is deactivating...'); } -function generateErrors(code) { +function generateErrors(code, filePath) { try { console.log("generating errors") const fs = require('fs'); - const tmpFilePath = '/tmp/temp_wacc_file.wacc'; + const tmpFilePath = parse(filePath).dir + '/.temp_wacc_file.wacc'; fs.writeFileSync(tmpFilePath, code); let output; try { - // currently only works if the wacc compiler exe is in the parent directory - const waccExePath = `${__dirname}/wacc_exe`; + const waccExePath = `${__dirname}/wacc-compiler`; output = execSync(`${waccExePath} ${tmpFilePath}`, { encoding: 'utf8', stdio: 'pipe' }); } catch (err) { - console.log("this aint working buddy") - console.log(err) + console.log("Error running compiler"); output = err.stdout; + console.log(output); } let errors = []; errorRegex = /\(line ([\d]+), column ([\d]+)\):\n([^>]+)([^\^]+)([\^]+)\n([^\n]+)([^\(]*)/g diff --git a/wacc-syntax/package.json b/wacc-syntax/package.json index 2346bf1..ecd8e57 100644 --- a/wacc-syntax/package.json +++ b/wacc-syntax/package.json @@ -20,7 +20,16 @@ "language": "wacc", "scopeName": "source.wacc", "path": "./syntaxes/wacc.tmLanguage.json" - }] + }], + "properties": { + "files.exclude": { + "type": "object", + "default": { + "**/.temp_wacc_file.*": true + }, + "description": "Configure patterns for excluding files and folders." + } + } }, "scripts": { "vscode:prepublish": "npm run compile", diff --git a/wacc-syntax/wacc_exe b/wacc-syntax/wacc_exe deleted file mode 100755 index 215fbde..0000000 Binary files a/wacc-syntax/wacc_exe and /dev/null differ