diff --git a/.vscodeignore b/.vscodeignore index b8c2027f19f412073b5aaccf63ae395a1f6df84d..a3c2f4f9153898ec5ae482ec0437a79392429379 100644 --- a/.vscodeignore +++ b/.vscodeignore @@ -1,6 +1,6 @@ .vscode/** .vscode-test/** .gitignore -media/screencapture.gif +./media/screencapture.gif optionAdder.py vsc-extension-quickstart.md diff --git a/README.md b/README.md index cba05d45442694e4e1ac38d89bad09b87f19f104..36bb1da7c27008b1df7b07a46d51ed1c70ab622b 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ -# b-eventb-language-extension README +# b-language-extension README -Compiler support for b/eventb via ProB. You need a nightly build of ProB to fully use this extension. Visit https://www3.hhu.de/stups/prob/ to get the latest version. +Compiler support for B via ProB. You need a nightly build of ProB to fully use this extension. Visit https://www3.hhu.de/stups/prob/ to get the latest version. ## Features - + ## Requirements @@ -26,14 +26,12 @@ This extension contributes the following settings: Please note that user settings overwrite workspace settings. ## Bugs -- please open an issue at https://github.com/SeeBasTStick/b-eventb-language-extension +- please open an issue at https://github.com/SeeBasTStick/b-language-extension ## Future plans -- Linter Support -- Keyword support +- Linter Support (via Server, is still in development by Mircosoft) - Quickfix support aká Code Completion -- WD Support ## Release Notes diff --git a/client/package-lock.json b/client/package-lock.json index cab9061c437904bed1d4302b449b78215cd8aa88..123e30e9b1c0c75d1857b69af010e63d76e8de66 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -1,5 +1,5 @@ { - "name": "lsp-b-eventb-client", + "name": "lsp-b-client", "version": "0.0.1", "lockfileVersion": 1, "requires": true, diff --git a/client/package.json b/client/package.json index 0be8941459472b3171b11faec3ca4b3b4e5b1324..867e8599d15a5a038f91b387755a297226a30b2b 100644 --- a/client/package.json +++ b/client/package.json @@ -1,5 +1,5 @@ { - "name": "lsp-b-eventb-client", + "name": "lsp-b-client", "description": "client part of the language pack", "author": "Sebastian Stock", "license": "MIT", @@ -7,7 +7,7 @@ "publisher": "SeeBasTStick", "repository": { "type": "git", - "url": "https://github.com/SeeBasTStick/b-eventb-language-extension" + "url": "https://github.com/hhu-stups/b-language-extension" }, "engines": { "vscode": "^1.43.0" diff --git a/client/src/extension.ts b/client/src/extension.ts index 2f46f77ca67671a9beb49b6c7689a5149b9c7419..3ec716ae3700949f643466f2d3075ce8d9a1474e 100644 --- a/client/src/extension.ts +++ b/client/src/extension.ts @@ -38,8 +38,8 @@ export function activate(context: ExtensionContext) { // Options to control the language client let clientOptions: LanguageClientOptions = { - // Register the server for B, EventB documents - documentSelector: [{ scheme: 'file', language: 'classicalb' }, { scheme: 'file', language: 'eventb' }], + // Register the server for B files + documentSelector: [{ scheme: 'file', language: 'classicalb' }], synchronize: { // Notify the server about file changes to '.clientrc files contained in the workspace fileEvents: workspace.createFileSystemWatcher('**/.clientrc') diff --git a/optionAdder.py b/optionAdder.py index 22f6ef661c757dcb0a2a1ec62f8f2cabaa785e63..ccc8512463e5312c8ccaa6131e426801e8f8d69b 100644 --- a/optionAdder.py +++ b/optionAdder.py @@ -1,7 +1,7 @@ import json import sys -# Example: python3 optionAdder.py --add test '-p MEGATEST' 'A cool option' /home/sebastian/b-eventb-language-extension/ +# Example: python3 optionAdder.py --add test '-p MEGATEST' 'A cool option' /home/sebastian/b-language-extension/ def modify_server(varName: str, comand: str, filename): var_marker: str = '//PYTHONVAR' if_marker: str = '//PYTHONIF' diff --git a/package-lock.json b/package-lock.json index bc390d764013d187362aa0d61663aed70e6d10c1..f9975370f97ba224559b44830afc40416614c503 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,5 +1,5 @@ { - "name": "b-eventb-language-extension", + "name": "b-language-extension", "version": "0.3.0", "lockfileVersion": 1, "requires": true, diff --git a/server/package-lock.json b/server/package-lock.json index 43f4528b56f14eaec60efc87aa66808c2f87aa9c..cfc6a3d26860a34c126cf1ec4d273adfa629c906 100644 --- a/server/package-lock.json +++ b/server/package-lock.json @@ -1,5 +1,5 @@ { - "name": "lsp-b-eventb-server", + "name": "lsp-b-server", "version": "0.0.1", "lockfileVersion": 1, "requires": true, diff --git a/server/package.json b/server/package.json index b3f15d4eb88ba8f43c169efdb1bc6b3c656d02a9..eead6970463a509f3f1f1f6b786145d328ce506a 100644 --- a/server/package.json +++ b/server/package.json @@ -1,5 +1,5 @@ { - "name": "lsp-b-eventb-server", + "name": "lsp-b-server", "description": "Example implementation of a language server in node.", "version": "0.0.1", "author": "Sebastian Stock", @@ -9,7 +9,7 @@ }, "repository": { "type": "git", - "url": "https://github.com/SeeBasTStick/b-eventb-language-extension" + "url": "https://github.com/hhu-stups/b-language-extension" }, "dependencies": { "vscode-languageserver": "^6.1.1", diff --git a/server/src/server.ts b/server/src/server.ts index 3e10d11fed9538caca2f6b19cf22fca0b4fd3ca4..db045f2ad5570f1887981384bf1c5f989803bfd8 100644 --- a/server/src/server.ts +++ b/server/src/server.ts @@ -188,6 +188,7 @@ function getCommand(documentPath : string, errorPath : string, settings: Setting let wdCmd = "" let strict = "" let perf = "" + console.log(documentPath) //PYTHONVAR if(settings.wdChecks == true){ @@ -207,7 +208,7 @@ function getCommand(documentPath : string, errorPath : string, settings: Setting return settings.probHome + ' -p MAX_INITIALISATIONS 0 -version ' + perf + strict - + wdCmd + + + wdCmd /*PYTHONCMD*/ + documentPath +" -p " @@ -243,6 +244,7 @@ connection.onCompletion( connection.onCompletionResolve( (item : CompletionItem) => {return item}) + // for open, change and close text document events documents.listen(connection); diff --git a/server/src/wordCompletion.ts b/server/src/wordCompletion.ts index b7244fbb351aa45fdc18184ee6e9aaa778989f8f..9a13257a978cb999aefacaaa2326d413c4335c10 100644 --- a/server/src/wordCompletion.ts +++ b/server/src/wordCompletion.ts @@ -26,9 +26,6 @@ export function selectCompletion(textDocumentPosition : TextDocumentPositionPara return completionDefinition() } - if(textDocumentPosition.textDocument.uri.endsWith(".sys")){ - return completionEventB() - } return [] @@ -1391,66 +1388,3 @@ function completionCommonAbstract() : CompletionItem[] { ] } - - -function completionEventB() : CompletionItem[] { - - return [ - { - label: 'CONTEXT', - kind: CompletionItemKind.Text, - }, - { - label: 'EXTENDS', - kind: CompletionItemKind.Text, - }, - { - label: 'SETS', - kind: CompletionItemKind.Text, - }, - { - label: 'CONSTANTS', - kind: CompletionItemKind.Text, - }, - { - label: 'AXIOMS', - kind: CompletionItemKind.Text, - }, - { - label: 'END', - kind: CompletionItemKind.Text, - }, - { - label: 'MACHINE', - kind: CompletionItemKind.Text, - }, - { - label: 'REFINES', - kind: CompletionItemKind.Text, - }, - { - label: 'SEES', - kind: CompletionItemKind.Text, - }, - { - label: 'VARIABLES', - kind: CompletionItemKind.Text, - }, - { - label: 'where', - kind: CompletionItemKind.Text, - }, - { - label: 'any', - kind: CompletionItemKind.Text, - }, - { - label: 'with', - kind: CompletionItemKind.Text, - }, - { - label: 'then', - kind: CompletionItemKind.Text, - } - ] -} \ No newline at end of file