Repository URL to install this package:
|
Version:
1.14.0-17740 ▾
|
| .. |
| lib |
| License.txt |
| README.md |
| package.json |
| thirdpartynotices.txt |
This npm module implements the base messaging protocol spoken between a VSCode language server and a VSCode language client.
The npm module can also be used standalone to establish a JSON-RPC channel between a client and a server. Below an example how to setup a JSON-RPC connection. First the client side.
import * as cp from 'child_process'; import * as rpc from 'vscode-jsonrpc'; let childProcess = cp.spawn(...); // Use stdin and stdout for communication: let connection = rpc.createMessageConnection( new rpc.StreamMessageReader(childProcess.stdout), new rpc.StreamMessageWriter(childProcess.stdin)); let notification = new NotificationType<string, void>('testNotification'); connection.listen(); connection.sendNotification(notification, 'Hello World');
The server side looks very symmetrical:
import * as rpc from 'vscode-jsonrpc'; let connection = rpc.createMessageConnection( new rpc.StreamMessageReader(process.stdin), new rpc.StreamMessageWriter(process.stdout)); let notification = new NotificationType<string, void>('testNotification'); connection.onNotification(notification, (param: string) => { console.log(param); // This prints Hello World }); connection.listen();