forked from microsoft/vscode-extension-samples
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
46 changed files
with
4,576 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
out | ||
node_modules | ||
client/server | ||
.vscode-test |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
// A launch configuration that compiles the extension and then opens it inside a new window | ||
{ | ||
"version": "0.2.0", | ||
"configurations": [ | ||
{ | ||
"type": "extensionHost", | ||
"request": "launch", | ||
"name": "Launch Client", | ||
"runtimeExecutable": "${execPath}", | ||
"args": ["--extensionDevelopmentPath=${workspaceRoot}"], | ||
"outFiles": ["${workspaceRoot}/client/out/**/*.js"], | ||
"preLaunchTask": { | ||
"type": "npm", | ||
"script": "watch" | ||
} | ||
}, | ||
{ | ||
"type": "node", | ||
"request": "attach", | ||
"name": "Attach to Server", | ||
"port": 6009, | ||
"restart": true, | ||
"outFiles": ["${workspaceRoot}/server/out/**/*.js"] | ||
}, | ||
{ | ||
"name": "Language Server E2E Test", | ||
"type": "extensionHost", | ||
"request": "launch", | ||
"runtimeExecutable": "${execPath}", | ||
"args": [ | ||
"--extensionDevelopmentPath=${workspaceRoot}", | ||
"--extensionTestsPath=${workspaceRoot}/client/out/test", | ||
"${workspaceRoot}/client/testFixture" | ||
], | ||
"outFiles": ["${workspaceRoot}/client/out/test/**/*.js"] | ||
} | ||
], | ||
"compounds": [ | ||
{ | ||
"name": "Client + Server", | ||
"configurations": ["Launch Client", "Attach to Server"] | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
{ | ||
"editor.insertSpaces": false, | ||
"tslint.enable": true, | ||
"typescript.tsc.autoDetect": "off", | ||
"typescript.preferences.quoteStyle": "single" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
{ | ||
"version": "2.0.0", | ||
"tasks": [ | ||
{ | ||
"type": "npm", | ||
"script": "compile", | ||
"group": "build", | ||
"presentation": { | ||
"panel": "dedicated", | ||
"reveal": "never" | ||
}, | ||
"problemMatcher": [ | ||
"$tsc" | ||
] | ||
}, | ||
{ | ||
"type": "npm", | ||
"script": "watch", | ||
"isBackground": true, | ||
"group": { | ||
"kind": "build", | ||
"isDefault": true | ||
}, | ||
"presentation": { | ||
"panel": "dedicated", | ||
"reveal": "never" | ||
}, | ||
"problemMatcher": [ | ||
"$tsc-watch" | ||
] | ||
} | ||
] | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
.vscode/** | ||
**/*.ts | ||
**/*.map | ||
.gitignore | ||
**/tsconfig.json | ||
**/tsconfig.base.json | ||
contributing.md | ||
.travis.yml | ||
client/node_modules/** | ||
!client/node_modules/vscode-jsonrpc/** | ||
!client/node_modules/vscode-languageclient/** | ||
!client/node_modules/vscode-languageserver-protocol/** | ||
!client/node_modules/vscode-languageserver-types/** | ||
!client/node_modules/semver/** |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# LSP Example for Embedded Language using Language Service | ||
|
||
Heavily documented sample code for https://code.visualstudio.com/api/language-extensions/embedded-language-server-guide | ||
|
||
## Functionality | ||
|
||
This Language Server works for plain text file. It has the following language features: | ||
- Completions | ||
- Diagnostics regenerated on each file change or configuration change | ||
|
||
It also includes an End-to-End test. | ||
|
||
## Structure | ||
|
||
``` | ||
. | ||
├── client // Language Client | ||
│ ├── src | ||
│ │ ├── test // End to End tests for Language Client / Server | ||
│ │ └── extension.ts // Language Client entry point | ||
├── package.json // The extension manifest. | ||
└── server // Language Server | ||
└── src | ||
└── server.ts // Language Server entry point | ||
``` | ||
|
||
## Running the Sample | ||
|
||
- Run `npm install` in this folder. This installs all necessary npm modules in both the client and server folder | ||
- Open VS Code on this folder. | ||
- Press Ctrl+Shift+B to compile the client and server. | ||
- Switch to the Debug viewlet. | ||
- Select `Launch Client` from the drop down. | ||
- Run the launch config. | ||
- If you want to debug the server as well use the launch configuration `Attach to Server` | ||
- In the [Extension Development Host] instance of VSCode, open a document in 'plain text' language mode. | ||
- Type `j` or `t` to see `Javascript` and `TypeScript` completion. | ||
- Enter text content such as `AAA aaa BBB`. The extension will emit diagnostics for all words in all-uppercase. |
Oops, something went wrong.