blob: c353737a35a837435f63301d0d54f3e728766a83 [file] [log] [blame]
{
// 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
// NOTE: --disable-extensions
// Disable all installed extensions to increase performance of the debug instance
// and prevent potential conflicts with other installed extensions.
"version": "0.2.0",
"configurations": [
{
// Used for testing the extension with the installed LSP server.
"name": "Run Installed Extension",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": [
// "--user-data-dir=${workspaceFolder}/target/code",
"--disable-extensions",
"--extensionDevelopmentPath=${workspaceFolder}/editors/code"
],
"outFiles": [
"${workspaceFolder}/editors/code/out/**/*.js"
],
"preLaunchTask": "Build Extension",
"skipFiles": [
"<node_internals>/**/*.js"
]
},
{
// Used for testing the extension with a local build of the LSP server (in `target/debug`).
"name": "Run Extension (Debug Build)",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": [
"--disable-extensions",
"--extensionDevelopmentPath=${workspaceFolder}/editors/code"
],
"outFiles": [
"${workspaceFolder}/editors/code/out/**/*.js"
],
"preLaunchTask": "Build Server and Extension",
"skipFiles": [
"<node_internals>/**/*.js"
],
"env": {
"__RA_LSP_SERVER_DEBUG": "${workspaceFolder}/target/debug/rust-analyzer"
}
},
{
// Used for testing the extension with a local build of the LSP server (in `target/release`).
"name": "Run Extension (Release Build)",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": [
"--disable-extensions",
"--extensionDevelopmentPath=${workspaceFolder}/editors/code"
],
"outFiles": [
"${workspaceFolder}/editors/code/out/**/*.js"
],
"preLaunchTask": "Build Server (Release) and Extension",
"skipFiles": [
"<node_internals>/**/*.js"
],
"env": {
"__RA_LSP_SERVER_DEBUG": "${workspaceFolder}/target/release/rust-analyzer"
}
},
{
// Used for testing the extension with a local build of the LSP server (in `target/release`)
// with all other extensions loaded.
"name": "Run With Extensions",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": [
"--disable-extension", "rust-lang.rust-analyzer",
"--extensionDevelopmentPath=${workspaceFolder}/editors/code"
],
"outFiles": [
"${workspaceFolder}/editors/code/out/**/*.js"
],
"preLaunchTask": "Build Server (Release) and Extension",
"skipFiles": [
"<node_internals>/**/*.js"
],
"env": {
"__RA_LSP_SERVER_DEBUG": "${workspaceFolder}/target/release/rust-analyzer"
}
},
{
// Used to attach LLDB to a running LSP server.
// NOTE: Might require root permissions. For this run:
//
// `echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope`
//
// Don't forget to set `debug = 2` in `Cargo.toml` before building the server
"name": "Attach To Server",
"type": "lldb",
"request": "attach",
"program": "${workspaceFolder}/target/debug/rust-analyzer",
"pid": "${command:pickMyProcess}",
"sourceLanguages": [
"rust"
]
},
{
"name": "Run Unit Tests",
"type": "extensionHost",
"request": "launch",
"runtimeExecutable": "${execPath}",
"args": [
"--extensionDevelopmentPath=${workspaceFolder}/editors/code",
"--extensionTestsPath=${workspaceFolder}/editors/code/out/tests/unit" ],
"sourceMaps": true,
"outFiles": [ "${workspaceFolder}/editors/code/out/tests/unit/**/*.js" ],
"preLaunchTask": "Pretest"
},
{
"name": "Win Attach to Server",
"type": "cppvsdbg",
"processId":"${command:pickProcess}",
"request": "attach"
}
]
}