-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
{ | ||
// See https://go.microsoft.com/fwlink/?LinkId=827846 to learn about workspace recommendations. | ||
// Extension identifier format: ${publisher}.${name}. Example: vscode.csharp | ||
|
||
// List of extensions which should be recommended for users of this workspace. | ||
"recommendations": [ | ||
"dbaeumer.vscode-eslint" | ||
] | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
// 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" | ||
} | ||
}, | ||
{ | ||
"name": "Language Server E2E Test", | ||
"type": "extensionHost", | ||
"request": "launch", | ||
"runtimeExecutable": "${execPath}", | ||
"args": [ | ||
"--extensionDevelopmentPath=${workspaceRoot}", | ||
"--extensionTestsPath=${workspaceRoot}/client/out/test/index", | ||
"${workspaceRoot}/client/testFixture" | ||
], | ||
"outFiles": ["${workspaceRoot}/client/out/test/**/*.js"] | ||
} | ||
] | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
{ | ||
"editor.insertSpaces": false, | ||
"typescript.tsc.autoDetect": "off", | ||
"typescript.preferences.quoteStyle": "single", | ||
"editor.codeActionsOnSave": { | ||
"source.fixAll.eslint": true | ||
} | ||
} |
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" | ||
] | ||
} | ||
] | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# LSP Example | ||
|
||
Heavily documented sample code for https://code.visualstudio.com/api/language-extensions/language-server-extension-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 start compiling the client and server in [watch mode](https://code.visualstudio.com/docs/editor/tasks#:~:text=The%20first%20entry%20executes,the%20HelloWorld.js%20file.). | ||
- Switch to the Run and Debug View in the Sidebar (Ctrl+Shift+D). | ||
- Select `Launch Client` from the drop down (if it is not already). | ||
- Press ▷ to run the launch config (F5). | ||
- In the [Extension Development Host](https://code.visualstudio.com/api/get-started/your-first-extension#:~:text=Then%2C%20inside%20the%20editor%2C%20press%20F5.%20This%20will%20compile%20and%20run%20the%20extension%20in%20a%20new%20Extension%20Development%20Host%20window.) 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. |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.