blob: 656ea1bdb3ae080b63109b10c47169c76eb0c966 (
plain) (
blame)
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
|
# Visual Studio Code Extensions
## Conventions for adding new extensions
* Extensions are named in the **lowercase** version of the extension's unique identifier. Which is found on the marketplace extension page, and is the name under which the extension is installed by VSCode under `~/.vscode`.
Extension location should be: ${lib.strings.toLower mktplcRef.publisher}.${lib.string.toLower mktplcRef.name}
* Move extension to a discrete directory whenever the extension needs extra parameters/packages (at top of the file) or other files (such as patches, update script, components). Global index file parameters/packages should be utilities shared by many extensions. Extension specific parameters/packages should not be in the global index page.
* Currently `nixfmt-rfc-style` formatter is being used to format the VSCode extensions.
* Respect `alphabetical order` whenever adding extensions. On disorder, please, kindly open a PR re-establishing the order.
* Avoid [unnecessary](https://nix.dev/guides/best-practices.html#with-scopes) use of `with`, particularly `nested with`.
* Use `hash` instead of `sha256`.
* On `meta` field:
- add a `changelog`.
- `description` should mention it is a Visual Studio Code extension.
- `downloadPage` is the VSCode marketplace URL.
- `homepage` is the source-code URL.
- verify `license` in upstream.
* On commit messages:
- Naming convention for:
- Adding a new extension:
> vscode-extensions.publisher.extension-name: init 1.2.3
>
> Release: https://github.com/owner/project/releases/tag/1.2.3
- Updating an extension:
> vscode-extensions.publisher.extension-name: 1.2.3 -> 2.3.4
>
> Release: https://github.com/owner/project/releases/tag/2.3.4
- Multiple extensions can be added in a single PR, but each extension requires it's own commit.
|