aboutsummaryrefslogtreecommitdiff
path: root/.vscode/launch.json
blob: 8ca27d878363af3de245aeb5b45648abf213a6d7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
{
  // 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 extendions loaded.
      "name": "Run With Extensions",
      "type": "extensionHost",
      "request": "launch",
      "runtimeExecutable": "${execPath}",
      "args": [
        "--disable-extension", "matklad.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"
    }
  ]
}