added simple README.md on vscode-extension
This commit is contained in:
parent
52211ea02c
commit
e5342e34f7
155
tools/vscode-extension/README.md
Normal file
155
tools/vscode-extension/README.md
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
# Prometeu VS Code Extension
|
||||||
|
|
||||||
|
VS Code bridge for Prometeu Studio.
|
||||||
|
|
||||||
|
This extension does **not** start the language server itself. It connects to the Prometeu Studio LSP server running locally.
|
||||||
|
|
||||||
|
```text
|
||||||
|
VS Code Extension
|
||||||
|
-> vscode-languageclient
|
||||||
|
-> TCP 127.0.0.1:7777
|
||||||
|
-> Prometeu Studio Java/LSP4J
|
||||||
|
```
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
* Node.js
|
||||||
|
* npm
|
||||||
|
* VS Code
|
||||||
|
* Prometeu Studio running with the embedded LSP server enabled
|
||||||
|
|
||||||
|
The Studio LSP server must be listening on:
|
||||||
|
|
||||||
|
```text
|
||||||
|
127.0.0.1:7777
|
||||||
|
```
|
||||||
|
|
||||||
|
## Install dependencies
|
||||||
|
|
||||||
|
From this directory:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm install
|
||||||
|
```
|
||||||
|
|
||||||
|
## Compile
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run compile
|
||||||
|
```
|
||||||
|
|
||||||
|
This generates:
|
||||||
|
|
||||||
|
```text
|
||||||
|
out/extension.js
|
||||||
|
```
|
||||||
|
|
||||||
|
## Run in development mode
|
||||||
|
|
||||||
|
Open this extension folder in VS Code:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
code .
|
||||||
|
```
|
||||||
|
|
||||||
|
Press:
|
||||||
|
|
||||||
|
```text
|
||||||
|
F5
|
||||||
|
```
|
||||||
|
|
||||||
|
This opens a second VS Code window called **Extension Development Host**.
|
||||||
|
|
||||||
|
In that second window, open a Prometeu project and create/open a file like:
|
||||||
|
|
||||||
|
```text
|
||||||
|
main.pbs
|
||||||
|
```
|
||||||
|
|
||||||
|
or:
|
||||||
|
|
||||||
|
```text
|
||||||
|
main.barrel
|
||||||
|
```
|
||||||
|
|
||||||
|
Expected output in:
|
||||||
|
|
||||||
|
```text
|
||||||
|
View -> Output -> Prometeu LSP
|
||||||
|
```
|
||||||
|
|
||||||
|
```text
|
||||||
|
Prometeu VS Code extension activated.
|
||||||
|
Connecting to Prometeu Studio LSP at 127.0.0.1:7777...
|
||||||
|
TCP connection established with Prometeu Studio.
|
||||||
|
Prometeu Studio LSP client started.
|
||||||
|
[Info] Hello from Prometeu Studio LSP
|
||||||
|
```
|
||||||
|
|
||||||
|
## Run commands manually
|
||||||
|
|
||||||
|
In the Extension Development Host window:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Cmd+Shift+P
|
||||||
|
Prometeu: Connect to Studio LSP
|
||||||
|
```
|
||||||
|
|
||||||
|
To restart the client:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Cmd+Shift+P
|
||||||
|
Prometeu: Restart Studio LSP
|
||||||
|
```
|
||||||
|
|
||||||
|
## Package as VSIX
|
||||||
|
|
||||||
|
```bash
|
||||||
|
npm run compile
|
||||||
|
vsce package --allow-missing-repository
|
||||||
|
```
|
||||||
|
|
||||||
|
This creates a file like:
|
||||||
|
|
||||||
|
```text
|
||||||
|
prometeu-vscode-extension-0.0.1.vsix
|
||||||
|
```
|
||||||
|
|
||||||
|
## Install locally
|
||||||
|
|
||||||
|
```bash
|
||||||
|
code --install-extension prometeu-vscode-extension-0.0.1.vsix --force
|
||||||
|
```
|
||||||
|
|
||||||
|
Then open a Prometeu project normally:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
code /path/to/prometeu-project
|
||||||
|
```
|
||||||
|
|
||||||
|
With Prometeu Studio running, opening `.pbs` or `.barrel` files should activate the extension and connect to the Studio LSP server.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
Default settings:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"prometeu.studio.host": "127.0.0.1",
|
||||||
|
"prometeu.studio.port": 7777
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
These can be changed in VS Code settings if needed.
|
||||||
|
|
||||||
|
## Current status
|
||||||
|
|
||||||
|
The extension currently provides only the minimal LSP client bridge:
|
||||||
|
|
||||||
|
* registers `.pbs`
|
||||||
|
* registers `.barrel`
|
||||||
|
* connects to Prometeu Studio over TCP
|
||||||
|
* starts a VS Code `LanguageClient`
|
||||||
|
* receives LSP messages from the Java/LSP4J server
|
||||||
|
|
||||||
|
The Studio remains the source of trut
|
||||||
Loading…
x
Reference in New Issue
Block a user