| { |
| // 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", |
| "--log rust-lang.rust-analyzer:debug" |
| ], |
| "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", |
| "--log rust-lang.rust-analyzer:debug" |
| ], |
| "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", |
| "--log rust-lang.rust-analyzer:debug" |
| ], |
| "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", |
| "--log rust-lang.rust-analyzer:debug" |
| ], |
| "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" |
| } |
| ] |
| } |