Skip to content

Commit 7a21047

Browse files
committed
init commit
0 parents  commit 7a21047

File tree

13 files changed

+3621
-0
lines changed

13 files changed

+3621
-0
lines changed

.github/workflows/ci.yml

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
name: Pull Request CI
2+
on:
3+
pull_request:
4+
5+
jobs:
6+
test:
7+
strategy:
8+
matrix:
9+
os: [ubuntu-latest]
10+
fail-fast: true
11+
timeout-minutes: 30
12+
runs-on: ${{ matrix.os }}
13+
steps:
14+
- uses: actions/checkout@v2
15+
- run: npx prettier --check src/**
16+
- name: Cache pnpm modules
17+
uses: actions/cache@v2
18+
with:
19+
path: ~/.pnpm-store
20+
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
21+
restore-keys: |
22+
${{ runner.os }}-
23+
- uses: pnpm/[email protected]
24+
with:
25+
version: latest
26+
run_install: |
27+
args: [--frozen-lockfile, --strict-peer-dependencies]
28+
- run: pnpm lint
29+
- run: pnpm tsc
30+
- run: pnpm vscode-utils prepareFrameworkBuild
31+
- run: pnpm build
32+
# - uses: GabrielBB/[email protected]
33+
# with:
34+
# run: pnpm integration-test

.github/workflows/release.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: VSCode Release
2+
on:
3+
push:
4+
branches: [main]
5+
6+
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
7+
jobs:
8+
release:
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@v2
12+
- run: npx prettier --check src/**
13+
- name: Cache pnpm modules
14+
uses: actions/cache@v2
15+
with:
16+
path: ~/.pnpm-store
17+
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
18+
restore-keys: |
19+
${{ runner.os }}-
20+
- uses: pnpm/[email protected]
21+
with:
22+
version: latest
23+
run_install: |
24+
args: [--frozen-lockfile, --strict-peer-dependencies]
25+
- run: pnpm lint
26+
- run: pnpm tsc
27+
- run: pnpx zardoy-release vscode-extension
28+
env:
29+
GITHUB_TOKEN: ${{ secrets.GH_TOKEN }}
30+
VSCE_PAT: ${{ secrets.VSCE_PAT }}
31+
OVSX_PAT: ${{ secrets.OVSX_PAT }}

.gitignore

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# Learn more about paths on https://github.com/github/gitignore/blob/master/Node.gitignore
2+
3+
node_modules
4+
5+
build
6+
dist
7+
out
8+
.next
9+
.nuxt
10+
.cache
11+
12+
coverage
13+
*.lcov
14+
.nyc_output
15+
16+
logs
17+
*.log
18+
experiment-*
19+
.DS_Store
20+
.env.local
21+
.env.*.local
22+
23+
.vscode-test
24+
.vscode-test-web
25+
.eslintcache
26+
Thumbs.db
27+
.idea/
28+
29+
src/generated.ts
30+
src/configurationTypeCache.jsonc

.vscode/launch.json

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"configurations": [
3+
{
4+
"name": "Launch Extension",
5+
"type": "extensionHost",
6+
"request": "launch",
7+
"args": [
8+
"--extensionDevelopmentPath=${workspaceFolder}/out",
9+
],
10+
"outFiles": [
11+
"${workspaceFolder}/out/**/*.js"
12+
]
13+
}
14+
]
15+
}

LICENSE

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# The MIT License
2+
3+
Copyright 2023 Vitaly Turovsky, contributors
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6+
7+
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8+
9+
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

README.MD

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# VS Code Extensions Control
2+
3+
Extremely powerful extension for VS Code to control (configure) providers of other installed extensions!
4+
5+
Currently, it can only disable specific extension providers for now.
6+
7+
### Usage Examples
8+
9+
Usually you want to disable providers that misbehave or slows down your editing experience and don't have a setting to disable provider.
10+
11+
Let's say you have extension with id `styled-components.vscode-styled-components` installed. You don't want to get completions from this extension, but you still want to preserve it's functionality (so you can't just disable it!).
12+
13+
```json
14+
{
15+
"extensionsControl.disableProviders": {
16+
"provideCompletionItems": [
17+
"styled-components.vscode-styled-components",
18+
],
19+
},
20+
}
21+
```
22+
23+
This will make vscode stop asking `styled-components.vscode-styled-components` extension for completion items. For some extensions it can even improve performance.
24+
25+
And works in the same way for hovers, definitions and so on...
26+
27+
Hint: You can quickly enable/disable specific provider with keybinding with Setting Toggle extension.
28+
29+
Obviously you need to be careful with this power or you can blame yourself in future. Also it will never be supported in the web as **it makes VS Code installation patching**.
30+
31+
## Roadmap
32+
33+
- add filters to existing functionality (eg globs)
34+
- add a way to use middleware script
35+
- override ext activationEvents (easy) - motivation
36+
- disable messages (ext or regex)
37+
- disable diagnostics (ext or regex)
38+
- add script to disable ext without reload

package.json

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
{
2+
"name": "extensions-control",
3+
"displayName": "Extensions Control",
4+
"description": "Control your extensions, don't let them control you.",
5+
"publisher": "zardoy",
6+
"version": "0.0.0-dev",
7+
"license": "MIT",
8+
"categories": [
9+
"Other"
10+
],
11+
"contributes": {},
12+
"extensionDependencies": [
13+
"lehni.vscode-fix-checksums"
14+
],
15+
"scripts": {
16+
"start": "vscode-framework start",
17+
"build": "tsc && vscode-framework build"
18+
},
19+
"activationEvents": [
20+
"*"
21+
],
22+
"pnpm": {
23+
"overrides": {
24+
"esbuild": "^0.15.15"
25+
}
26+
},
27+
"dependencies": {
28+
"@types/node": "^18.15.10",
29+
"@types/vscode": "1.73.0",
30+
"@zardoy/vscode-utils": "^0.0.48",
31+
"got": "^12.6.0",
32+
"lodash": "^4.17.21",
33+
"openai": "^3.2.1",
34+
"source-map": "^0.7.4",
35+
"typescript-json-schema": "0.51.0",
36+
"vscode-framework": "^0.0.18"
37+
},
38+
"devDependencies": {
39+
"@types/lodash": "^4.14.192",
40+
"@zardoy/tsconfig": "^1.5.0",
41+
"typescript": "^5.0.2"
42+
},
43+
"prettier": {
44+
"semi": false,
45+
"singleQuote": true,
46+
"proseWrap": "never",
47+
"tabWidth": 4,
48+
"trailingComma": "all",
49+
"arrowParens": "avoid",
50+
"printWidth": 160,
51+
"endOfLine": "auto"
52+
}
53+
}

0 commit comments

Comments
 (0)