680 строки
27 KiB
JSON
680 строки
27 KiB
JSON
{
|
|
"name": "csharp",
|
|
"publisher": "ms-vscode",
|
|
"version": "1.4.0-beta8",
|
|
"description": "C# for Visual Studio Code (powered by OmniSharp).",
|
|
"displayName": "C#",
|
|
"author": "Microsoft Corporation",
|
|
"license": "SEE LICENSE IN RuntimeLicenses/license.txt",
|
|
"icon": "images/csharpIcon.png",
|
|
"preview": "true",
|
|
"bugs": {
|
|
"url": "https://github.com/OmniSharp/omnisharp-vscode/issues"
|
|
},
|
|
"categories": [
|
|
"Debuggers",
|
|
"Languages",
|
|
"Linters",
|
|
"Snippets"
|
|
],
|
|
"main": "./out/main",
|
|
"scripts": {
|
|
"postinstall": "node ./node_modules/vscode/bin/install && tsc"
|
|
},
|
|
"dependencies": {
|
|
"decompress": "^4.0.0",
|
|
"del": "^2.0.2",
|
|
"fs-extra-promise": "^0.3.1",
|
|
"http-proxy-agent": "^1.0.0",
|
|
"https-proxy-agent": "^1.0.0",
|
|
"open": "*",
|
|
"semver": "*",
|
|
"tmp": "0.0.28",
|
|
"vscode-debugprotocol": "^1.6.1",
|
|
"vscode-extension-telemetry": "0.0.4"
|
|
},
|
|
"devDependencies": {
|
|
"gulp": "^3.9.1",
|
|
"gulp-tslint": "^4.3.0",
|
|
"tslint": "^3.3.0",
|
|
"tslint-microsoft-contrib": "^2.0.0",
|
|
"typescript": "^1.7.3",
|
|
"vscode": "^0.11.13",
|
|
"vsce": "^1.7.0"
|
|
},
|
|
"engines": {
|
|
"vscode": "^1.3.0"
|
|
},
|
|
"activationEvents": [
|
|
"onLanguage:csharp",
|
|
"onCommand:o.restart",
|
|
"onCommand:o.pickProjectAndStart",
|
|
"onCommand:o.showOutput",
|
|
"onCommand:dotnet.restore",
|
|
"onCommand:csharp.downloadDebugger",
|
|
"onCommand:csharp.listProcess",
|
|
"workspaceContains:project.json"
|
|
],
|
|
"contributes": {
|
|
"languages": [
|
|
{
|
|
"id": "csharp",
|
|
"extensions": [
|
|
".cs",
|
|
".csx"
|
|
],
|
|
"aliases": [
|
|
"C#",
|
|
"csharp"
|
|
],
|
|
"configuration": "./csharp.configuration.json"
|
|
}
|
|
],
|
|
"configuration": {
|
|
"title": "C# configuration",
|
|
"properties": {
|
|
"csharp.suppressDotnetInstallWarning": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Suppress the warning that the .NET CLI is not on the path."
|
|
},
|
|
"omnisharp.path": {
|
|
"type": [
|
|
"string",
|
|
"null"
|
|
],
|
|
"default": null,
|
|
"description": "Specifies the full path to the OmniSharp server."
|
|
},
|
|
"omnisharp.useMono": {
|
|
"type": "boolean",
|
|
"default": false,
|
|
"description": "Launch OmniSharp with Mono."
|
|
},
|
|
"omnisharp.loggingLevel": {
|
|
"type": "string",
|
|
"default": "default",
|
|
"enum": [
|
|
"default",
|
|
"verbose"
|
|
],
|
|
"description": "Specifies the level of logging output from the OmniSharp server."
|
|
},
|
|
"omnisharp.autoStart": {
|
|
"type": "boolean",
|
|
"default": true,
|
|
"description": "Specifies whether the OmniSharp server will be automatically started or not. If false, OmniSharp can be started with the 'Restart OmniSharp' command"
|
|
}
|
|
}
|
|
},
|
|
"grammars": [
|
|
{
|
|
"language": "csharp",
|
|
"scopeName": "source.cs",
|
|
"path": "./syntaxes/csharp.json"
|
|
}
|
|
],
|
|
"jsonValidation": [
|
|
{
|
|
"fileMatch": "project.json",
|
|
"url": "http://json.schemastore.org/project"
|
|
}
|
|
],
|
|
"commands": [
|
|
{
|
|
"command": "o.restart",
|
|
"title": "Restart OmniSharp",
|
|
"category": "OmniSharp"
|
|
},
|
|
{
|
|
"command": "o.pickProjectAndStart",
|
|
"title": "Select Project",
|
|
"category": "OmniSharp"
|
|
},
|
|
{
|
|
"command": "dotnet.restore",
|
|
"title": "Restore Packages",
|
|
"category": "dotnet"
|
|
},
|
|
{
|
|
"command": "csharp.downloadDebugger",
|
|
"title": "Download .NET Core Debugger",
|
|
"category": "Debug"
|
|
},
|
|
{
|
|
"command": "csharp.listProcess",
|
|
"title": "List process for attach",
|
|
"category": "CSharp"
|
|
}
|
|
],
|
|
"keybindings": [
|
|
{
|
|
"command": "o.showOutput",
|
|
"key": "Ctrl+L L",
|
|
"mac": "Cmd+L L"
|
|
},
|
|
{
|
|
"key": "shift+0",
|
|
"command": "^acceptSelectedSuggestion",
|
|
"when": "editorTextFocus && suggestWidgetVisible && editorLangId == 'csharp' && suggestionSupportsAcceptOnKey"
|
|
},
|
|
{
|
|
"key": "shift+9",
|
|
"command": "^acceptSelectedSuggestion",
|
|
"when": "editorTextFocus && suggestWidgetVisible && editorLangId == 'csharp' && suggestionSupportsAcceptOnKey"
|
|
},
|
|
{
|
|
"key": ".",
|
|
"command": "^acceptSelectedSuggestion",
|
|
"when": "editorTextFocus && suggestWidgetVisible && editorLangId == 'csharp' && suggestionSupportsAcceptOnKey"
|
|
}
|
|
],
|
|
"snippets": [
|
|
{
|
|
"language": "csharp",
|
|
"path": "./snippets/csharp.json"
|
|
}
|
|
],
|
|
"debuggers": [
|
|
{
|
|
"type": "coreclr",
|
|
"label": ".NET Core",
|
|
"enableBreakpointsFor": {
|
|
"languageIds": [
|
|
"csharp",
|
|
"razor"
|
|
]
|
|
},
|
|
"runtime": "node",
|
|
"runtimeArgs": [],
|
|
"variables": {
|
|
"pickProcess": "csharp.listProcess"
|
|
},
|
|
"program": "./out/coreclr-debug/proxy.js",
|
|
"aiKey": "AIF-d9b70cd4-b9f9-4d70-929b-a071c400b217",
|
|
"configurationAttributes": {
|
|
"launch": {
|
|
"required": [
|
|
"program",
|
|
"cwd"
|
|
],
|
|
"properties": {
|
|
"program": {
|
|
"type": "string",
|
|
"description": "Path to the application dll or .NET Core host executable to launch. Example: '${workspaceRoot}/bin/Debug/<target-framework>/<project-name.dll>' where:\n<target-framework>: (example: 'netstandard1.5') This is the name of the framework that the app is being built for. It is set in the project.json file.\n<project-name>: (example: 'MyApp') The name of the project being debugged.",
|
|
"default": "${workspaceRoot}/bin/Debug/<target-framework>/<project-name.dll>"
|
|
},
|
|
"cwd": {
|
|
"type": "string",
|
|
"description": "Path to the working directory of the program being debugged. Default is the current workspace.",
|
|
"default": "${workspaceRoot}"
|
|
},
|
|
"args": {
|
|
"type": "array",
|
|
"description": "Command line arguments passed to the program.",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"stopAtEntry": {
|
|
"type": "boolean",
|
|
"description": "If true, the debugger should stop at the entry point of the target.",
|
|
"default": false
|
|
},
|
|
"launchBrowser": {
|
|
"type": "object",
|
|
"description": "Describes options to launch a web browser as part of launch",
|
|
"default": {
|
|
"enabled": true,
|
|
"args": "${auto-detect-url}",
|
|
"windows": {
|
|
"command": "cmd.exe",
|
|
"args": "/C start ${auto-detect-url}"
|
|
},
|
|
"osx": {
|
|
"command": "open"
|
|
},
|
|
"linux": {
|
|
"command": "xdg-open"
|
|
}
|
|
},
|
|
"properties": {
|
|
"enabled": {
|
|
"type": "boolean",
|
|
"description": "Whether web browser launch is enabled",
|
|
"default": true
|
|
},
|
|
"args": {
|
|
"type": "string",
|
|
"description": "The arguments to pass to the command to open the browser. Use ${auto-detect-url} to automatically use the address the server is listening to",
|
|
"default": "${auto-detect-url}"
|
|
},
|
|
"osx": {
|
|
"type": "object",
|
|
"description": "OSX-specific web launch configuration options",
|
|
"default": {
|
|
"command": "open"
|
|
},
|
|
"properties": {
|
|
"command": {
|
|
"type": "string",
|
|
"description": "The command to execute for launching the web browser",
|
|
"default": "open"
|
|
},
|
|
"args": {
|
|
"type": "string",
|
|
"description": "The arguments to pass to the command to open the browser. Use ${auto-detect-url} to automatically use the address the server is listening to",
|
|
"default": "${auto-detect-url}"
|
|
}
|
|
}
|
|
},
|
|
"linux": {
|
|
"type": "object",
|
|
"description": "Linux-specific web launch configuration options",
|
|
"default": {
|
|
"command": "xdg-open"
|
|
},
|
|
"properties": {
|
|
"command": {
|
|
"type": "string",
|
|
"description": "The command to execute for launching the web browser",
|
|
"default": "xdg-open"
|
|
},
|
|
"args": {
|
|
"type": "string",
|
|
"description": "The arguments to pass to the command to open the browser. Use ${auto-detect-url} to automatically use the address the server is listening to",
|
|
"default": "${auto-detect-url}"
|
|
}
|
|
}
|
|
},
|
|
"windows": {
|
|
"type": "object",
|
|
"description": "Windows-specific web launch configuration options",
|
|
"default": {
|
|
"command": "cmd.exe",
|
|
"args": "/C start ${auto-detect-url}"
|
|
},
|
|
"properties": {
|
|
"command": {
|
|
"type": "string",
|
|
"description": "The command to execute for launching the web browser",
|
|
"default": "cmd.exe"
|
|
},
|
|
"args": {
|
|
"type": "string",
|
|
"description": "The arguments to pass to the command to open the browser. Use ${auto-detect-url} to automatically use the address the server is listening to",
|
|
"default": "/C start ${auto-detect-url}"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"env": {
|
|
"type": "object",
|
|
"additionalProperties": { "type": "string" },
|
|
"description": "Environment variables passed to the program.",
|
|
"default": { }
|
|
},
|
|
"externalConsole": {
|
|
"type": "boolean",
|
|
"description": "If 'true' the debugger should launch the target application into a new external console.",
|
|
"default": false
|
|
},
|
|
"sourceFileMap": {
|
|
"type": "object",
|
|
"description": "Optional source file mappings passed to the debug engine. Example: '{ \"C:\\foo\":\"/home/user/foo\" }'",
|
|
"default": {
|
|
"<source-path>": "<target-path>"
|
|
}
|
|
},
|
|
"justMyCode": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to only show user code.",
|
|
"default": true
|
|
},
|
|
"symbolPath": {
|
|
"type": "array",
|
|
"description": "Array of directories to use to search for .pdb files. These directories will be searched in addition to the default locations -- next to the module and the path where the pdb was originally dropped to. Example: '[ \"/Volumes/symbols\" ]",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"requireExactSource": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to require current source code to match the pdb.",
|
|
"default": true
|
|
},
|
|
"enableStepFiltering": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to enable stepping over Properties and Operators.",
|
|
"default": true
|
|
},
|
|
"logging": {
|
|
"type": "object",
|
|
"required": [],
|
|
"default": {},
|
|
"description": "Optional flags to determine what types of messages should be logged to the output window.",
|
|
"properties": {
|
|
"exceptions": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether exception messages should be logged to the output window.",
|
|
"default": true
|
|
},
|
|
"moduleLoad": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether module load events should be logged to the output window.",
|
|
"default": true
|
|
},
|
|
"programOutput": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether program output should be logged to the output window when not using an external console.",
|
|
"default": true
|
|
},
|
|
"engineLogging": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether diagnostic engine logs should be logged to the output window.",
|
|
"default": false
|
|
},
|
|
"trace": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether diagnostic adapter command tracing should be logged to the output window.",
|
|
"default": false
|
|
},
|
|
"traceResponse": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether diagnostic adapter command and response tracing should be logged to the output window.",
|
|
"default": false
|
|
}
|
|
}
|
|
},
|
|
"pipeTransport": {
|
|
"type": "object",
|
|
"description": "When present, this tells the debugger to connect to a remote computer using another executable as a pipe that will relay standard input/output between VS Code and the .NET Core debugger backend executable (clrdbg).",
|
|
"default": {
|
|
"pipeCwd": "${workspaceRoot}",
|
|
"pipeProgram": "enter the fully qualified path for the pipe program name, for example 'c:\\tools\\plink.exe'",
|
|
"pipeArgs": []
|
|
},
|
|
"properties" : {
|
|
"pipeCwd": {
|
|
"type": "string",
|
|
"description": "The fully qualified path to the working directory for the pipe program.",
|
|
"default": "${workspaceRoot}"
|
|
},
|
|
"pipeProgram": {
|
|
"type": "string",
|
|
"description": "The fully qualified pipe command to execute.",
|
|
"default": "enter the fully qualified path for the pipe program name, for example 'c:\\tools\\plink.exe'"
|
|
},
|
|
"pipeArgs": {
|
|
"type": "array",
|
|
"description": "Command line arguments passed to the pipe program.",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"pipeEnv": {
|
|
"type": "object",
|
|
"additionalProperties": { "type": "string" },
|
|
"description": "Environment variables passed to the pipe program.",
|
|
"default": { }
|
|
},
|
|
"windows": {
|
|
"type": "object",
|
|
"description": "Windows-specific pipe launch configuration options",
|
|
"default": {
|
|
"pipeCwd": "${workspaceRoot}",
|
|
"pipeProgram": "enter the fully qualified path for the pipe program name, for example 'c:\\tools\\plink.exe'",
|
|
"pipeArgs": []
|
|
},
|
|
"properties": {
|
|
"pipeCwd": {
|
|
"type": "string",
|
|
"description": "The fully qualified path to the working directory for the pipe program.",
|
|
"default": "${workspaceRoot}"
|
|
},
|
|
"pipeProgram": {
|
|
"type": "string",
|
|
"description": "The fully qualified pipe command to execute.",
|
|
"default": "enter the fully qualified path for the pipe program name, for example 'c:\\tools\\plink.exe'"
|
|
},
|
|
"pipeArgs": {
|
|
"type": "array",
|
|
"description": "Command line arguments passed to the pipe program.",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"pipeEnv": {
|
|
"type": "object",
|
|
"additionalProperties": { "type": "string" },
|
|
"description": "Environment variables passed to the pipe program.",
|
|
"default": { }
|
|
}
|
|
}
|
|
},
|
|
"osx": {
|
|
"type": "object",
|
|
"description": "OSX-specific pipe launch configuration options",
|
|
"default": {
|
|
"pipeCwd": "${workspaceRoot}",
|
|
"pipeProgram": "enter the fully qualified path for the pipe program name, for example '/usr/bin/ssh'",
|
|
"pipeArgs": []
|
|
},
|
|
"properties": {
|
|
"pipeCwd": {
|
|
"type": "string",
|
|
"description": "The fully qualified path to the working directory for the pipe program.",
|
|
"default": "${workspaceRoot}"
|
|
},
|
|
"pipeProgram": {
|
|
"type": "string",
|
|
"description": "The fully qualified pipe command to execute.",
|
|
"default": "enter the fully qualified path for the pipe program name, for example '/usr/bin/ssh'"
|
|
},
|
|
"pipeArgs": {
|
|
"type": "array",
|
|
"description": "Command line arguments passed to the pipe program.",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"pipeEnv": {
|
|
"type": "object",
|
|
"additionalProperties": { "type": "string" },
|
|
"description": "Environment variables passed to the pipe program.",
|
|
"default": { }
|
|
}
|
|
}
|
|
},
|
|
"linux": {
|
|
"type": "object",
|
|
"description": "Linux-specific pipe launch configuration options",
|
|
"default": {
|
|
"pipeCwd": "${workspaceRoot}",
|
|
"pipeProgram": "enter the fully qualified path for the pipe program name, for example '/usr/bin/ssh'",
|
|
"pipeArgs": []
|
|
},
|
|
"properties": {
|
|
"pipeCwd": {
|
|
"type": "string",
|
|
"description": "The fully qualified path to the working directory for the pipe program.",
|
|
"default": "${workspaceRoot}"
|
|
},
|
|
"pipeProgram": {
|
|
"type": "string",
|
|
"description": "The fully qualified pipe command to execute.",
|
|
"default": "enter the fully qualified path for the pipe program name, for example '/usr/bin/ssh'"
|
|
},
|
|
"pipeArgs": {
|
|
"type": "array",
|
|
"description": "Command line arguments passed to the pipe program.",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"pipeEnv": {
|
|
"type": "object",
|
|
"additionalProperties": { "type": "string" },
|
|
"description": "Environment variables passed to the pipe program.",
|
|
"default": { }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"attach": {
|
|
"required": [],
|
|
"properties": {
|
|
"processName": {
|
|
"type": "string",
|
|
"description": "",
|
|
"default": "The process name to attach to. If this is used, 'processId' should not be used."
|
|
},
|
|
"processId": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string",
|
|
"description": "The process id to attach to. Use \"${command.pickProcesss}\" to get a list of running processes to attach to. If 'processId' used, 'processName' should not be used.",
|
|
"default": "${command.pickProcess}"
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"description": "The process id to attach to. Use \"${command.pickProcesss}\" to get a list of running processes to attach to. If 'processId' used, 'processName' should not be used.",
|
|
"default": 0
|
|
}
|
|
]
|
|
},
|
|
"sourceFileMap": {
|
|
"type": "object",
|
|
"description": "Optional source file mappings passed to the debug engine. Example: '{ \"C:\\foo\":\"/home/user/foo\" }'",
|
|
"default": {
|
|
"<source-path>": "<target-path>"
|
|
}
|
|
},
|
|
"justMyCode": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to only show user code.",
|
|
"default": true
|
|
},
|
|
"symbolPath": {
|
|
"type": "array",
|
|
"description": "Array of directories to use to search for .pdb files. These directories will be searched in addition to the default locations -- next to the module and the path where the pdb was originally dropped to. Example: '[ \"~/symbols\" ]",
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"default": []
|
|
},
|
|
"requireExactSource": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to require current source code to match the pdb.",
|
|
"default": true
|
|
},
|
|
"enableStepFiltering": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to enable stepping over Properties and Operators.",
|
|
"default": true
|
|
},
|
|
"logging": {
|
|
"type": "object",
|
|
"required": [],
|
|
"default": {},
|
|
"description": "Optional flags to determine what types of messages should be logged to the output window.",
|
|
"properties": {
|
|
"exceptions": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether exception messages should be logged to the output window.",
|
|
"default": true
|
|
},
|
|
"moduleLoad": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether module load events should be logged to the output window.",
|
|
"default": true
|
|
},
|
|
"programOutput": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether program output should be logged to the output window when not using an external console.",
|
|
"default": true
|
|
},
|
|
"engineLogging": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether diagnostic engine logs should be logged to the output window.",
|
|
"default": false
|
|
},
|
|
"trace": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether diagnostic adapter command tracing should be logged to the output window.",
|
|
"default": false
|
|
},
|
|
"traceResponse": {
|
|
"type": "boolean",
|
|
"description": "Optional flag to determine whether diagnostic adapter command and response tracing should be logged to the output window.",
|
|
"default": false
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"initialConfigurations": [
|
|
{
|
|
"name": ".NET Core Launch (console)",
|
|
"type": "coreclr",
|
|
"request": "launch",
|
|
"preLaunchTask": "build",
|
|
"program": "${workspaceRoot}/bin/Debug/<target-framework>/<project-name.dll>",
|
|
"args": [],
|
|
"cwd": "${workspaceRoot}",
|
|
"stopAtEntry": false,
|
|
"externalConsole": false
|
|
},
|
|
{
|
|
"name": ".NET Core Launch (web)",
|
|
"type": "coreclr",
|
|
"request": "launch",
|
|
"preLaunchTask": "build",
|
|
"program": "${workspaceRoot}/bin/Debug/<target-framework>/<project-name.dll>",
|
|
"args": [],
|
|
"cwd": "${workspaceRoot}",
|
|
"stopAtEntry": false,
|
|
"launchBrowser": {
|
|
"enabled": true,
|
|
"args": "${auto-detect-url}",
|
|
"windows": {
|
|
"command": "cmd.exe",
|
|
"args": "/C start ${auto-detect-url}"
|
|
},
|
|
"osx": {
|
|
"command": "open"
|
|
},
|
|
"linux": {
|
|
"command": "xdg-open"
|
|
}
|
|
},
|
|
"env": {
|
|
"ASPNETCORE_ENVIRONMENT": "Development"
|
|
},
|
|
"sourceFileMap": {
|
|
"/Views": "${workspaceRoot}/Views"
|
|
}
|
|
},
|
|
{
|
|
"name": ".NET Core Attach",
|
|
"type": "coreclr",
|
|
"request": "attach",
|
|
"processId": "${command.pickProcess}"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|