-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathzetch.code-workspace
203 lines (198 loc) · 7.08 KB
/
zetch.code-workspace
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
192
193
194
195
196
197
198
199
200
201
202
203
{
"folders": [
{
"path": "."
}
],
"settings": {
"python.defaultInterpreterPath": "py_rust/.venv/bin/python",
"ruff.path": ["py_rust/.venv/bin/ruff"],
// Add the paths to any rust Cargo.tomls not in root, e.g. "./backend/rust/rust_lib/Cargo.toml"
"rust-analyzer.linkedProjects": [
"./py_rust/Cargo.toml",
],
"rust-analyzer.rustfmt.extraArgs": ["+nightly"], // We use nightly rustfmt for extra features.
"rust-analyzer.cargo.features": "all", // Enable all features in cargo.toml for type hinting
"biome.lspBin": "/usr/local/bin/biome", // Path to the biome binary installed in initial_setup.sh
"editor.codeActionsOnSave": {
"quickfix.biome": "always",
"source.organizeImports.biome": "always"
},
"[javascript]": {
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"editor.formatOnPaste": false
},
"[javascriptreact]": {
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"editor.formatOnPaste": false
},
"[typescript]": {
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"editor.formatOnPaste": false
},
"[typescriptreact]": {
"editor.defaultFormatter": "biomejs.biome",
"editor.formatOnSave": true,
"editor.formatOnPaste": false
},
"[markdown]": {
// Disable markdown formatting because sometimes indents are important in ways the formatter doesn't understand:
"editor.formatOnSave": false,
"editor.formatOnPaste": false
},
"[html]": {
// Disable html formatting because sometimes indents are important in ways the formatter doesn't understand:
"editor.formatOnSave": false,
"editor.formatOnPaste": false
},
"[yaml]": {
// Yaml formatting, same as precommit (needs extension https://marketplace.visualstudio.com/items?itemName=bluebrown.yamlfmt)
// Configure from ./.yamlfmt
"editor.defaultFormatter": "bluebrown.yamlfmt",
"editor.formatOnSave": true,
"editor.formatOnPaste": false
},
"[toml]": {
// Toml formatting, same as precommit (needs extension https://marketplace.visualstudio.com/items?itemName=tamasfe.even-better-toml)
// Configure from ./taplo.toml
"editor.defaultFormatter": "tamasfe.even-better-toml",
"editor.formatOnSave": true,
"editor.formatOnPaste": false
},
"[rust]": {
"editor.defaultFormatter": "rust-lang.rust-analyzer",
"editor.formatOnSave": true,
"editor.formatOnPaste": false
},
"rust-analyzer.check.command": "clippy",
"[python]": {
"editor.formatOnSave": true,
"editor.formatOnPaste": false,
"editor.codeActionsOnSave": {
"source.fixAll": "explicit"
},
// Ruff (replaces black) formats python code (needs extension https://marketplace.visualstudio.com/items?itemName=charliermarsh.ruff)
"editor.defaultFormatter": "charliermarsh.ruff"
},
"mypy.enabled": false, // Mypy extension might be installed, don't want to use
// This enables pyright type checking:
"python.languageServer": "Pylance",
"python.analysis.typeCheckingMode": "basic",
"yaml.schemas": {
// Mkdocs support https://squidfunk.github.io/mkdocs-material/creating-your-site/#minimal-configuration
"https://squidfunk.github.io/mkdocs-material/schema.json": "mkdocs.yml"
},
"yaml.customTags": [
// Mkdocs support https://squidfunk.github.io/mkdocs-material/creating-your-site/#minimal-configuration
"!ENV scalar",
"!ENV sequence",
"tag:yaml.org,2002:python/name:material.extensions.emoji.to_svg",
"tag:yaml.org,2002:python/name:material.extensions.emoji.twemoji",
"tag:yaml.org,2002:python/name:pymdownx.superfences.fence_code_format"
],
// For the tailwind extension if using:
// Note: biome class sorting should be possible soon: https://github.com/biomejs/biome/issues/1274
"tailwindCSS.experimental.classRegex": [
// Allows tailwind autocomplete to work in "classnames" function and "cx" shorthand for it.
// https://github.com/tailwindlabs/tailwindcss/issues/7553
["(?:classnames|cx)\\(([^)]*)\\)", "\"([^\"]*)\""],
["(?:classnames|cx)\\(([^)]*)\\)", "'([^']*')"],
["(?:classnames|cx)\\(([^)]*)\\)", "`([^`]*`)"],
// Also allow it to work in any variable starting with Classes:
"Classes=\"([^\"]*)", // <div *.Classes="..." />
"Classes = \"([^\"]*)", // *.Classes = "..."
"Classes={\"([^\"}]*)", // <div *.Classes={"..."} />
"Classes={`([^`}]*)", // <div *.Classes={`...`} />
"Classes: \"([^\"]*)", // <div *.Classes: "..." />
"Classes: `([^`]*)" // <div *.Classes: `...` />
],
"tailwindCSS.files.exclude": [
"**/.git/**",
"**/node_modules/**",
"**/venv/**",
"**/.venv/**"
],
"scss.lint.unknownAtRules": "ignore",
"search.useIgnoreFiles": false, // Otherwise, things in .gitignore will not be searchable, its better to exclude them manually:
"notebook.output.textLineLimit": 100,
"debug.allowBreakpointsEverywhere": true,
"files.exclude": {
"**/__pypackages__/**": true,
"**/.pytest_cache/**": true,
"**/.pytype/**": true,
"**/.venv/**": true,
"**/venv/**": true,
"**/site/**": true,
"**/coverage": true,
"**/htmlcov": true,
"**/__pycache__": true,
"**/.vscode/**": true,
"**/.mypy_cache/**": true,
"**/.git/**": true,
"**/ipynb_checkpoints/**": true,
"**/.ipynb": true,
"**/target/**": true
},
"files.watcherExclude": {
"**/.venv/**": true,
"**/venv/**": true,
"**/site/**": true,
"**/coverage": true,
"**/htmlcov": true,
"**/__pycache__": true,
"**/.vscode/**": true,
"**/.mypy_cache/**": true,
"**/.git/**": true,
"**/ipynb_checkpoints/**": true,
"**/.ipynb": true
},
// Extra things to exclude from search, but will still show in the filetree (files.exclude files are automatically excluded from search and filetree)
"search.exclude": {
"**/docs/js_ref/**": true,
"**/docs/rust_ref/**": true,
"**/py_stubs/**": true,
"**/dist/**": true,
"**/package-lock.json": true,
"**/Cargo.lock": true,
"**/pdm.lock": true,
"**/logs/**": true,
"**/process_data/**": true,
}
},
"launch": {
"version": "0.2.0",
"configurations": [
{
"justMyCode": false,
"name": "Python: Monitor Port 54321",
"type": "debugpy",
"request": "attach",
"connect": {
"host": "localhost",
"port": 54321
}
},
{
"name": "Rust (manual pid attach)",
"type": "lldb",
"request": "attach",
"pid": "${command:pickProcess}"
}
]
},
"tasks": {
"version": "2.0.0",
"tasks": [
{
"label": "tester",
"type": "shell",
"command": "echo Hello",
// Means won't open a vscode terminal, delete to see output.
"presentation": { "reveal": "silent" }
},
]
}
}