forked from shader-slang/slang-vscode-extension
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpackage.json
191 lines (191 loc) · 8.25 KB
/
package.json
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
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
{
"name": "slang-language-extension",
"displayName": "Slang",
"description": "Extension for the Slang Shading Language",
"publisher": "shader-slang",
"version": "1.9.3",
"icon": "./images/icon.png",
"engines": {
"vscode": "^1.67.0"
},
"keywords": [
"shader",
"shading",
"hlsl",
"slang",
"highlight",
"completion",
"hinting",
"formatting"
],
"categories": [
"Programming Languages",
"Formatters"
],
"activationEvents": [
"onLanguage:slang"
],
"repository": {
"type": "git",
"url": "https://github.com/shader-slang/slang-vscode-extension"
},
"main": "./client/out/main",
"contributes": {
"languages": [
{
"id": "slang",
"aliases": [
"Slang",
"slang",
"hlsl"
],
"extensions": [
".slang",
".slangh",
".hlsl",
".usf",
".ush",
".vfx",
".fxc"
],
"configuration": "./language-configuration.json"
}
],
"configurationDefaults": {
"[slang]": {
"editor.wordBasedSuggestions": "off",
"editor.formatOnType": true,
"editor.formatOnPaste": true,
"editor.inlayHints.enabled": "offUnlessPressed"
}
},
"grammars": [
{
"language": "slang",
"scopeName": "source.slang",
"path": "./syntaxes/slang.tmLanguage.json"
}
],
"configuration": {
"type": "object",
"title": "Slang/HLSL",
"properties": {
"slang.predefinedMacros": {
"scope": "window",
"type": "array",
"items": {"type": "string"},
"examples": [["MY_MACRO", "MY_VALUE_MACRO=1"]],
"default": [],
"markdownDescription": "Predefined macros to use in the language server. Each item contains one macro definition. You can also use `macro_name=value` syntax to specify the value of the macro."
},
"slang.searchInAllWorkspaceDirectories": {
"scope": "window",
"type": "boolean",
"default": true,
"description": "Controls whether or not the language server should look in all sub-directories in the current workspace for an include or imported file if it is not found in the explicitly specified search paths."
},
"slang.additionalSearchPaths": {
"scope": "window",
"type": "array",
"items": {"type": "string"},
"examples": [["include/", "c:\\external-lib\\include"]],
"default": [],
"description": "The language server will search for the included or imported file in these additional directories first. If not found, the server will look in all sub directories in the current workspace (if enabled by the setting)."
},
"slang.enableCommitCharactersInAutoCompletion": {
"scope": "window",
"type": "string",
"enum": [
"off",
"membersOnly",
"on"
],
"default": "membersOnly",
"markdownDescription": "Controls whether or not to enable commit characters for selecting an auto completion item in addition to pressing enter. 'off' - disabled. 'memberOnly' - use commit characters in a member list only. 'on' - use commit characters for all types of completions."
},
"slang.format.clangFormatLocation": {
"scope": "machine-overridable",
"type": "string",
"default": "",
"markdownDescription": "The location of clang-format for auto formatting, including the executable name. If left unspecified, will attempt to find `clang-format` under `PATH`, or under C++ extension installation path."
},
"slang.slangdLocation": {
"scope": "machine-overridable",
"type": "string",
"default": "",
"markdownDescription": "The location of Slang's language server executable `slangd`. Will use bundled language server when unspecified."
},
"slang.format.clangFormatStyle": {
"scope": "window",
"type": "string",
"default": "file",
"markdownDescription": "The `-style` argument to pass to clang-format, without quotes. Examples: `Microsoft`, `LLVM`, `file:fileName`. Default value is `file`"
},
"slang.format.clangFormatFallbackStyle": {
"scope": "window",
"type": "string",
"default": "{BasedOnStyle: Microsoft, BreakBeforeBraces: Allman, ColumnLimit: 0}",
"markdownDescription": "The `-fallback-style` argument to pass to clang-format, without quotes. Examples: `Microsoft`, `LLVM`, `file:fileName`. Default value is `{BasedOnStyle: Microsoft, BreakBeforeBraces: Allman, ColumnLimit: 0}`"
},
"slang.format.allowLineBreakChangesInOnTypeFormatting":
{
"scope": "window",
"type": "boolean",
"default": false,
"markdownDescription": "Controls whether the extension is allowed to make line-break changes when reformatting the code on typing."
},
"slang.format.allowLineBreakChangesInRangeFormatting": {
"scope": "window",
"type": "boolean",
"default": false,
"markdownDescription": "Controls whether the extension is allowed to make line-break changes when doing range formatting, such as formatting on paste or on command."
},
"slang.inlayHints.deducedTypes": {
"scope": "window",
"type": "boolean",
"default": true,
"markdownDescription": "Enable inlay hints for duduced decl types, e.g. the deduced type in `var i = 2`"
},
"slang.inlayHints.parameterNames": {
"scope": "window",
"type": "boolean",
"default": true,
"description": "Enable inlay hints for parameter names at call sites."
},
"slangLanguageServer.trace.server": {
"scope": "window",
"type": "string",
"enum": [
"off",
"messages",
"verbose"
],
"default": "off",
"description": "Traces the communication between VS Code and the language server."
}
}
}
},
"devDependencies": {
"@types/vscode": "^1.67.0",
"@vscode/test-electron": "^2.1.2",
"@types/mocha": "^9.1.0",
"@types/node": "^16.11.7",
"@typescript-eslint/eslint-plugin": "^5.19.0",
"@typescript-eslint/parser": "^5.19.0",
"esbuild": "^0.14.42",
"eslint": "^8.13.0",
"mocha": "^9.2.1",
"typescript": "^4.7.2"
},
"dependencies": {
"vscode-languageclient": "^8.0.1"
},
"scripts": {
"vscode:prepublish": "npm run esbuild-base -- --minify",
"esbuild-base": "esbuild ./client/src/extension.ts --bundle --outfile=client/out/main.js --external:vscode --format=cjs --platform=node",
"esbuild": "npm run esbuild-base -- --sourcemap",
"esbuild-watch": "npm run esbuild-base -- --sourcemap --watch",
"test-compile": "tsc -p ./"
}
}