• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Welcome to your VS Code Extension
2
3## What's in the folder
4
5* This folder contains all of the files necessary for your extension.
6* `package.json` - this is the manifest file in which you declare your extension and command.
7  * The sample plugin registers a command and defines its title and command name. With this information VS Code can show the command in the command palette. It doesn’t yet need to load the plugin.
8* `extension.js` - this is the main file where you will provide the implementation of your command.
9  * The file exports one function, `activate`, which is called the very first time your extension is activated (in this case by executing the command). Inside the `activate` function we call `registerCommand`.
10  * We pass the function containing the implementation of the command as the second parameter to `registerCommand`.
11
12## Get up and running straight away
13
14* Press `F5` to open a new window with your extension loaded.
15* Run your command from the command palette by pressing (`Ctrl+Shift+P` or `Cmd+Shift+P` on Mac) and typing `Hello World`.
16* Set breakpoints in your code inside `extension.js` to debug your extension.
17* Find output from your extension in the debug console.
18
19## Make changes
20
21* You can relaunch the extension from the debug toolbar after changing code in `extension.js`.
22* You can also reload (`Ctrl+R` or `Cmd+R` on Mac) the VS Code window with your extension to load your changes.
23
24## Explore the API
25
26* You can open the full set of our API when you open the file `node_modules/@types/vscode/index.d.ts`.
27
28## Run tests
29
30* Open the debug viewlet (`Ctrl+Shift+D` or `Cmd+Shift+D` on Mac) and from the launch configuration dropdown pick `Extension Tests`.
31* Press `F5` to run the tests in a new window with your extension loaded.
32* See the output of the test result in the debug console.
33* Make changes to `src/test/suite/extension.test.js` or create new test files inside the `test/suite` folder.
34  * The provided test runner will only consider files matching the name pattern `**.test.ts`.
35  * You can create folders inside the `test` folder to structure your tests any way you want.
36## Go further
37
38 * [Publish your extension](https://code.visualstudio.com/api/working-with-extensions/publishing-extension) on the VSCode extension marketplace.
39 * Automate builds by setting up [Continuous Integration](https://code.visualstudio.com/api/working-with-extensions/continuous-integration).
40