mirror of
https://github.com/microsoft/vscode-extension-samples.git
synced 2026-04-27 16:55:44 +08:00
Add language configuration sample
This commit is contained in:
@ -123,6 +123,13 @@ const lspSamples = [
|
||||
apis: [],
|
||||
contributions: []
|
||||
},
|
||||
{
|
||||
description: 'Language Configuration Sample',
|
||||
path: 'language-configuration-sample',
|
||||
guide: 'https://vscode-ext-docs.azurewebsites.net/api/language-extensions/language-configuration-guide',
|
||||
apis: [],
|
||||
contributions: ['languages']
|
||||
},
|
||||
]
|
||||
|
||||
module.exports = {
|
||||
|
||||
@ -40,6 +40,7 @@ You can expect from each sample:
|
||||
| [Task Provider Sample](task-provider-sample) | [/api/extension-guides/task-provider](https://vscode-ext-docs.azurewebsites.net/api/extension-guides/task-provider) | [tasks.registerTaskProvider](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#tasks.registerTaskProvider)<br>[Task](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#Task)<br>[ShellExecution](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#ShellExecution)<br>[contributes.taskDefinitions](https://vscode-ext-docs.azurewebsites.net/api/references/contribution-points#contributes.taskDefinitions) |
|
||||
| [Terminal Sample](terminal-sample) | N/A | [window.createTerminal](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.createTerminal)<br>[window.onDidChangeActiveTerminal](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.onDidChangeActiveTerminal)<br>[window.onDidCloseTerminal](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.onDidCloseTerminal)<br>[window.onDidOpenTerminal](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.onDidOpenTerminal)<br>[window.Terminal](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.Terminal)<br>[window.terminals](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.terminals) |
|
||||
| [Tree View Sample](tree-view-sample) | [/api/extension-guides/tree-view](https://vscode-ext-docs.azurewebsites.net/api/extension-guides/tree-view) | [window.createTreeView](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.createTreeView)<br>[window.registerTreeDataProvider](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.registerTreeDataProvider)<br>[TreeView](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#TreeView)<br>[TreeDataProvider](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#TreeDataProvider)<br>[contributes.views](https://vscode-ext-docs.azurewebsites.net/api/references/contribution-points#contributes.views)<br>[contributes.viewsContainers](https://vscode-ext-docs.azurewebsites.net/api/references/contribution-points#contributes.viewsContainers) |
|
||||
| [Vim Sample](vim-sample) | N/A | [commands](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#commands)<br>[StatusBarItem](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#StatusBarItem)<br>[window.createStatusBarItem](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.createStatusBarItem)<br>[TextEditorCursorStyle](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#TextEditorCursorStyle)<br>[window.activeTextEditor](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#window.activeTextEditor)<br>[Position](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#Position)<br>[Range](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#Range)<br>[Selection](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#Selection)<br>[TextEditor](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#TextEditor)<br>[TextEditorRevealType](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#TextEditorRevealType)<br>[TextDocument](https://vscode-ext-docs.azurewebsites.net/api/references/vscode-api#TextDocument) |
|
||||
<!-- SAMPLES_END -->
|
||||
|
||||
### Language Protocol Server Samples
|
||||
@ -50,6 +51,7 @@ You can expect from each sample:
|
||||
| [LSP Sample](lsp-sample) | [/api/language-extensions/smart-editing-lsp-guide](https://vscode-ext-docs.azurewebsites.net/api/language-extensions/smart-editing-lsp-guide) | |
|
||||
| [LSP Log Streaming Sample](lsp-log-streaming-sample) | N/A | |
|
||||
| [LSP Multi Root Server Sample](lsp-multi-server-sample) | https://github.com/Microsoft/vscode/wiki/Extension-Authoring:-Adopting-Multi-Root-Workspace-APIs#language-client--language-server | |
|
||||
| [Language Configuration Sample](language-configuration-sample) | https://vscode-ext-docs.azurewebsites.net/api/language-extensions/language-configuration-guide | [contributes.languages](https://vscode-ext-docs.azurewebsites.net/api/references/contribution-points#contributes.languages) |
|
||||
<!-- LSP_SAMPLES_END -->
|
||||
|
||||
## :warning: Legacy Samples :warning:
|
||||
|
||||
4
language-configuration-sample/.gitignore
vendored
Normal file
4
language-configuration-sample/.gitignore
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
out
|
||||
node_modules
|
||||
.vscode-test/
|
||||
*.vsix
|
||||
17
language-configuration-sample/.vscode/launch.json
vendored
Normal file
17
language-configuration-sample/.vscode/launch.json
vendored
Normal file
@ -0,0 +1,17 @@
|
||||
// A launch configuration that compiles the extension and then opens it inside a new window
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
{
|
||||
"version": "0.2.0",
|
||||
"configurations": [{
|
||||
"name": "Run Extension",
|
||||
"type": "extensionHost",
|
||||
"request": "launch",
|
||||
"runtimeExecutable": "${execPath}",
|
||||
"args": [
|
||||
"--extensionDevelopmentPath=${workspaceFolder}"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
3
language-configuration-sample/.vscode/settings.json
vendored
Normal file
3
language-configuration-sample/.vscode/settings.json
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
{
|
||||
"editor.insertSpaces": false
|
||||
}
|
||||
9
language-configuration-sample/.vscodeignore
Normal file
9
language-configuration-sample/.vscodeignore
Normal file
@ -0,0 +1,9 @@
|
||||
.vscode/**
|
||||
.vscode-test/**
|
||||
out/test/**
|
||||
out/**/*.map
|
||||
src/**
|
||||
.gitignore
|
||||
tsconfig.json
|
||||
vsc-extension-quickstart.md
|
||||
tslint.json
|
||||
13
language-configuration-sample/README.md
Normal file
13
language-configuration-sample/README.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Language Configuration Sample
|
||||
|
||||
This is the source code for the [Language Configuration Guide](https://vscode-ext-docs.azurewebsites.net/api/language-extensions/language-configuration-guide).
|
||||
|
||||
## VS Code API
|
||||
|
||||
### Contribution Points
|
||||
|
||||
- [`contributes.languages`](https://code.visualstudio.com/docs/extensionAPI/extension-points#_contributeslanguages)
|
||||
|
||||
## Running the Sample
|
||||
|
||||
- Run the `Run Extension` target in the Debug View
|
||||
BIN
language-configuration-sample/demo.gif
Normal file
BIN
language-configuration-sample/demo.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 846 KiB |
35
language-configuration-sample/language-configuration.json
Normal file
35
language-configuration-sample/language-configuration.json
Normal file
@ -0,0 +1,35 @@
|
||||
{
|
||||
"comments": {
|
||||
"lineComment": "//",
|
||||
"blockComment": [ "/*", "*/" ]
|
||||
},
|
||||
"brackets": [
|
||||
["{", "}"],
|
||||
["[", "]"],
|
||||
["(", ")"]
|
||||
],
|
||||
"autoClosingPairs": [
|
||||
{ "open": "{", "close": "}" },
|
||||
{ "open": "[", "close": "]" },
|
||||
{ "open": "(", "close": ")" },
|
||||
{ "open": "'", "close": "'", "notIn": ["string", "comment"] },
|
||||
{ "open": "\"", "close": "\"", "notIn": ["string"] },
|
||||
{ "open": "`", "close": "`", "notIn": ["string", "comment"] },
|
||||
{ "open": "/**", "close": " */", "notIn": ["string"] }
|
||||
],
|
||||
"autoCloseBefore": ";:.,=}])>` \n\t",
|
||||
"surroundingPairs": [
|
||||
["{", "}"],
|
||||
["[", "]"],
|
||||
["(", ")"],
|
||||
["'", "'"],
|
||||
["\"", "\""],
|
||||
["`", "`"]
|
||||
],
|
||||
"folding": {
|
||||
"markers": {
|
||||
"start": "^\\s*//\\s*#?region\\b",
|
||||
"end": "^\\s*//\\s*#?endregion\\b"
|
||||
}
|
||||
}
|
||||
}
|
||||
40
language-configuration-sample/package.json
Normal file
40
language-configuration-sample/package.json
Normal file
@ -0,0 +1,40 @@
|
||||
{
|
||||
"name": "base-sample",
|
||||
"displayName": "base-sample",
|
||||
"description": "Base sample for other samples at Microsoft/vscode-extension-samples",
|
||||
"version": "0.0.1",
|
||||
"publisher": "vscode-samples",
|
||||
"engines": {
|
||||
"vscode": "^1.28.0"
|
||||
},
|
||||
"categories": [
|
||||
"Other"
|
||||
],
|
||||
"contributes": {
|
||||
"languages": [
|
||||
{
|
||||
"id": "javascript",
|
||||
"extensions": [
|
||||
".js"
|
||||
],
|
||||
"aliases": [
|
||||
"js",
|
||||
"JavaScript"
|
||||
],
|
||||
"configuration": "./language-configuration.json"
|
||||
}
|
||||
]
|
||||
},
|
||||
"scripts": {
|
||||
"vscode:prepublish": "npm run compile",
|
||||
"compile": "tsc -p ./",
|
||||
"watch": "tsc -watch -p ./",
|
||||
"postinstall": "node ./node_modules/vscode/bin/install"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^8.10.25",
|
||||
"tslint": "^5.11.0",
|
||||
"typescript": "^2.6.1",
|
||||
"vscode": "^1.1.21"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user