Rebrand
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Void",
|
||||
"name": "Code",
|
||||
"build": {
|
||||
"dockerfile": "Dockerfile"
|
||||
},
|
||||
|
||||
@@ -10,11 +10,11 @@
|
||||
"jsdoc",
|
||||
"header",
|
||||
"local"
|
||||
// "react" // Void
|
||||
// "react" // Code
|
||||
],
|
||||
"rules": {
|
||||
"constructor-super": "warn",
|
||||
"curly": "off", // <-- Void
|
||||
"curly": "off", // <-- Code
|
||||
"eqeqeq": "warn",
|
||||
"prefer-const": [
|
||||
"warn",
|
||||
@@ -52,7 +52,7 @@
|
||||
"no-var": "warn",
|
||||
"jsdoc/no-types": "warn",
|
||||
"semi": "off",
|
||||
"@typescript-eslint/semi": "off", // <-- Void
|
||||
"@typescript-eslint/semi": "off", // <-- Code
|
||||
"@typescript-eslint/member-delimiter-style": "warn",
|
||||
"@typescript-eslint/naming-convention": [
|
||||
"warn",
|
||||
@@ -104,7 +104,7 @@
|
||||
]
|
||||
}
|
||||
]
|
||||
// Void team commented this out:
|
||||
// Code team commented this out:
|
||||
// "header/header": [
|
||||
// 2,
|
||||
// "block",
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Created for Void
|
||||
# Created for Code
|
||||
# To learn more about how to use Nix to configure your environment
|
||||
# see: https://developers.google.com/idx/guides/customize-idx-env
|
||||
{pkgs}: {
|
||||
|
||||
@@ -94,7 +94,7 @@
|
||||
}
|
||||
],
|
||||
"git.ignoreLimitWarning": true,
|
||||
// Removing this for Void:
|
||||
// Removing this for Code:
|
||||
// "git.branchProtection": [
|
||||
// "main",
|
||||
// "distro",
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
# Contributing to Void
|
||||
# Contributing to Code
|
||||
### Welcome! 👋
|
||||
This is the official guide on how to contribute to Void. We want to make it as easy as possible to contribute, so if you have any questions or comments, reach out via email or discord!
|
||||
This is the official guide on how to contribute to Code. We want to make it as easy as possible to contribute, so if you have any questions or comments, reach out via email or discord!
|
||||
|
||||
There are a few ways to contribute:
|
||||
|
||||
- 💫 Complete items on the [Roadmap](https://github.com/orgs/voideditor/projects/2).
|
||||
- 💫 Complete items on the [Roadmap](https://github.com/orgs/hanzoai/projects/2).
|
||||
- 💡 Make suggestions in our [Discord](https://discord.gg/RSNjgaugJs).
|
||||
- 🪴 Start new Issues - see [Issues](https://github.com/voideditor/void/issues).
|
||||
- 🪴 Start new Issues - see [Issues](https://github.com/hanzoai/code/issues).
|
||||
|
||||
|
||||
|
||||
@@ -18,12 +18,12 @@ We highly recommend reading [this](https://github.com/microsoft/vscode/wiki/Sour
|
||||
We wrote a [guide to working in VSCode].
|
||||
-->
|
||||
|
||||
Most of Void's code lives in the two folders called `void/`.
|
||||
Most of Code's code lives in the two folders called `void/`.
|
||||
|
||||
|
||||
|
||||
|
||||
## Building Void
|
||||
## Building Code
|
||||
|
||||
### a. Build Prerequisites - Mac
|
||||
|
||||
@@ -52,26 +52,26 @@ First, run `npm install -g node-gyp`. Then:
|
||||
- Red Hat (Fedora, etc): `sudo dnf install @development-tools gcc gcc-c++ make libsecret-devel krb5-devel libX11-devel libxkbfile-devel`.
|
||||
- Others: see [How to Contribute](https://github.com/microsoft/vscode/wiki/How-to-Contribute).
|
||||
|
||||
### d. Building Void
|
||||
### d. Building Code
|
||||
|
||||
To build Void, open `void/` inside VSCode. Then open your terminal and run:
|
||||
To build Code, open `void/` inside VSCode. Then open your terminal and run:
|
||||
|
||||
1. `npm install` to install all dependencies.
|
||||
2. `npm run watchreact` to build Void's browser dependencies like React. (If this doesn't work, try `npm run buildreact`).
|
||||
3. Build Void.
|
||||
2. `npm run watchreact` to build Code's browser dependencies like React. (If this doesn't work, try `npm run buildreact`).
|
||||
3. Build Code.
|
||||
- Press <kbd>Cmd+Shift+B</kbd> (Mac).
|
||||
- Press <kbd>Ctrl+Shift+B</kbd> (Windows/Linux).
|
||||
- This step can take ~5 min. The build is done when you see two check marks.
|
||||
4. Run Void.
|
||||
4. Run Code.
|
||||
- Run `./scripts/code.sh` (Mac/Linux).
|
||||
- Run `./scripts/code.bat` (Windows).
|
||||
6. Nice-to-knows.
|
||||
- You can always press <kbd>Ctrl+R</kbd> (<kbd>Cmd+R</kbd>) inside the new window to reload and see your new changes. It's faster than <kbd>Ctrl+Shift+P</kbd> and `Reload Window`.
|
||||
- You might want to add the flags `--user-data-dir ./.tmp/user-data --extensions-dir ./.tmp/extensions` to the above run command, which lets you delete the `.tmp` folder to reset any IDE changes you made when testing.
|
||||
|
||||
#### Building Void from Terminal
|
||||
#### Building Code from Terminal
|
||||
|
||||
Alternatively, if you want to build Void from the terminal, instead of pressing <kbd>Cmd+Shift+B</kbd> you can run `npm run watch`. The build is done when you see something like this:
|
||||
Alternatively, if you want to build Code from the terminal, instead of pressing <kbd>Cmd+Shift+B</kbd> you can run `npm run watch`. The build is done when you see something like this:
|
||||
|
||||
```
|
||||
[watch-extensions] [00:37:39] Finished compilation extensions with 0 errors after 19303 ms
|
||||
@@ -88,13 +88,13 @@ Alternatively, if you want to build Void from the terminal, instead of pressing
|
||||
- Make sure you have Node version `20.16.0` (the version in `.nvmrc`)!
|
||||
- If you get `"TypeError: Failed to fetch dynamically imported module"`, make sure all imports end with `.js`.
|
||||
- If you see missing styles, wait a few seconds and then reload.
|
||||
- If you have any questions, feel free to [submit an issue](https://github.com/voideditor/void/issues/new). You can also refer to VSCode's complete [How to Contribute](https://github.com/microsoft/vscode/wiki/How-to-Contribute) page.
|
||||
- If you have any questions, feel free to [submit an issue](https://github.com/hanzoai/code/issues/new). You can also refer to VSCode's complete [How to Contribute](https://github.com/microsoft/vscode/wiki/How-to-Contribute) page.
|
||||
|
||||
|
||||
|
||||
## Packaging
|
||||
|
||||
We don't usually recommend packaging. Instead, you should probably just build. If you're sure you want to package Void into an executable app, make sure you've built first, then run one of the following commands. This will create a folder named `VSCode-darwin-arm64` or similar outside of the void/ repo (see below). Be patient - packaging can take ~25 minutes.
|
||||
We don't usually recommend packaging. Instead, you should probably just build. If you're sure you want to package Code into an executable app, make sure you've built first, then run one of the following commands. This will create a folder named `VSCode-darwin-arm64` or similar outside of the void/ repo (see below). Be patient - packaging can take ~25 minutes.
|
||||
|
||||
|
||||
### Mac
|
||||
@@ -116,12 +116,12 @@ We don't usually recommend packaging. Instead, you should probably just build. I
|
||||
This will generate a folder outside of `void/`:
|
||||
```bash
|
||||
workspace/
|
||||
├── void/ # Your Void fork
|
||||
├── void/ # Your Code fork
|
||||
└── VSCode-darwin-arm64/ # Generated output
|
||||
```
|
||||
|
||||
### Distributing
|
||||
Void's maintainers distribute Void on our website and in releases. If you'd like to see the scripts to convert `Mac .app -> .dmg`, `Windows folder -> .exe`, and `Linux folder -> appimage` for distribution, feel free to reach out.
|
||||
Code's maintainers distribute Code on our website and in releases. If you'd like to see the scripts to convert `Mac .app -> .dmg`, `Windows folder -> .exe`, and `Linux folder -> appimage` for distribution, feel free to reach out.
|
||||
|
||||
## Pull Request Guidelines
|
||||
|
||||
@@ -137,13 +137,13 @@ Void's maintainers distribute Void on our website and in releases. If you'd like
|
||||
<!--
|
||||
# Relevant files
|
||||
|
||||
We keep track of all the files we've changed with Void so it's easy to rebase:
|
||||
We keep track of all the files we've changed with Code so it's easy to rebase:
|
||||
|
||||
Edit: far too many changes to track... this is old
|
||||
|
||||
- README.md
|
||||
- CONTRIBUTING.md
|
||||
- VOID_USEFUL_LINKS.md
|
||||
- CODE_USEFUL_LINKS.md
|
||||
- product.json
|
||||
- package.json
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
Void is a fork of VS Code, which is licensed under the MIT License (below).
|
||||
Void's additions and modifications are licensed under the Apache 2.0 License (see LICENSE.txt).
|
||||
Code is a fork of VS Code, which is licensed under the MIT License (below).
|
||||
Code's additions and modifications are licensed under the Apache 2.0 License (see LICENSE.txt).
|
||||
|
||||
--------------------
|
||||
|
||||
|
||||
@@ -1,39 +1,30 @@
|
||||
# Welcome to Void.
|
||||
# code
|
||||
|
||||
<div align="center">
|
||||
<img
|
||||
src="./src/vs/workbench/browser/parts/editor/media/slice_of_void.png"
|
||||
alt="Void Welcome"
|
||||
width="300"
|
||||
height="300"
|
||||
/>
|
||||
</div>
|
||||
Code is the open-source Cursor alternative.
|
||||
|
||||
Void is the open-source Cursor alternative.
|
||||
This repo contains the full sourcecode for Code. We are currently in [open beta]() for Discord members (see the `announcements` channel), with a waitlist for our official release. If you're new, welcome!
|
||||
|
||||
This repo contains the full sourcecode for Void. We are currently in [open beta](https://voideditor.com/email) for Discord members (see the `announcements` channel), with a waitlist for our official release. If you're new, welcome!
|
||||
- 👋 [Discord](https://discord.gg/)
|
||||
|
||||
- 👋 [Discord](https://discord.gg/RSNjgaugJs)
|
||||
- 🔨 [Contribute](https://github.com/hanzoai/code/blob/main/CONTRIBUTING.md)
|
||||
|
||||
- 🔨 [Contribute](https://github.com/voideditor/void/blob/main/CONTRIBUTING.md)
|
||||
- 🚙 [Roadmap](https://github.com/orgs/hanzoai/projects/2)
|
||||
|
||||
- 🚙 [Roadmap](https://github.com/orgs/voideditor/projects/2)
|
||||
|
||||
- 📝 [Changelog](https://voideditor.com/changelog)
|
||||
- 📝 [Changelog](https://code.hanzo.ai/changelog)
|
||||
|
||||
|
||||
## Contributing
|
||||
|
||||
1. Feel free to attend a weekly meeting in our Discord channel if you'd like to contribute!
|
||||
|
||||
2. To get started working on Void, see [Contributing](https://github.com/voideditor/void/blob/main/CONTRIBUTING.md).
|
||||
2. To get started working on Code, see [Contributing](https://github.com/hanzoai/code/blob/main/CONTRIBUTING.md).
|
||||
|
||||
3. We're open to collaborations and suggestions of all types - just reach out.
|
||||
|
||||
|
||||
## Reference
|
||||
|
||||
Void is a fork of the [vscode](https://github.com/microsoft/vscode) repository. For some useful links on VSCode, see [`VOID_USEFUL_LINKS.md`](https://github.com/voideditor/void/blob/main/VOID_USEFUL_LINKS.md).
|
||||
Code is a fork of the [vscode](https://github.com/microsoft/vscode) repository. For some useful links on VSCode, see [`CODE_USEFUL_LINKS.md`](https://github.com/hanzoai/code/blob/main/CODE_USEFUL_LINKS.md).
|
||||
|
||||
## Support
|
||||
Feel free to reach out in our Discord or contact us via email: hello@voideditor.com.
|
||||
Feel free to reach out in our Discord or contact us via email: hello@code.hanzo.ai.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Useful links
|
||||
|
||||
The Void team put together this list of links to get up and running with VSCode's sourcecode. We hope it's helpful!
|
||||
The Code team put together this list of links to get up and running with VSCode's sourcecode. We hope it's helpful!
|
||||
|
||||
## Contributing
|
||||
|
||||
@@ -22,7 +22,7 @@ The Void team put together this list of links to get up and running with VSCode'
|
||||
|
||||
## VSCode's Extension API
|
||||
|
||||
Void is no longer an extension, so these links are no longer required, but they might be useful if we ever build an extension again.
|
||||
Code is no longer an extension, so these links are no longer required, but they might be useful if we ever build an extension again.
|
||||
|
||||
- [Files you need in an extension](https://code.visualstudio.com/api/get-started/extension-anatomy).
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# Void - this looks like the relevant file for us (product-build-darwin.yml is independent and maybe just used for testing)
|
||||
# Code - this looks like the relevant file for us (product-build-darwin.yml is independent and maybe just used for testing)
|
||||
|
||||
steps:
|
||||
- task: NodeTool@0
|
||||
@@ -62,7 +62,7 @@ steps:
|
||||
displayName: Mixin distro quality
|
||||
|
||||
|
||||
## Void - IMPORTANT
|
||||
## Code - IMPORTANT
|
||||
- script: |
|
||||
set -e
|
||||
unzip $(Pipeline.Workspace)/unsigned_vscode_client_darwin_x64_archive/VSCode-darwin-x64.zip -d $(agent.builddirectory)/VSCode-darwin-x64
|
||||
@@ -70,7 +70,7 @@ steps:
|
||||
DEBUG=* node build/darwin/create-universal-app.js $(agent.builddirectory)
|
||||
displayName: Create Universal App
|
||||
|
||||
## Void - IMPORTANT
|
||||
## Code - IMPORTANT
|
||||
- script: |
|
||||
set -e
|
||||
security create-keychain -p pwd $(agent.tempdirectory)/buildagent.keychain
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
// Void explanation - product-build-darwin-universal.yml runs this (create-universal-app.ts), then sign.ts
|
||||
// Code explanation - product-build-darwin-universal.yml runs this (create-universal-app.ts), then sign.ts
|
||||
const path = require("path");
|
||||
const fs = require("fs");
|
||||
const minimatch = require("minimatch");
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
* Licensed under the MIT License. See License.txt in the project root for license information.
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
|
||||
// Void explanation - product-build-darwin-universal.yml runs this (create-universal-app.ts), then sign.ts
|
||||
// Code explanation - product-build-darwin-universal.yml runs this (create-universal-app.ts), then sign.ts
|
||||
|
||||
import * as path from 'path';
|
||||
import * as fs from 'fs';
|
||||
|
||||
@@ -78,24 +78,24 @@ async function main(buildDir) {
|
||||
// universal will get its copy from the x64 build.
|
||||
if (arch !== 'universal') {
|
||||
await (0, cross_spawn_promise_1.spawn)('plutil', [
|
||||
'-replace', // Void changed this to replace
|
||||
'-replace', // Code changed this to replace
|
||||
'NSAppleEventsUsageDescription',
|
||||
'-string',
|
||||
'An application in Void wants to use AppleScript.',
|
||||
'An application in Code wants to use AppleScript.',
|
||||
`${infoPlistPath}`
|
||||
]);
|
||||
await (0, cross_spawn_promise_1.spawn)('plutil', [
|
||||
'-replace',
|
||||
'NSMicrophoneUsageDescription',
|
||||
'-string',
|
||||
'An application in Void wants to use the Microphone.',
|
||||
'An application in Code wants to use the Microphone.',
|
||||
`${infoPlistPath}`
|
||||
]);
|
||||
await (0, cross_spawn_promise_1.spawn)('plutil', [
|
||||
'-replace',
|
||||
'NSCameraUsageDescription',
|
||||
'-string',
|
||||
'An application in Void wants to use the Camera.',
|
||||
'An application in Code wants to use the Camera.',
|
||||
`${infoPlistPath}`
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -89,24 +89,24 @@ async function main(buildDir?: string): Promise<void> {
|
||||
// universal will get its copy from the x64 build.
|
||||
if (arch !== 'universal') {
|
||||
await spawn('plutil', [
|
||||
'-replace', // Void changed this to replace
|
||||
'-replace', // Code changed this to replace
|
||||
'NSAppleEventsUsageDescription',
|
||||
'-string',
|
||||
'An application in Void wants to use AppleScript.',
|
||||
'An application in Code wants to use AppleScript.',
|
||||
`${infoPlistPath}`
|
||||
]);
|
||||
await spawn('plutil', [
|
||||
'-replace',
|
||||
'NSMicrophoneUsageDescription',
|
||||
'-string',
|
||||
'An application in Void wants to use the Microphone.',
|
||||
'An application in Code wants to use the Microphone.',
|
||||
`${infoPlistPath}`
|
||||
]);
|
||||
await spawn('plutil', [
|
||||
'-replace',
|
||||
'NSCameraUsageDescription',
|
||||
'-string',
|
||||
'An application in Void wants to use the Camera.',
|
||||
'An application in Code wants to use the Camera.',
|
||||
`${infoPlistPath}`
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -342,7 +342,7 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
}));
|
||||
|
||||
|
||||
// Void - this is important, creates the product.json in .app
|
||||
// Code - this is important, creates the product.json in .app
|
||||
let productJsonContents;
|
||||
const productJsonStream = gulp.src(['product.json'], { base: '.' })
|
||||
.pipe(json({ commit, date: readISODate('out-build'), checksums, version }))
|
||||
@@ -427,15 +427,15 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
'resources/win32/vue.ico',
|
||||
'resources/win32/xml.ico',
|
||||
'resources/win32/yaml.ico',
|
||||
'resources/win32/code_70x70.png', // <-- Void icon
|
||||
'resources/win32/code_150x150.png' // <-- Void icon
|
||||
'resources/win32/code_70x70.png', // <-- Code icon
|
||||
'resources/win32/code_150x150.png' // <-- Code icon
|
||||
], { base: '.' }));
|
||||
} else if (platform === 'linux') {
|
||||
all = es.merge(all, gulp.src('resources/linux/code.png', { base: '.' })); // <-- Void icon
|
||||
all = es.merge(all, gulp.src('resources/linux/code.png', { base: '.' })); // <-- Code icon
|
||||
} else if (platform === 'darwin') {
|
||||
const shortcut = gulp.src('resources/darwin/bin/code.sh')
|
||||
.pipe(replace('@@APPNAME@@', product.applicationName))
|
||||
.pipe(rename('bin/code')); // <-- Void icon
|
||||
.pipe(rename('bin/code')); // <-- Code icon
|
||||
|
||||
all = es.merge(all, shortcut);
|
||||
}
|
||||
|
||||
@@ -265,7 +265,7 @@ function createGitIndexVinyls(paths) {
|
||||
|
||||
return pall(fns, { concurrency: 4 }).then((r) => r.filter((p) => !!p));
|
||||
}
|
||||
// NO PRE COMMIT HOOKS!!!! for now... - Void team
|
||||
// NO PRE COMMIT HOOKS!!!! for now... - Code team
|
||||
|
||||
// // this allows us to run hygiene as a git pre-commit hook
|
||||
// if (require.main === module) {
|
||||
|
||||
@@ -54,7 +54,7 @@ function darwinBundleDocumentType(extensions, icon, nameOrSuffix, utis) {
|
||||
role: 'Editor',
|
||||
ostypes: ['TEXT', 'utxt', 'TUTX', '****'],
|
||||
extensions,
|
||||
iconFile: 'resources/darwin/' + icon.toLowerCase() + '.icns', // <-- Void icon code.icns
|
||||
iconFile: 'resources/darwin/' + icon.toLowerCase() + '.icns', // <-- Code icon code.icns
|
||||
utis
|
||||
};
|
||||
}
|
||||
@@ -179,7 +179,7 @@ exports.config = {
|
||||
darwinForceDarkModeSupport: true,
|
||||
darwinCredits: darwinCreditsTemplate ? Buffer.from(darwinCreditsTemplate({ commit: commit, date: new Date().toISOString() })) : undefined,
|
||||
linuxExecutableName: product.applicationName,
|
||||
winIcon: 'resources/win32/code.ico', // <-- Void icon
|
||||
winIcon: 'resources/win32/code.ico', // <-- Code icon
|
||||
token: process.env['GITHUB_TOKEN'],
|
||||
repo: product.electronRepository || undefined,
|
||||
validateChecksum: true,
|
||||
|
||||
@@ -68,7 +68,7 @@ function darwinBundleDocumentType(extensions: string[], icon: string, nameOrSuff
|
||||
role: 'Editor',
|
||||
ostypes: ['TEXT', 'utxt', 'TUTX', '****'],
|
||||
extensions,
|
||||
iconFile: 'resources/darwin/' + icon.toLowerCase() + '.icns', // <-- Void icon code.icns
|
||||
iconFile: 'resources/darwin/' + icon.toLowerCase() + '.icns', // <-- Code icon code.icns
|
||||
utis
|
||||
};
|
||||
}
|
||||
@@ -196,7 +196,7 @@ export const config = {
|
||||
darwinForceDarkModeSupport: true,
|
||||
darwinCredits: darwinCreditsTemplate ? Buffer.from(darwinCreditsTemplate({ commit: commit, date: new Date().toISOString() })) : undefined,
|
||||
linuxExecutableName: product.applicationName,
|
||||
winIcon: 'resources/win32/code.ico', // <-- Void icon
|
||||
winIcon: 'resources/win32/code.ico', // <-- Code icon
|
||||
token: process.env['GITHUB_TOKEN'],
|
||||
repo: product.electronRepository || undefined,
|
||||
validateChecksum: true,
|
||||
|
||||
@@ -54,9 +54,9 @@ const dirs = [
|
||||
'.vscode/extensions/vscode-selfhost-import-aid',
|
||||
'.vscode/extensions/vscode-selfhost-test-provider',
|
||||
|
||||
// Void added these:
|
||||
// Code added these:
|
||||
// 'extensions/void',
|
||||
// 'void-imports',
|
||||
// 'code-imports',
|
||||
|
||||
];
|
||||
|
||||
|
||||
@@ -141,19 +141,19 @@ cp.execSync('git config pull.rebase merges');
|
||||
cp.execSync('git config blame.ignoreRevsFile .git-blame-ignore-revs');
|
||||
|
||||
|
||||
// // Void added this (inject void-imports into project):
|
||||
// const buildVoidImports = () => {
|
||||
// console.log('\n\nVoid is injecting void-imports...')
|
||||
// // Code added this (inject code-imports into project):
|
||||
// const buildCodeImports = () => {
|
||||
// console.log('\n\nCode is injecting code-imports...')
|
||||
// cp.execSync(`npm install`, { // this goes here, not in postinstall, because we need to
|
||||
// env: process.env,
|
||||
// cwd: path.join(__dirname, '..', '..', '/void-imports'),
|
||||
// cwd: path.join(__dirname, '..', '..', '/code-imports'),
|
||||
// stdio: 'inherit'
|
||||
// });
|
||||
// cp.execSync(`node build-index.mjs`, {
|
||||
// env: process.env,
|
||||
// cwd: path.join(__dirname, '..', '..', '/void-imports'),
|
||||
// cwd: path.join(__dirname, '..', '..', '/code-imports'),
|
||||
// stdio: 'inherit'
|
||||
// });
|
||||
// console.log('Done injecting void-imports.')
|
||||
// console.log('Done injecting code-imports.')
|
||||
// }
|
||||
// buildVoidImports()
|
||||
// buildCodeImports()
|
||||
|
||||
@@ -21,8 +21,8 @@ Compression=lzma
|
||||
SolidCompression=yes
|
||||
AppMutex={code:GetAppMutex}
|
||||
SetupMutex={#AppMutex}setup
|
||||
; this is a Void icon comment. Old: WizardImageFile="{#RepoDir}\resources\win32\inno-big-100.bmp,{#RepoDir}\resources\win32\inno-big-125.bmp,{#RepoDir}\resources\win32\inno-big-150.bmp,{#RepoDir}\resources\win32\inno-big-175.bmp,{#RepoDir}\resources\win32\inno-big-200.bmp,{#RepoDir}\resources\win32\inno-big-225.bmp,{#RepoDir}\resources\win32\inno-big-250.bmp"
|
||||
; this is a Void icon comment. Old: WizardSmallImageFile="{#RepoDir}\resources\win32\inno-small-100.bmp,{#RepoDir}\resources\win32\inno-small-125.bmp,{#RepoDir}\resources\win32\inno-small-150.bmp,{#RepoDir}\resources\win32\inno-small-175.bmp,{#RepoDir}\resources\win32\inno-small-200.bmp,{#RepoDir}\resources\win32\inno-small-225.bmp,{#RepoDir}\resources\win32\inno-small-250.bmp"
|
||||
; this is a Code icon comment. Old: WizardImageFile="{#RepoDir}\resources\win32\inno-big-100.bmp,{#RepoDir}\resources\win32\inno-big-125.bmp,{#RepoDir}\resources\win32\inno-big-150.bmp,{#RepoDir}\resources\win32\inno-big-175.bmp,{#RepoDir}\resources\win32\inno-big-200.bmp,{#RepoDir}\resources\win32\inno-big-225.bmp,{#RepoDir}\resources\win32\inno-big-250.bmp"
|
||||
; this is a Code icon comment. Old: WizardSmallImageFile="{#RepoDir}\resources\win32\inno-small-100.bmp,{#RepoDir}\resources\win32\inno-small-125.bmp,{#RepoDir}\resources\win32\inno-small-150.bmp,{#RepoDir}\resources\win32\inno-small-175.bmp,{#RepoDir}\resources\win32\inno-small-200.bmp,{#RepoDir}\resources\win32\inno-small-225.bmp,{#RepoDir}\resources\win32\inno-small-250.bmp"
|
||||
; WizardImageFile="{#RepoDir}\resources\win32\inno-void.bmp"
|
||||
WizardSmallImageFile="{#RepoDir}\resources\win32\inno-void.bmp"
|
||||
SetupIconFile={#RepoDir}\resources\win32\code.ico
|
||||
|
||||
@@ -63,7 +63,7 @@ Exec=void
|
||||
Icon=void
|
||||
Type=Application
|
||||
Categories=Utility;
|
||||
Comment=Void Linux Application
|
||||
Comment=Code Linux Application
|
||||
EOF
|
||||
then
|
||||
echo "Error creating desktop file"
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
This folder is no longer relevant, since Code is no longer just an extension.
|
||||
|
||||
See the new Code code in `src/vs/workbench/contrib/void` (and a few other locations - you can just search "Code").
|
||||
@@ -1401,7 +1401,7 @@
|
||||
"property-keywords": {
|
||||
"patterns": [
|
||||
{
|
||||
"match": "(?xi) (?<![\\w-])\n(above|absolute|active|add|additive|after-edge|alias|all|all-petite-caps|all-scroll|all-small-caps|alpha|alphabetic|alternate|alternate-reverse\n|always|antialiased|auto|auto-fill|auto-fit|auto-pos|available|avoid|avoid-column|avoid-page|avoid-region|backwards|balance|baseline|before-edge|below|bevel\n|bidi-override|blink|block|block-axis|block-start|block-end|bold|bolder|border|border-box|both|bottom|bottom-outside|break-all|break-word|bullets\n|butt|capitalize|caption|cell|center|central|char|circle|clip|clone|close-quote|closest-corner|closest-side|col-resize|collapse|color|color-burn\n|color-dodge|column|column-reverse|common-ligatures|compact|condensed|contain|content|content-box|contents|context-menu|contextual|copy|cover\n|crisp-edges|crispEdges|crosshair|cyclic|dark|darken|dashed|decimal|default|dense|diagonal-fractions|difference|digits|disabled|disc|discretionary-ligatures\n|distribute|distribute-all-lines|distribute-letter|distribute-space|dot|dotted|double|double-circle|downleft|downright|e-resize|each-line|ease|ease-in\n|ease-in-out|ease-out|economy|ellipse|ellipsis|embed|end|evenodd|ew-resize|exact|exclude|exclusion|expanded|extends|extra-condensed|extra-expanded\n|fallback|farthest-corner|farthest-side|fill|fill-available|fill-box|filled|fit-content|fixed|flat|flex|flex-end|flex-start|flip|flow-root|forwards|freeze\n|from-image|full-width|geometricPrecision|georgian|grab|grabbing|grayscale|grid|groove|hand|hanging|hard-light|help|hidden|hide\n|historical-forms|historical-ligatures|horizontal|horizontal-tb|hue|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space\n|ideographic|inactive|infinite|inherit|initial|inline|inline-axis|inline-block|inline-end|inline-flex|inline-grid|inline-list-item|inline-start\n|inline-table|inset|inside|inter-character|inter-ideograph|inter-word|intersect|invert|isolate|isolate-override|italic|jis04|jis78|jis83\n|jis90|justify|justify-all|kannada|keep-all|landscape|large|larger|left|light|lighten|lighter|line|line-edge|line-through|linear|linearRGB\n|lining-nums|list-item|local|loose|lowercase|lr|lr-tb|ltr|luminance|luminosity|main-size|mandatory|manipulation|manual|margin-box|match-parent\n|match-source|mathematical|max-content|medium|menu|message-box|middle|min-content|miter|mixed|move|multiply|n-resize|narrower|ne-resize\n|nearest-neighbor|nesw-resize|newspaper|no-change|no-clip|no-close-quote|no-common-ligatures|no-contextual|no-discretionary-ligatures\n|no-drop|no-historical-ligatures|no-open-quote|no-repeat|none|nonzero|normal|not-allowed|nowrap|ns-resize|numbers|numeric|nw-resize|nwse-resize\n|oblique|oldstyle-nums|open|open-quote|optimizeLegibility|optimizeQuality|optimizeSpeed|optional|ordinal|outset|outside|over|overlay|overline|padding\n|padding-box|page|painted|pan-down|pan-left|pan-right|pan-up|pan-x|pan-y|paused|petite-caps|pixelated|plaintext|pointer|portrait|pre|pre-line\n|pre-wrap|preserve-3d|progress|progressive|proportional-nums|proportional-width|proximity|radial|recto|region|relative|remove|repeat|repeat-[xy]\n|reset-size|reverse|revert|ridge|right|rl|rl-tb|round|row|row-resize|row-reverse|row-severse|rtl|ruby|ruby-base|ruby-base-container|ruby-text\n|ruby-text-container|run-in|running|s-resize|saturation|scale-down|screen|scroll|scroll-position|se-resize|semi-condensed|semi-expanded|separate\n|sesame|show|sideways|sideways-left|sideways-lr|sideways-right|sideways-rl|simplified|slashed-zero|slice|small|small-caps|small-caption|smaller\n|smooth|soft-light|solid|space|space-around|space-between|space-evenly|spell-out|square|sRGB|stacked-fractions|start|static|status-bar|swap\n|step-end|step-start|sticky|stretch|strict|stroke|stroke-box|style|sub|subgrid|subpixel-antialiased|subtract|super|sw-resize|symbolic|table\n|table-caption|table-cell|table-column|table-column-group|table-footer-group|table-header-group|table-row|table-row-group|tabular-nums|tb|tb-rl\n|text|text-after-edge|text-before-edge|text-bottom|text-top|thick|thin|titling-caps|top|top-outside|touch|traditional|transparent|triangle\n|ultra-condensed|ultra-expanded|under|underline|unicase|unset|upleft|uppercase|upright|use-glyph-orientation|use-script|verso|vertical\n|vertical-ideographic|vertical-lr|vertical-rl|vertical-text|view-box|visible|visibleFill|visiblePainted|visibleStroke|w-resize|wait|wavy\n|weight|whitespace|wider|words|wrap|wrap-reverse|x|x-large|x-small|xx-large|xx-small|y|zero|zoom-in|zoom-out)\n(?![\\w-])",
|
||||
"match": "(?xi) (?<![\\w-])\n(above|absolute|active|add|additive|after-edge|alias|all|all-petite-caps|all-scroll|all-small-caps|alpha|alphabetic|alternate|alternate-reverse\n|always|antialiased|auto|auto-fill|auto-fit|auto-pos|available|avoid|acode-column|acode-page|acode-region|backwards|balance|baseline|before-edge|below|bevel\n|bidi-override|blink|block|block-axis|block-start|block-end|bold|bolder|border|border-box|both|bottom|bottom-outside|break-all|break-word|bullets\n|butt|capitalize|caption|cell|center|central|char|circle|clip|clone|close-quote|closest-corner|closest-side|col-resize|collapse|color|color-burn\n|color-dodge|column|column-reverse|common-ligatures|compact|condensed|contain|content|content-box|contents|context-menu|contextual|copy|cover\n|crisp-edges|crispEdges|crosshair|cyclic|dark|darken|dashed|decimal|default|dense|diagonal-fractions|difference|digits|disabled|disc|discretionary-ligatures\n|distribute|distribute-all-lines|distribute-letter|distribute-space|dot|dotted|double|double-circle|downleft|downright|e-resize|each-line|ease|ease-in\n|ease-in-out|ease-out|economy|ellipse|ellipsis|embed|end|evenodd|ew-resize|exact|exclude|exclusion|expanded|extends|extra-condensed|extra-expanded\n|fallback|farthest-corner|farthest-side|fill|fill-available|fill-box|filled|fit-content|fixed|flat|flex|flex-end|flex-start|flip|flow-root|forwards|freeze\n|from-image|full-width|geometricPrecision|georgian|grab|grabbing|grayscale|grid|groove|hand|hanging|hard-light|help|hidden|hide\n|historical-forms|historical-ligatures|horizontal|horizontal-tb|hue|icon|ideograph-alpha|ideograph-numeric|ideograph-parenthesis|ideograph-space\n|ideographic|inactive|infinite|inherit|initial|inline|inline-axis|inline-block|inline-end|inline-flex|inline-grid|inline-list-item|inline-start\n|inline-table|inset|inside|inter-character|inter-ideograph|inter-word|intersect|invert|isolate|isolate-override|italic|jis04|jis78|jis83\n|jis90|justify|justify-all|kannada|keep-all|landscape|large|larger|left|light|lighten|lighter|line|line-edge|line-through|linear|linearRGB\n|lining-nums|list-item|local|loose|lowercase|lr|lr-tb|ltr|luminance|luminosity|main-size|mandatory|manipulation|manual|margin-box|match-parent\n|match-source|mathematical|max-content|medium|menu|message-box|middle|min-content|miter|mixed|move|multiply|n-resize|narrower|ne-resize\n|nearest-neighbor|nesw-resize|newspaper|no-change|no-clip|no-close-quote|no-common-ligatures|no-contextual|no-discretionary-ligatures\n|no-drop|no-historical-ligatures|no-open-quote|no-repeat|none|nonzero|normal|not-allowed|nowrap|ns-resize|numbers|numeric|nw-resize|nwse-resize\n|oblique|oldstyle-nums|open|open-quote|optimizeLegibility|optimizeQuality|optimizeSpeed|optional|ordinal|outset|outside|over|overlay|overline|padding\n|padding-box|page|painted|pan-down|pan-left|pan-right|pan-up|pan-x|pan-y|paused|petite-caps|pixelated|plaintext|pointer|portrait|pre|pre-line\n|pre-wrap|preserve-3d|progress|progressive|proportional-nums|proportional-width|proximity|radial|recto|region|relative|remove|repeat|repeat-[xy]\n|reset-size|reverse|revert|ridge|right|rl|rl-tb|round|row|row-resize|row-reverse|row-severse|rtl|ruby|ruby-base|ruby-base-container|ruby-text\n|ruby-text-container|run-in|running|s-resize|saturation|scale-down|screen|scroll|scroll-position|se-resize|semi-condensed|semi-expanded|separate\n|sesame|show|sideways|sideways-left|sideways-lr|sideways-right|sideways-rl|simplified|slashed-zero|slice|small|small-caps|small-caption|smaller\n|smooth|soft-light|solid|space|space-around|space-between|space-evenly|spell-out|square|sRGB|stacked-fractions|start|static|status-bar|swap\n|step-end|step-start|sticky|stretch|strict|stroke|stroke-box|style|sub|subgrid|subpixel-antialiased|subtract|super|sw-resize|symbolic|table\n|table-caption|table-cell|table-column|table-column-group|table-footer-group|table-header-group|table-row|table-row-group|tabular-nums|tb|tb-rl\n|text|text-after-edge|text-before-edge|text-bottom|text-top|thick|thin|titling-caps|top|top-outside|touch|traditional|transparent|triangle\n|ultra-condensed|ultra-expanded|under|underline|unicase|unset|upleft|uppercase|upright|use-glyph-orientation|use-script|verso|vertical\n|vertical-ideographic|vertical-lr|vertical-rl|vertical-text|view-box|visible|visibleFill|visiblePainted|visibleStroke|w-resize|wait|wavy\n|weight|whitespace|wider|words|wrap|wrap-reverse|x|x-large|x-small|xx-large|xx-small|y|zero|zoom-in|zoom-out)\n(?![\\w-])",
|
||||
"name": "support.constant.property-value.css"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -240,7 +240,7 @@
|
||||
"name": "keyword.other.pragma.perl"
|
||||
},
|
||||
{
|
||||
"match": "\\b(Object|Any|Junction|Whatever|Capture|MatchSignature|Proxy|Matcher|Package|Module|ClassGrammar|Scalar|Array|Hash|KeyHash|KeySet|KeyBagPair|List|Seq|Range|Set|Bag|Mapping|Void|UndefFailure|Exception|Code|Block|Routine|Sub|MacroMethod|Submethod|Regex|Str|str|Blob|Char|ByteCodepoint|Grapheme|StrPos|StrLen|Version|NumComplex|num|complex|Bit|bit|bool|True|FalseIncreasing|Decreasing|Ordered|Callable|AnyCharPositional|Associative|Ordering|KeyExtractorComparator|OrderingPair|IO|KitchenSink|RoleInt|int|int1|int2|int4|int8|int16|int32|int64Rat|rat|rat1|rat2|rat4|rat8|rat16|rat32|rat64Buf|buf|buf1|buf2|buf4|buf8|buf16|buf32|buf64UInt|uint|uint1|uint2|uint4|uint8|uint16|uint32uint64|Abstraction|utf8|utf16|utf32)\\b",
|
||||
"match": "\\b(Object|Any|Junction|Whatever|Capture|MatchSignature|Proxy|Matcher|Package|Module|ClassGrammar|Scalar|Array|Hash|KeyHash|KeySet|KeyBagPair|List|Seq|Range|Set|Bag|Mapping|Code|UndefFailure|Exception|Code|Block|Routine|Sub|MacroMethod|Submethod|Regex|Str|str|Blob|Char|ByteCodepoint|Grapheme|StrPos|StrLen|Version|NumComplex|num|complex|Bit|bit|bool|True|FalseIncreasing|Decreasing|Ordered|Callable|AnyCharPositional|Associative|Ordering|KeyExtractorComparator|OrderingPair|IO|KitchenSink|RoleInt|int|int1|int2|int4|int8|int16|int32|int64Rat|rat|rat1|rat2|rat4|rat8|rat16|rat32|rat64Buf|buf|buf1|buf2|buf4|buf8|buf16|buf32|buf64UInt|uint|uint1|uint2|uint4|uint8|uint16|uint32uint64|Abstraction|utf8|utf16|utf32)\\b",
|
||||
"name": "support.type.perl6"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -216,14 +216,14 @@
|
||||
"wellformed-html": {
|
||||
"patterns": [
|
||||
{
|
||||
"include": "#void-tag"
|
||||
"include": "#code-tag"
|
||||
},
|
||||
{
|
||||
"include": "#non-void-tag"
|
||||
"include": "#non-code-tag"
|
||||
}
|
||||
]
|
||||
},
|
||||
"void-tag": {
|
||||
"code-tag": {
|
||||
"name": "meta.tag.structure.$3.void.html",
|
||||
"begin": "(?i)(<)(!)?(area|base|br|col|command|embed|hr|img|input|keygen|link|meta|param|source|track|wbr)(?=\\s|/?>)",
|
||||
"beginCaptures": {
|
||||
@@ -249,7 +249,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"non-void-tag": {
|
||||
"non-code-tag": {
|
||||
"begin": "(?=<(!)?([^/\\s>]+)(\\s|/?>))",
|
||||
"end": "(</)(\\2)\\s*(>)|(/>)",
|
||||
"endCaptures": {
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
This folder is no longer relevant, since Void is no longer just an extension.
|
||||
|
||||
See the new Void code in `src/vs/workbench/contrib/void` (and a few other locations - you can just search "Void").
|
||||
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"name": "void-dev",
|
||||
"name": "code-dev",
|
||||
"version": "1.94.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "void-dev",
|
||||
"name": "code-dev",
|
||||
"version": "1.94.0",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
{
|
||||
"name": "void-dev",
|
||||
"productName": "Void",
|
||||
"name": "code-dev",
|
||||
"productName": "Code",
|
||||
"version": "1.94.0",
|
||||
"distro": "this is a commit number if we want to publish on npm",
|
||||
"homepage": "https://voideditor.com",
|
||||
"homepage": "https://code.hanzo.ai",
|
||||
"author": {
|
||||
"name": "Glass Devtools, Inc.",
|
||||
"email": "andrew@voideditor.com"
|
||||
"email": "andrew@code.hanzo.ai"
|
||||
},
|
||||
"license": "MIT",
|
||||
"main": "./out/main",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"buildreact": "cd ./src/vs/workbench/contrib/void/browser/react/ && node build.js && cd ../../../../../../../",
|
||||
"watchreact": "cd ./src/vs/workbench/contrib/void/browser/react/ && node build.js --watch && cd ../../../../../../../",
|
||||
"buildreact": "cd ./src/vs/workbench/contrib/code/browser/react/ && node build.js && cd ../../../../../../../",
|
||||
"watchreact": "cd ./src/vs/workbench/contrib/code/browser/react/ && node build.js --watch && cd ../../../../../../../",
|
||||
"watchreactd": "deemon npm run watchreact",
|
||||
"test": "echo Please run any of the test scripts from the scripts folder.",
|
||||
"test-browser": "npx playwright install && node test/unit/browser/index.js",
|
||||
|
||||
@@ -1,35 +1,35 @@
|
||||
{
|
||||
"nameShort": "Void",
|
||||
"nameLong": "Void",
|
||||
"nameShort": "Code",
|
||||
"nameLong": "Code",
|
||||
"applicationName": "void",
|
||||
"dataFolderName": ".void-editor",
|
||||
"win32MutexName": "voideditor",
|
||||
"dataFolderName": ".code-editor",
|
||||
"win32MutexName": "hanzoai",
|
||||
"licenseName": "MIT",
|
||||
"licenseUrl": "https://github.com/voideditor/void/blob/main/LICENSE.txt",
|
||||
"serverLicenseUrl": "https://github.com/voideditor/void/blob/main/LICENSE.txt",
|
||||
"licenseUrl": "https://github.com/hanzoai/code/blob/main/LICENSE.txt",
|
||||
"serverLicenseUrl": "https://github.com/hanzoai/code/blob/main/LICENSE.txt",
|
||||
"serverGreeting": [],
|
||||
"serverLicense": [],
|
||||
"serverLicensePrompt": "",
|
||||
"serverApplicationName": "void-server",
|
||||
"serverDataFolderName": ".void-server",
|
||||
"tunnelApplicationName": "void-tunnel",
|
||||
"win32DirName": "Void",
|
||||
"win32NameVersion": "Void",
|
||||
"win32RegValueName": "VoidEditor",
|
||||
"serverApplicationName": "code-server",
|
||||
"serverDataFolderName": ".code-server",
|
||||
"tunnelApplicationName": "code-tunnel",
|
||||
"win32DirName": "Code",
|
||||
"win32NameVersion": "Code",
|
||||
"win32RegValueName": "CodeEditor",
|
||||
"win32x64AppId": "{{9D394D01-1728-45A7-B997-A6C82C5452C3}",
|
||||
"win32arm64AppId": "{{0668DD58-2BDE-4101-8CDA-40252DF8875D}",
|
||||
"win32x64UserAppId": "{{8BED5DC1-6C55-46E6-9FE6-18F7E6F7C7F1}",
|
||||
"win32arm64UserAppId": "{{F6C87466-BC82-4A8F-B0FF-18CA366BA4D8}",
|
||||
"win32AppUserModelId": "Void.Editor",
|
||||
"win32AppUserModelId": "Code.Editor",
|
||||
"win32ShellNameShort": "V&oid",
|
||||
"win32TunnelServiceMutex": "void-tunnelservice",
|
||||
"win32TunnelMutex": "void-tunnel",
|
||||
"darwinBundleIdentifier": "com.voideditor.code",
|
||||
"linuxIconName": "void-editor",
|
||||
"win32TunnelServiceMutex": "code-tunnelservice",
|
||||
"win32TunnelMutex": "code-tunnel",
|
||||
"darwinBundleIdentifier": "com.hanzoai.code",
|
||||
"linuxIconName": "code-editor",
|
||||
"licenseFileName": "LICENSE.txt",
|
||||
"reportIssueUrl": "https://github.com/voideditor/void/issues/new",
|
||||
"reportIssueUrl": "https://github.com/hanzoai/code/issues/new",
|
||||
"nodejsRepository": "https://nodejs.org",
|
||||
"urlProtocol": "void-editor",
|
||||
"urlProtocol": "code-editor",
|
||||
"extensionsGallery": {
|
||||
"serviceUrl": "https://open-vsx.org/vscode/gallery",
|
||||
"itemUrl": "https://open-vsx.org/vscode/item"
|
||||
|
||||
@@ -5,5 +5,5 @@
|
||||
Square150x150Logo="resources\app\resources\win32\code_150x150.png"
|
||||
Square70x70Logo="resources\app\resources\win32\code_70x70.png"
|
||||
ForegroundText="light"
|
||||
ShortDisplayName="Void" />
|
||||
ShortDisplayName="Code" />
|
||||
</Application>
|
||||
|
||||
|
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.4 MiB |
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"extends": "./tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
// "jsx": "react", // <-- Void added this
|
||||
// "jsx": "react", // <-- Code added this
|
||||
"esModuleInterop": true,
|
||||
"removeComments": false,
|
||||
"preserveConstEnums": true,
|
||||
@@ -54,7 +54,7 @@
|
||||
"vscode-dts/vscode.proposed.*.d.ts",
|
||||
"vscode-dts/vscode.d.ts",
|
||||
|
||||
// Void added these:
|
||||
// Code added these:
|
||||
// "./vs/workbench/contrib/void/browser/**.tsx",
|
||||
// "./vs/**/*.d.mts",
|
||||
]
|
||||
|
||||
@@ -25959,7 +25959,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/lines-around-comment.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-code-type.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/space-infix-ops.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js
|
||||
@@ -25980,7 +25980,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-code-type.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/type-annotation-spacing.js
|
||||
@@ -26057,7 +26057,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-code-operator.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/comma-dangle.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js
|
||||
@@ -26068,7 +26068,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-parens.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-code-operator.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js
|
||||
@@ -26167,7 +26167,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-template-literals.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-code-expression.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js
|
||||
@@ -26242,7 +26242,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-code-expression.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js.map
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js
|
||||
@@ -26277,7 +26277,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-void-expression.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-code-expression.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md
|
||||
@@ -26341,7 +26341,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-delete.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/README.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-meaningless-void-operator.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-meaningless-code-operator.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-for-of.md
|
||||
@@ -26376,7 +26376,7 @@
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-code-type.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md
|
||||
/Users/example/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md
|
||||
@@ -64786,7 +64786,7 @@
|
||||
/Users/example/extensions/notebook-renderers/node_modules/whatwg-url/lib/utils.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/whatwg-url/lib/url-state-machine.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/whatwg-url/lib/URL.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/whatwg-url/lib/VoidFunction.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/whatwg-url/lib/CodeFunction.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/whatwg-url/LICENSE.txt
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/index.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/webidl2js-wrapper.js
|
||||
@@ -64797,7 +64797,7 @@
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/lib/utils.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/lib/DOMException-impl.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/lib/DOMException.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/lib/VoidFunction.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/lib/CodeFunction.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/domexception/LICENSE.txt
|
||||
/Users/example/extensions/notebook-renderers/node_modules/combined-stream/License
|
||||
/Users/example/extensions/notebook-renderers/node_modules/combined-stream/Readme.md
|
||||
@@ -65079,7 +65079,7 @@
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/Text.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/HTMLTableElement.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/HTMLMenuElement.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/VoidFunction.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/CodeFunction.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/PopStateEvent.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/Document.js
|
||||
/Users/example/extensions/notebook-renderers/node_modules/jsdom/lib/jsdom/living/generated/FormData.js
|
||||
@@ -73339,7 +73339,7 @@
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/vscode-languageserver/node.cmd
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/LICENSE
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/CHANGELOG.md
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/void-tag.js
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/code-tag.js
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/parse.d.ts
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/nodes/html.js
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/nodes/type.js
|
||||
@@ -73351,7 +73351,7 @@
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/nodes/text.d.ts
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/nodes/node.d.ts
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/nodes/text.js
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/void-tag.d.ts
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/code-tag.d.ts
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/index.js
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/valid.d.ts
|
||||
/Users/example/extensions/markdown-language-features/server/node_modules/node-html-parser/dist/valid.js
|
||||
|
||||
@@ -124,8 +124,8 @@ import { ExtensionSignatureVerificationService, IExtensionSignatureVerificationS
|
||||
import { LLMMessageChannel } from '../../platform/void/electron-main/llmMessageChannel.js';
|
||||
import { IMetricsService } from '../../platform/void/common/metricsService.js';
|
||||
import { MetricsMainService } from '../../platform/void/electron-main/metricsMainService.js';
|
||||
import { VoidMainUpdateService } from '../../platform/void/electron-main/voidUpdateMainService.js';
|
||||
import { IVoidUpdateService } from '../../platform/void/common/voidUpdateService.js';
|
||||
import { CodeMainUpdateService } from '../../platform/void/electron-main/codeUpdateMainService.js';
|
||||
import { ICodeUpdateService } from '../../platform/void/common/codeUpdateService.js';
|
||||
/**
|
||||
* The main VS Code application. There will only ever be one instance,
|
||||
* even if the user starts many instances (e.g. from the command line).
|
||||
@@ -514,7 +514,7 @@ export class CodeApplication extends Disposable {
|
||||
|
||||
//#endregion
|
||||
|
||||
// //#region Void IPC
|
||||
// //#region Code IPC
|
||||
// validatedIpcMain.handle('vscode:sendLLMMessage', async (event, data) => {
|
||||
// try {
|
||||
// await this.sendLLMMessage(data);
|
||||
@@ -1106,9 +1106,9 @@ export class CodeApplication extends Disposable {
|
||||
services.set(ITelemetryService, NullTelemetryService);
|
||||
}
|
||||
|
||||
// Void main process services (required for services with a channel for comm between browser and electron-main (node))
|
||||
// Code main process services (required for services with a channel for comm between browser and electron-main (node))
|
||||
services.set(IMetricsService, new SyncDescriptor(MetricsMainService, undefined, false));
|
||||
services.set(IVoidUpdateService, new SyncDescriptor(VoidMainUpdateService, undefined, false));
|
||||
services.set(ICodeUpdateService, new SyncDescriptor(CodeMainUpdateService, undefined, false));
|
||||
|
||||
// Default Extensions Profile Init
|
||||
services.set(IExtensionsProfileScannerService, new SyncDescriptor(ExtensionsProfileScannerService, undefined, true));
|
||||
@@ -1244,15 +1244,15 @@ export class CodeApplication extends Disposable {
|
||||
mainProcessElectronServer.registerChannel('logger', loggerChannel);
|
||||
sharedProcessClient.then(client => client.registerChannel('logger', loggerChannel));
|
||||
|
||||
// Void - use loggerChannel as reference
|
||||
// Code - use loggerChannel as reference
|
||||
const metricsChannel = ProxyChannel.fromService(accessor.get(IMetricsService), disposables);
|
||||
mainProcessElectronServer.registerChannel('void-channel-metrics', metricsChannel);
|
||||
mainProcessElectronServer.registerChannel('code-channel-metrics', metricsChannel);
|
||||
|
||||
const voidUpdatesChannel = ProxyChannel.fromService(accessor.get(IVoidUpdateService), disposables);
|
||||
mainProcessElectronServer.registerChannel('void-channel-update', voidUpdatesChannel);
|
||||
const codeUpdatesChannel = ProxyChannel.fromService(accessor.get(ICodeUpdateService), disposables);
|
||||
mainProcessElectronServer.registerChannel('code-channel-update', codeUpdatesChannel);
|
||||
|
||||
const llmMessageChannel = new LLMMessageChannel(accessor.get(IMetricsService));
|
||||
mainProcessElectronServer.registerChannel('void-channel-llmMessageService', llmMessageChannel);
|
||||
mainProcessElectronServer.registerChannel('code-channel-llmMessageService', llmMessageChannel);
|
||||
|
||||
// Extension Host Debug Broadcasting
|
||||
const electronExtensionHostDebugBroadcastChannel = new ElectronExtensionHostDebugBroadcastChannel(accessor.get(IWindowsMainService));
|
||||
|
||||
@@ -223,11 +223,11 @@ export class BaseEditorSimpleWorker implements IDisposable, IWorkerTextModelSync
|
||||
private static readonly _diffLimit = 100000;
|
||||
|
||||
public async $computeMoreMinimalEdits(modelUrl: string, edits: TextEdit[], pretty: boolean): Promise<TextEdit[]> {
|
||||
return this.$Void_computeMoreMinimalEdits(modelUrl, edits, pretty)
|
||||
return this.$Code_computeMoreMinimalEdits(modelUrl, edits, pretty)
|
||||
}
|
||||
|
||||
// Void added this as non async
|
||||
public $Void_computeMoreMinimalEdits(modelUrl: string, edits: TextEdit[], pretty: boolean): TextEdit[] {
|
||||
// Code added this as non async
|
||||
public $Code_computeMoreMinimalEdits(modelUrl: string, edits: TextEdit[], pretty: boolean): TextEdit[] {
|
||||
const model = this._getModel(modelUrl);
|
||||
if (!model) {
|
||||
return edits;
|
||||
|
||||
@@ -22,7 +22,7 @@ export class ExpandLineSelectionAction extends EditorAction {
|
||||
kbOpts: {
|
||||
weight: KeybindingWeight.EditorCore,
|
||||
kbExpr: EditorContextKeys.textInputFocus,
|
||||
primary: KeyMod.CtrlCmd | KeyCode.KeyM // Void changed this to Cmd+M
|
||||
primary: KeyMod.CtrlCmd | KeyCode.KeyM // Code changed this to Cmd+M
|
||||
},
|
||||
});
|
||||
}
|
||||
|
||||
@@ -418,7 +418,7 @@ suite('SnippetController2', function () {
|
||||
model.setValue('');
|
||||
editor.setSelection(new Selection(1, 1, 1, 1));
|
||||
|
||||
ctrl.insert('.REGION ${2:FUNCTION_NAME}\nCREATE.FUNCTION ${1:VOID} ${2:FUNCTION_NAME}(${3:})\n\t${4:}\nEND\n.ENDREGION$0');
|
||||
ctrl.insert('.REGION ${2:FUNCTION_NAME}\nCREATE.FUNCTION ${1:CODE} ${2:FUNCTION_NAME}(${3:})\n\t${4:}\nEND\n.ENDREGION$0');
|
||||
assertSelections(editor, new Selection(2, 17, 2, 21));
|
||||
|
||||
ctrl.next();
|
||||
@@ -438,7 +438,7 @@ suite('SnippetController2', function () {
|
||||
model.setValue('');
|
||||
editor.setSelection(new Selection(1, 1, 1, 1));
|
||||
|
||||
ctrl.insert('.REGION ${2:FUNCTION_NAME}\nCREATE.FUNCTION ${1:VOID} ${2:FUNCTION_NAME}(${3:})\n\t${4:}\nEND\n.ENDREGION$0');
|
||||
ctrl.insert('.REGION ${2:FUNCTION_NAME}\nCREATE.FUNCTION ${1:CODE} ${2:FUNCTION_NAME}(${3:})\n\t${4:}\nEND\n.ENDREGION$0');
|
||||
assertSelections(editor, new Selection(2, 17, 2, 21));
|
||||
|
||||
ctrl.next();
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
// llmMessage
|
||||
import '../common/llmMessageService.js'
|
||||
|
||||
// voidSettings
|
||||
import '../common/voidSettingsService.js'
|
||||
// codeSettings
|
||||
import '../common/codeSettingsService.js'
|
||||
|
||||
// refreshModel
|
||||
import '../common/refreshModelService.js'
|
||||
@@ -18,4 +18,4 @@ import '../common/refreshModelService.js'
|
||||
import '../common/metricsService.js'
|
||||
|
||||
// updates
|
||||
import '../common/voidUpdateService.js'
|
||||
import '../common/codeUpdateService.js'
|
||||
@@ -11,7 +11,7 @@ import { registerSingleton, InstantiationType } from '../../instantiation/common
|
||||
import { createDecorator } from '../../instantiation/common/instantiation.js';
|
||||
import { IStorageService, StorageScope, StorageTarget } from '../../storage/common/storage.js';
|
||||
import { IMetricsService } from './metricsService.js';
|
||||
import { defaultSettingsOfProvider, FeatureName, ProviderName, ModelSelectionOfFeature, SettingsOfProvider, SettingName, providerNames, ModelSelection, modelSelectionsEqual, featureNames, modelInfoOfDefaultNames, VoidModelInfo, GlobalSettings, GlobalSettingName, defaultGlobalSettings } from './voidSettingsTypes.js';
|
||||
import { defaultSettingsOfProvider, FeatureName, ProviderName, ModelSelectionOfFeature, SettingsOfProvider, SettingName, providerNames, ModelSelection, modelSelectionsEqual, featureNames, modelInfoOfDefaultNames, CodeModelInfo, GlobalSettings, GlobalSettingName, defaultGlobalSettings } from './codeSettingsTypes.js';
|
||||
|
||||
|
||||
const STORAGE_KEY = 'void.settingsServiceStorage'
|
||||
@@ -34,7 +34,7 @@ export type ModelOption = { name: string, selection: ModelSelection }
|
||||
|
||||
|
||||
|
||||
export type VoidSettingsState = {
|
||||
export type CodeSettingsState = {
|
||||
readonly settingsOfProvider: SettingsOfProvider; // optionsOfProvider
|
||||
readonly modelSelectionOfFeature: ModelSelectionOfFeature; // stateOfFeature
|
||||
readonly globalSettings: GlobalSettings;
|
||||
@@ -42,13 +42,13 @@ export type VoidSettingsState = {
|
||||
readonly _modelOptions: ModelOption[] // computed based on the two above items
|
||||
}
|
||||
|
||||
type RealVoidSettings = Exclude<keyof VoidSettingsState, '_modelOptions'>
|
||||
type EventProp<T extends RealVoidSettings = RealVoidSettings> = T extends 'globalSettings' ? [T, keyof VoidSettingsState[T]] : T | 'all'
|
||||
type RealCodeSettings = Exclude<keyof CodeSettingsState, '_modelOptions'>
|
||||
type EventProp<T extends RealCodeSettings = RealCodeSettings> = T extends 'globalSettings' ? [T, keyof CodeSettingsState[T]] : T | 'all'
|
||||
|
||||
|
||||
export interface IVoidSettingsService {
|
||||
export interface ICodeSettingsService {
|
||||
readonly _serviceBrand: undefined;
|
||||
readonly state: VoidSettingsState; // in order to play nicely with react, you should immutably change state
|
||||
readonly state: CodeSettingsState; // in order to play nicely with react, you should immutably change state
|
||||
readonly waitForInitState: Promise<void>;
|
||||
|
||||
onDidChangeState: Event<EventProp>;
|
||||
@@ -79,7 +79,7 @@ let _computeModelOptions = (settingsOfProvider: SettingsOfProvider) => {
|
||||
|
||||
|
||||
const defaultState = () => {
|
||||
const d: VoidSettingsState = {
|
||||
const d: CodeSettingsState = {
|
||||
settingsOfProvider: deepClone(defaultSettingsOfProvider),
|
||||
modelSelectionOfFeature: { 'Ctrl+L': null, 'Ctrl+K': null, 'Autocomplete': null, 'FastApply': null },
|
||||
globalSettings: deepClone(defaultGlobalSettings),
|
||||
@@ -89,14 +89,14 @@ const defaultState = () => {
|
||||
}
|
||||
|
||||
|
||||
export const IVoidSettingsService = createDecorator<IVoidSettingsService>('VoidSettingsService');
|
||||
class VoidSettingsService extends Disposable implements IVoidSettingsService {
|
||||
export const ICodeSettingsService = createDecorator<ICodeSettingsService>('CodeSettingsService');
|
||||
class CodeSettingsService extends Disposable implements ICodeSettingsService {
|
||||
_serviceBrand: undefined;
|
||||
|
||||
private readonly _onDidChangeState = new Emitter<EventProp>();
|
||||
readonly onDidChangeState: Event<EventProp> = this._onDidChangeState.event; // this is primarily for use in react, so react can listen + update on state changes
|
||||
|
||||
state: VoidSettingsState;
|
||||
state: CodeSettingsState;
|
||||
waitForInitState: Promise<void> // await this if you need a valid state initially
|
||||
|
||||
constructor(
|
||||
@@ -151,7 +151,7 @@ class VoidSettingsService extends Disposable implements IVoidSettingsService {
|
||||
})
|
||||
}
|
||||
|
||||
private async _readState(): Promise<VoidSettingsState> {
|
||||
private async _readState(): Promise<CodeSettingsState> {
|
||||
const encryptedState = this._storageService.get(STORAGE_KEY, StorageScope.APPLICATION)
|
||||
|
||||
if (!encryptedState)
|
||||
@@ -186,7 +186,7 @@ class VoidSettingsService extends Disposable implements IVoidSettingsService {
|
||||
const modelsListChanged = settingName === 'models' || settingName === '_enabled'
|
||||
const newModelsList = modelsListChanged ? _computeModelOptions(newSettingsOfProvider) : this.state._modelOptions
|
||||
|
||||
const newState: VoidSettingsState = {
|
||||
const newState: CodeSettingsState = {
|
||||
modelSelectionOfFeature: newModelSelectionOfFeature,
|
||||
settingsOfProvider: newSettingsOfProvider,
|
||||
globalSettings: newGlobalSettings,
|
||||
@@ -218,7 +218,7 @@ class VoidSettingsService extends Disposable implements IVoidSettingsService {
|
||||
|
||||
|
||||
setGlobalSetting: SetGlobalSettingFn = async (settingName, newVal) => {
|
||||
const newState: VoidSettingsState = {
|
||||
const newState: CodeSettingsState = {
|
||||
...this.state,
|
||||
globalSettings: {
|
||||
...this.state.globalSettings,
|
||||
@@ -233,7 +233,7 @@ class VoidSettingsService extends Disposable implements IVoidSettingsService {
|
||||
|
||||
|
||||
setModelSelectionOfFeature: SetModelSelectionOfFeatureFn = async (featureName, newVal, options) => {
|
||||
const newState: VoidSettingsState = {
|
||||
const newState: CodeSettingsState = {
|
||||
...this.state,
|
||||
modelSelectionOfFeature: {
|
||||
...this.state.modelSelectionOfFeature,
|
||||
@@ -282,7 +282,7 @@ class VoidSettingsService extends Disposable implements IVoidSettingsService {
|
||||
const modelIdx = models.findIndex(m => m.modelName === modelName)
|
||||
if (modelIdx === -1) return
|
||||
const newIsHidden = !models[modelIdx].isHidden
|
||||
const newModels: VoidModelInfo[] = [
|
||||
const newModels: CodeModelInfo[] = [
|
||||
...models.slice(0, modelIdx),
|
||||
{ ...models[modelIdx], isHidden: newIsHidden },
|
||||
...models.slice(modelIdx + 1, Infinity)
|
||||
@@ -323,4 +323,4 @@ class VoidSettingsService extends Disposable implements IVoidSettingsService {
|
||||
}
|
||||
|
||||
|
||||
registerSingleton(IVoidSettingsService, VoidSettingsService, InstantiationType.Eager);
|
||||
registerSingleton(ICodeSettingsService, CodeSettingsService, InstantiationType.Eager);
|
||||
@@ -7,7 +7,7 @@
|
||||
|
||||
|
||||
|
||||
export type VoidModelInfo = {
|
||||
export type CodeModelInfo = {
|
||||
modelName: string,
|
||||
isDefault: boolean, // whether or not it's a default for its provider
|
||||
isHidden: boolean, // whether or not the user is hiding it
|
||||
@@ -15,7 +15,7 @@ export type VoidModelInfo = {
|
||||
}
|
||||
|
||||
// creates `modelInfo` from `modelNames`
|
||||
export const modelInfoOfDefaultNames = (modelNames: string[], options?: { isAutodetected: true, existingModels: VoidModelInfo[] }): VoidModelInfo[] => {
|
||||
export const modelInfoOfDefaultNames = (modelNames: string[], options?: { isAutodetected: true, existingModels: CodeModelInfo[] }): CodeModelInfo[] => {
|
||||
|
||||
const { isAutodetected, existingModels } = options ?? {}
|
||||
|
||||
@@ -30,7 +30,7 @@ export const modelInfoOfDefaultNames = (modelNames: string[], options?: { isAuto
|
||||
|
||||
} else { // settings if there are existing models (keep existing `isHidden` property)
|
||||
|
||||
const existingModelsMap: Record<string, VoidModelInfo> = {}
|
||||
const existingModelsMap: Record<string, CodeModelInfo> = {}
|
||||
for (const existingModel of existingModels) {
|
||||
existingModelsMap[existingModel.modelName] = existingModel
|
||||
}
|
||||
@@ -189,7 +189,7 @@ export const customSettingNamesOfProvider = (providerName: ProviderName) => {
|
||||
|
||||
type CommonProviderSettings = {
|
||||
_enabled: boolean | undefined, // undefined initially, computed when user types in all fields
|
||||
models: VoidModelInfo[],
|
||||
models: CodeModelInfo[],
|
||||
}
|
||||
|
||||
export type SettingsForProvider<providerName extends ProviderName> = CustomProviderSettings<providerName> & CommonProviderSettings
|
||||
@@ -10,36 +10,36 @@ import { InstantiationType, registerSingleton } from '../../instantiation/common
|
||||
|
||||
|
||||
|
||||
export interface IVoidUpdateService {
|
||||
export interface ICodeUpdateService {
|
||||
readonly _serviceBrand: undefined;
|
||||
check: () => Promise<{ hasUpdate: true, message: string } | { hasUpdate: false } | null>;
|
||||
}
|
||||
|
||||
|
||||
export const IVoidUpdateService = createDecorator<IVoidUpdateService>('VoidUpdateService');
|
||||
export const ICodeUpdateService = createDecorator<ICodeUpdateService>('CodeUpdateService');
|
||||
|
||||
|
||||
// implemented by calling channel
|
||||
export class VoidUpdateService implements IVoidUpdateService {
|
||||
export class CodeUpdateService implements ICodeUpdateService {
|
||||
|
||||
readonly _serviceBrand: undefined;
|
||||
private readonly voidUpdateService: IVoidUpdateService;
|
||||
private readonly codeUpdateService: ICodeUpdateService;
|
||||
|
||||
constructor(
|
||||
@IMainProcessService mainProcessService: IMainProcessService, // (only usable on client side)
|
||||
) {
|
||||
// creates an IPC proxy to use metricsMainService.ts
|
||||
this.voidUpdateService = ProxyChannel.toService<IVoidUpdateService>(mainProcessService.getChannel('void-channel-update'));
|
||||
this.codeUpdateService = ProxyChannel.toService<ICodeUpdateService>(mainProcessService.getChannel('code-channel-update'));
|
||||
}
|
||||
|
||||
|
||||
// anything transmitted over a channel must be async even if it looks like it doesn't have to be
|
||||
check: IVoidUpdateService['check'] = async () => {
|
||||
const res = await this.voidUpdateService.check()
|
||||
check: ICodeUpdateService['check'] = async () => {
|
||||
const res = await this.codeUpdateService.check()
|
||||
return res
|
||||
}
|
||||
}
|
||||
|
||||
registerSingleton(IVoidUpdateService, VoidUpdateService, InstantiationType.Eager);
|
||||
registerSingleton(ICodeUpdateService, CodeUpdateService, InstantiationType.Eager);
|
||||
|
||||
|
||||
@@ -11,7 +11,7 @@ import { generateUuid } from '../../../base/common/uuid.js';
|
||||
import { createDecorator } from '../../instantiation/common/instantiation.js';
|
||||
import { Event } from '../../../base/common/event.js';
|
||||
import { Disposable } from '../../../base/common/lifecycle.js';
|
||||
import { IVoidSettingsService } from './voidSettingsService.js';
|
||||
import { ICodeSettingsService } from './codeSettingsService.js';
|
||||
// import { INotificationService } from '../../notification/common/notification.js';
|
||||
|
||||
// calls channel to implement features
|
||||
@@ -46,14 +46,14 @@ export class LLMMessageService extends Disposable implements ILLMMessageService
|
||||
|
||||
constructor(
|
||||
@IMainProcessService private readonly mainProcessService: IMainProcessService, // used as a renderer (only usable on client side)
|
||||
@IVoidSettingsService private readonly voidSettingsService: IVoidSettingsService,
|
||||
@ICodeSettingsService private readonly codeSettingsService: ICodeSettingsService,
|
||||
// @INotificationService private readonly notificationService: INotificationService,
|
||||
) {
|
||||
super()
|
||||
|
||||
// const service = ProxyChannel.toService<LLMMessageChannel>(mainProcessService.getChannel('void-channel-sendLLMMessage')); // lets you call it like a service
|
||||
// const service = ProxyChannel.toService<LLMMessageChannel>(mainProcessService.getChannel('code-channel-sendLLMMessage')); // lets you call it like a service
|
||||
// see llmMessageChannel.ts
|
||||
this.channel = this.mainProcessService.getChannel('void-channel-llmMessageService')
|
||||
this.channel = this.mainProcessService.getChannel('code-channel-llmMessageService')
|
||||
|
||||
// .listen sets up an IPC channel and takes a few ms, so we set up listeners immediately and add hooks to them instead
|
||||
// llm
|
||||
@@ -91,7 +91,7 @@ export class LLMMessageService extends Disposable implements ILLMMessageService
|
||||
const { useProviderFor: featureName } = proxyParams
|
||||
|
||||
// end early if no provider
|
||||
const modelSelection = this.voidSettingsService.state.modelSelectionOfFeature[featureName]
|
||||
const modelSelection = this.codeSettingsService.state.modelSelectionOfFeature[featureName]
|
||||
if (modelSelection === null) {
|
||||
onError({ message: 'Please add a Provider in Settings!', fullError: null })
|
||||
return null
|
||||
@@ -105,8 +105,8 @@ export class LLMMessageService extends Disposable implements ILLMMessageService
|
||||
this.onFinalMessageHooks_llm[requestId] = onFinalMessage
|
||||
this.onErrorHooks_llm[requestId] = onError
|
||||
|
||||
const { aiInstructions } = this.voidSettingsService.state.globalSettings
|
||||
const { settingsOfProvider } = this.voidSettingsService.state
|
||||
const { aiInstructions } = this.codeSettingsService.state.globalSettings
|
||||
const { settingsOfProvider } = this.codeSettingsService.state
|
||||
|
||||
// params will be stripped of all its functions over the IPC channel
|
||||
this.channel.call('sendLLMMessage', {
|
||||
@@ -131,7 +131,7 @@ export class LLMMessageService extends Disposable implements ILLMMessageService
|
||||
ollamaList = (params: ServiceModelListParams<OllamaModelResponse>) => {
|
||||
const { onSuccess, onError, ...proxyParams } = params
|
||||
|
||||
const { settingsOfProvider } = this.voidSettingsService.state
|
||||
const { settingsOfProvider } = this.codeSettingsService.state
|
||||
|
||||
// add state for request id
|
||||
const requestId_ = generateUuid();
|
||||
@@ -149,7 +149,7 @@ export class LLMMessageService extends Disposable implements ILLMMessageService
|
||||
openAICompatibleList = (params: ServiceModelListParams<OpenaiCompatibleModelResponse>) => {
|
||||
const { onSuccess, onError, ...proxyParams } = params
|
||||
|
||||
const { settingsOfProvider } = this.voidSettingsService.state
|
||||
const { settingsOfProvider } = this.codeSettingsService.state
|
||||
|
||||
// add state for request id
|
||||
const requestId_ = generateUuid();
|
||||
@@ -3,7 +3,7 @@
|
||||
* Licensed under the Apache License, Version 2.0. See LICENSE.txt for more information.
|
||||
*--------------------------------------------------------------------------------------*/
|
||||
|
||||
import { ProviderName, SettingsOfProvider } from './voidSettingsTypes.js'
|
||||
import { ProviderName, SettingsOfProvider } from './codeSettingsTypes.js'
|
||||
|
||||
|
||||
export const errorDetails = (fullError: Error | null): string | null => {
|
||||
@@ -31,7 +31,7 @@ export class MetricsService implements IMetricsService {
|
||||
@IMainProcessService mainProcessService: IMainProcessService // (only usable on client side)
|
||||
) {
|
||||
// creates an IPC proxy to use metricsMainService.ts
|
||||
this.metricsService = ProxyChannel.toService<IMetricsService>(mainProcessService.getChannel('void-channel-metrics'));
|
||||
this.metricsService = ProxyChannel.toService<IMetricsService>(mainProcessService.getChannel('code-channel-metrics'));
|
||||
}
|
||||
|
||||
// call capture on the channel
|
||||
@@ -52,9 +52,9 @@ registerSingleton(IMetricsService, MetricsService, InstantiationType.Eager);
|
||||
registerAction2(class extends Action2 {
|
||||
constructor() {
|
||||
super({
|
||||
id: 'voidDebugInfo',
|
||||
id: 'codeDebugInfo',
|
||||
f1: true,
|
||||
title: localize2('voidMetricsDebug', 'Void: Log Debug Info'),
|
||||
title: localize2('voidMetricsDebug', 'Code: Log Debug Info'),
|
||||
});
|
||||
}
|
||||
async run(accessor: ServicesAccessor): Promise<void> {
|
||||
@@ -63,6 +63,6 @@ registerAction2(class extends Action2 {
|
||||
|
||||
const debugProperties = await metricsService.getDebuggingProperties()
|
||||
console.log('Metrics:', debugProperties)
|
||||
notifService.info(`Void Debug info:\n${JSON.stringify(debugProperties, null, 2)}`)
|
||||
notifService.info(`Code Debug info:\n${JSON.stringify(debugProperties, null, 2)}`)
|
||||
}
|
||||
})
|
||||
@@ -5,11 +5,11 @@
|
||||
|
||||
import { createDecorator } from '../../instantiation/common/instantiation.js';
|
||||
import { InstantiationType, registerSingleton } from '../../instantiation/common/extensions.js';
|
||||
import { IVoidSettingsService } from './voidSettingsService.js';
|
||||
import { ICodeSettingsService } from './codeSettingsService.js';
|
||||
import { ILLMMessageService } from './llmMessageService.js';
|
||||
import { Emitter, Event } from '../../../base/common/event.js';
|
||||
import { Disposable, IDisposable } from '../../../base/common/lifecycle.js';
|
||||
import { RefreshableProviderName, refreshableProviderNames, SettingsOfProvider } from './voidSettingsTypes.js';
|
||||
import { RefreshableProviderName, refreshableProviderNames, SettingsOfProvider } from './codeSettingsTypes.js';
|
||||
import { OllamaModelResponse, OpenaiCompatibleModelResponse } from './llmMessageTypes.js';
|
||||
|
||||
|
||||
@@ -78,7 +78,7 @@ export class RefreshModelService extends Disposable implements IRefreshModelServ
|
||||
|
||||
|
||||
constructor(
|
||||
@IVoidSettingsService private readonly voidSettingsService: IVoidSettingsService,
|
||||
@ICodeSettingsService private readonly codeSettingsService: ICodeSettingsService,
|
||||
@ILLMMessageService private readonly llmMessageService: ILLMMessageService,
|
||||
) {
|
||||
super()
|
||||
@@ -91,18 +91,18 @@ export class RefreshModelService extends Disposable implements IRefreshModelServ
|
||||
disposables.forEach(d => d.dispose())
|
||||
disposables.clear()
|
||||
|
||||
if (!voidSettingsService.state.globalSettings.autoRefreshModels) return
|
||||
if (!codeSettingsService.state.globalSettings.autoRefreshModels) return
|
||||
|
||||
for (const providerName of refreshableProviderNames) {
|
||||
|
||||
// const { _enabled: enabled } = this.voidSettingsService.state.settingsOfProvider[providerName]
|
||||
// const { _enabled: enabled } = this.codeSettingsService.state.settingsOfProvider[providerName]
|
||||
this.startRefreshingModels(providerName, autoOptions)
|
||||
|
||||
// every time providerName.enabled changes, refresh models too, like a useEffect
|
||||
let relevantVals = () => refreshBasedOn[providerName].map(settingName => voidSettingsService.state.settingsOfProvider[providerName][settingName])
|
||||
let relevantVals = () => refreshBasedOn[providerName].map(settingName => codeSettingsService.state.settingsOfProvider[providerName][settingName])
|
||||
let prevVals = relevantVals() // each iteration of a for loop has its own context and vars, so this is ok
|
||||
disposables.add(
|
||||
voidSettingsService.onDidChangeState(() => { // we might want to debounce this
|
||||
codeSettingsService.onDidChangeState(() => { // we might want to debounce this
|
||||
const newVals = relevantVals()
|
||||
if (!eq(prevVals, newVals)) {
|
||||
|
||||
@@ -129,10 +129,10 @@ export class RefreshModelService extends Disposable implements IRefreshModelServ
|
||||
}
|
||||
|
||||
// on mount (when get init settings state), and if a relevant feature flag changes, start refreshing models
|
||||
voidSettingsService.waitForInitState.then(() => {
|
||||
codeSettingsService.waitForInitState.then(() => {
|
||||
initializeAutoPollingAndOnChange()
|
||||
this._register(
|
||||
voidSettingsService.onDidChangeState((type) => { if (typeof type === 'object' && type[1] === 'autoRefreshModels') initializeAutoPollingAndOnChange() })
|
||||
codeSettingsService.onDidChangeState((type) => { if (typeof type === 'object' && type[1] === 'autoRefreshModels') initializeAutoPollingAndOnChange() })
|
||||
)
|
||||
})
|
||||
|
||||
@@ -151,7 +151,7 @@ export class RefreshModelService extends Disposable implements IRefreshModelServ
|
||||
this._setRefreshState(providerName, 'refreshing', options)
|
||||
|
||||
const autoPoll = () => {
|
||||
if (this.voidSettingsService.state.globalSettings.autoRefreshModels) {
|
||||
if (this.codeSettingsService.state.globalSettings.autoRefreshModels) {
|
||||
// resume auto-polling
|
||||
const timeoutId = setTimeout(() => this.startRefreshingModels(providerName, autoOptions), REFRESH_INTERVAL)
|
||||
this._setTimeoutId(providerName, timeoutId)
|
||||
@@ -165,7 +165,7 @@ export class RefreshModelService extends Disposable implements IRefreshModelServ
|
||||
onSuccess: ({ models }) => {
|
||||
|
||||
// set the models to the detected models
|
||||
this.voidSettingsService.setAutodetectedModels(
|
||||
this.codeSettingsService.setAutodetectedModels(
|
||||
providerName,
|
||||
models.map(model => {
|
||||
if (providerName === 'ollama') return (model as OllamaModelResponse).name;
|
||||
@@ -175,7 +175,7 @@ export class RefreshModelService extends Disposable implements IRefreshModelServ
|
||||
{ enableProviderOnSuccess: options.enableProviderOnSuccess, hideRefresh: options.doNotFire }
|
||||
)
|
||||
|
||||
if (options.enableProviderOnSuccess) this.voidSettingsService.setSettingOfProvider(providerName, '_enabled', true)
|
||||
if (options.enableProviderOnSuccess) this.codeSettingsService.setSettingOfProvider(providerName, '_enabled', true)
|
||||
|
||||
this._setRefreshState(providerName, 'finished', options)
|
||||
autoPoll()
|
||||
@@ -8,11 +8,11 @@ import { IEnvironmentMainService } from '../../environment/electron-main/environ
|
||||
|
||||
import { IProductService } from '../../product/common/productService.js';
|
||||
|
||||
import { IVoidUpdateService } from '../common/voidUpdateService.js';
|
||||
import { ICodeUpdateService } from '../common/codeUpdateService.js';
|
||||
|
||||
|
||||
|
||||
export class VoidMainUpdateService extends Disposable implements IVoidUpdateService {
|
||||
export class CodeMainUpdateService extends Disposable implements ICodeUpdateService {
|
||||
_serviceBrand: undefined;
|
||||
|
||||
constructor(
|
||||
@@ -30,7 +30,7 @@ export class VoidMainUpdateService extends Disposable implements IVoidUpdateServ
|
||||
}
|
||||
|
||||
try {
|
||||
const res = await fetch(`https://updates.voideditor.dev/api/v0/${this._productService.commit}`)
|
||||
const res = await fetch(`https://updates.code.hanzo.ai/api/v0/${this._productService.commit}`)
|
||||
const resJSON = await res.json()
|
||||
|
||||
if (!resJSON) return null
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
import Anthropic from '@anthropic-ai/sdk';
|
||||
import { _InternalSendLLMMessageFnType } from '../../common/llmMessageTypes.js';
|
||||
import { anthropicMaxPossibleTokens } from '../../common/voidSettingsTypes.js';
|
||||
import { anthropicMaxPossibleTokens } from '../../common/codeSettingsTypes.js';
|
||||
|
||||
export const sendAnthropicMsg: _InternalSendLLMMessageFnType = ({ messages, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter }) => {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
import { Ollama } from 'ollama';
|
||||
import { _InternalModelListFnType, _InternalOllamaFIMMessageFnType, _InternalSendLLMMessageFnType, OllamaModelResponse } from '../../common/llmMessageTypes.js';
|
||||
import { defaultProviderSettings } from '../../common/voidSettingsTypes.js';
|
||||
import { defaultProviderSettings } from '../../common/codeSettingsTypes.js';
|
||||
|
||||
export const ollamaList: _InternalModelListFnType<OllamaModelResponse> = async ({ onSuccess: onSuccess_, onError: onError_, settingsOfProvider }) => {
|
||||
|
||||
@@ -20,7 +20,7 @@ export const ollamaList: _InternalModelListFnType<OllamaModelResponse> = async (
|
||||
try {
|
||||
const thisConfig = settingsOfProvider.ollama
|
||||
// if endpoint is empty, normally ollama will send to 11434, but we want it to fail - the user should type it in
|
||||
if (!thisConfig.endpoint) throw new Error(`Ollama Endpoint was empty (please enter ${defaultProviderSettings.ollama.endpoint} in Void if you want the default url).`)
|
||||
if (!thisConfig.endpoint) throw new Error(`Ollama Endpoint was empty (please enter ${defaultProviderSettings.ollama.endpoint} in Code if you want the default url).`)
|
||||
|
||||
const ollama = new Ollama({ host: thisConfig.endpoint })
|
||||
ollama.list()
|
||||
@@ -63,8 +63,8 @@ export const sendOpenAIMsg: _InternalSendLLMMessageFnType = ({ messages, onText,
|
||||
openai = new OpenAI({
|
||||
baseURL: 'https://openrouter.ai/api/v1', apiKey: thisConfig.apiKey, dangerouslyAllowBrowser: true,
|
||||
defaultHeaders: {
|
||||
'HTTP-Referer': 'https://voideditor.com', // Optional, for including your app on openrouter.ai rankings.
|
||||
'X-Title': 'Void Editor', // Optional. Shows in rankings on openrouter.ai.
|
||||
'HTTP-Referer': 'https://code.hanzo.ai', // Optional, for including your app on openrouter.ai rankings.
|
||||
'X-Title': 'Code Editor', // Optional. Shows in rankings on openrouter.ai.
|
||||
},
|
||||
});
|
||||
options = { model: modelName, messages: messages, stream: true, /*max_completion_tokens: parseMaxTokensStr(thisConfig.maxTokens)*/ }
|
||||
@@ -149,7 +149,7 @@ export const sendLLMMessage = ({
|
||||
sendMistralMsg({ messages: messagesArr, onText, onFinalMessage, onError, settingsOfProvider, modelName, _setAborter, providerName });
|
||||
break;
|
||||
default:
|
||||
onError({ message: `Error: Void provider was "${providerName}", which is not recognized.`, fullError: null })
|
||||
onError({ message: `Error: Code provider was "${providerName}", which is not recognized.`, fullError: null })
|
||||
break;
|
||||
}
|
||||
}
|
||||
@@ -82,7 +82,7 @@ export class LLMMessageChannel implements IServerChannel {
|
||||
this._callOpenAICompatibleList(params)
|
||||
}
|
||||
else {
|
||||
throw new Error(`Void sendLLM: command "${command}" not recognized.`)
|
||||
throw new Error(`Code sendLLM: command "${command}" not recognized.`)
|
||||
}
|
||||
}
|
||||
catch (e) {
|
||||
@@ -38,7 +38,7 @@ export class MetricsMainService extends Disposable implements IMetricsService {
|
||||
private _initProperties: object = {}
|
||||
|
||||
|
||||
// helper - looks like this is stored in a .vscdb file in ~/Library/Application Support/Void
|
||||
// helper - looks like this is stored in a .vscdb file in ~/Library/Application Support/Code
|
||||
private _memoStorage(key: string, target: StorageTarget, setValIfNotExist?: string) {
|
||||
const currVal = this._appStorage.get(key, StorageScope.APPLICATION)
|
||||
if (currVal !== undefined) return currVal
|
||||
@@ -120,7 +120,7 @@ export class MetricsMainService extends Disposable implements IMetricsService {
|
||||
}
|
||||
this.client.identify(identifyMessage)
|
||||
|
||||
console.log('Void posthog metrics info:', JSON.stringify(identifyMessage, null, 2))
|
||||
console.log('Code posthog metrics info:', JSON.stringify(identifyMessage, null, 2))
|
||||
}
|
||||
|
||||
|
||||
@@ -403,7 +403,7 @@ function isVersionValid(currentVersion: string, date: ProductDate, requestedVers
|
||||
}
|
||||
|
||||
if (!isValidVersion(currentVersion, date, desiredVersion)) {
|
||||
// Void - ignore not compatible
|
||||
// Code - ignore not compatible
|
||||
notices.push(nls.localize('versionMismatch', "Extension is not compatible with Code {0}. Extension requires: {1}.", currentVersion, requestedVersion));
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -65,7 +65,7 @@ export const enum KeybindingWeight {
|
||||
WorkbenchContrib = 200,
|
||||
BuiltinExtension = 300,
|
||||
ExternalExtension = 400,
|
||||
VoidExtension = 605, // Void - must trump any external extension
|
||||
CodeExtension = 605, // Code - must trump any external extension
|
||||
}
|
||||
|
||||
export interface ICommandAndKeybindingRule extends IKeybindingRule {
|
||||
|
||||
@@ -31,7 +31,7 @@ export class ServerTelemetryService extends TelemetryService implements IServerT
|
||||
}
|
||||
|
||||
override publicLog(eventName: string, data?: ITelemetryData) {
|
||||
// Void commented this out
|
||||
// Code commented this out
|
||||
// if (this._injectedTelemetryLevel < TelemetryLevel.USAGE) {
|
||||
// return;
|
||||
// }
|
||||
@@ -39,12 +39,12 @@ export class ServerTelemetryService extends TelemetryService implements IServerT
|
||||
}
|
||||
|
||||
override publicLog2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck<T, E>) {
|
||||
// Void commented this out
|
||||
// Code commented this out
|
||||
// return this.publicLog(eventName, data as ITelemetryData | undefined);
|
||||
}
|
||||
|
||||
override publicLogError(errorEventName: string, data?: ITelemetryData) {
|
||||
// Void commented this out
|
||||
// Code commented this out
|
||||
// if (this._injectedTelemetryLevel < TelemetryLevel.ERROR) {
|
||||
// return Promise.resolve(undefined);
|
||||
// }
|
||||
@@ -52,7 +52,7 @@ export class ServerTelemetryService extends TelemetryService implements IServerT
|
||||
}
|
||||
|
||||
override publicLogError2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck<T, E>) {
|
||||
// Void commented this out
|
||||
// Code commented this out
|
||||
// return this.publicLogError(eventName, data as ITelemetryData | undefined);
|
||||
}
|
||||
|
||||
|
||||
@@ -122,7 +122,7 @@ export class TelemetryService implements ITelemetryService {
|
||||
this._disposables.dispose();
|
||||
}
|
||||
|
||||
// Void commented this out
|
||||
// Code commented this out
|
||||
// private _log(eventName: string, eventLevel: TelemetryLevel, data?: ITelemetryData) {
|
||||
// // don't send events when the user is optout
|
||||
// if (this._telemetryLevel < eventLevel) {
|
||||
@@ -151,7 +151,7 @@ export class TelemetryService implements ITelemetryService {
|
||||
}
|
||||
|
||||
publicLogError(errorEventName: string, data?: ITelemetryData) {
|
||||
// Void commented this out
|
||||
// Code commented this out
|
||||
// if (!this._sendErrorTelemetry) {
|
||||
// return;
|
||||
// }
|
||||
@@ -161,7 +161,7 @@ export class TelemetryService implements ITelemetryService {
|
||||
}
|
||||
|
||||
publicLogError2<E extends ClassifiedEvent<OmitMetadata<T>> = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck<T, E>) {
|
||||
// Void commented this out
|
||||
// Code commented this out
|
||||
// this.publicLogError(eventName, data as ITelemetryData);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,10 +16,10 @@ import { IRequestService } from '../../request/common/request.js';
|
||||
import { AvailableForDownload, DisablementReason, IUpdateService, State, StateType, UpdateType } from '../common/update.js';
|
||||
|
||||
export function createUpdateURL(platform: string, quality: string, productService: IProductService): string {
|
||||
// return `https://voideditor.dev/api/update/${platform}/stable`;
|
||||
// return `https://code.hanzo.ai/api/update/${platform}/stable`;
|
||||
// return `${productService.updateUrl}/api/update/${platform}/${quality}/${productService.commit}`;
|
||||
// https://github.com/VSCodium/update-api
|
||||
return `https://updates.voideditor.dev/api/update/${platform}/${quality}/${productService.commit}`;
|
||||
return `https://updates.code.hanzo.ai/api/update/${platform}/${quality}/${productService.commit}`;
|
||||
}
|
||||
|
||||
export type UpdateNotAvailableClassification = {
|
||||
@@ -90,7 +90,7 @@ export abstract class AbstractUpdateService implements IUpdateService {
|
||||
this.setState(State.Disabled(DisablementReason.ManuallyDisabled));
|
||||
|
||||
|
||||
// Void - temporarily disabled while we figure out how to do this the right way
|
||||
// Code - temporarily disabled while we figure out how to do this the right way
|
||||
|
||||
// this.setState(State.Idle(this.getUpdateType()));
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ import './mainThreadProfileContentHandlers.js';
|
||||
import './mainThreadAiRelatedInformation.js';
|
||||
import './mainThreadAiEmbeddingVector.js';
|
||||
|
||||
// Void added this:
|
||||
// Code added this:
|
||||
import './mainThreadInlineDiff.js';
|
||||
|
||||
export class ExtensionPoints implements IWorkbenchContribution {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// Void created this file
|
||||
// Code created this file
|
||||
// it comes from mainThreadCodeInsets.ts
|
||||
|
||||
import { Disposable } from '../../../base/common/lifecycle.js';
|
||||
|
||||
@@ -222,7 +222,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
|
||||
const extHostSpeech = rpcProtocol.set(ExtHostContext.ExtHostSpeech, new ExtHostSpeech(rpcProtocol));
|
||||
const extHostEmbeddings = rpcProtocol.set(ExtHostContext.ExtHostEmbeddings, new ExtHostEmbeddings(rpcProtocol));
|
||||
|
||||
// Void added this:
|
||||
// Code added this:
|
||||
const extHostInlineDiff = rpcProtocol.set(ExtHostContext.ExtHostInlineDiff, new ExtHostInlineDiff(rpcProtocol.getProxy(MainContext.MainThreadInlineDiff), extHostEditors));
|
||||
|
||||
// Check that no named customers are missing
|
||||
@@ -558,13 +558,13 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
|
||||
return extHostLanguageFeatures.registerCodeLensProvider(extension, checkSelector(selector), provider);
|
||||
},
|
||||
|
||||
// Void added addInlineDiff here:
|
||||
// Code added addInlineDiff here:
|
||||
addInlineDiff(editor: vscode.TextEditor, originalText: string, modifiedRange: vscode.Range): void {
|
||||
extHostInlineDiff.addDiff(editor, originalText, modifiedRange)
|
||||
},
|
||||
|
||||
// Void added this (I think will need to add this back when add ctrl+K)
|
||||
// registerVoidCtrlKProvider(selector: vscode.DocumentSelector, provider: vscode.CodeLensProvider): vscode.Disposable {
|
||||
// Code added this (I think will need to add this back when add ctrl+K)
|
||||
// registerCodeCtrlKProvider(selector: vscode.DocumentSelector, provider: vscode.CodeLensProvider): vscode.Disposable {
|
||||
// return extHostLanguageFeatures.registerCodeLensProvider(extension, checkSelector(selector), provider);
|
||||
// },
|
||||
|
||||
@@ -833,7 +833,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
|
||||
return extHostWebviewPanels.createWebviewPanel(extension, viewType, title, showOptions, options);
|
||||
},
|
||||
createWebviewTextEditorInset(editor: vscode.TextEditor, line: number, height: number, options?: vscode.WebviewOptions): vscode.WebviewEditorInset {
|
||||
// checkProposedApiEnabled(extension, 'editorInsets'); // Void commented this out
|
||||
// checkProposedApiEnabled(extension, 'editorInsets'); // Code commented this out
|
||||
return extHostEditorInsets.createWebviewEditorInset(editor, line, height, options, extension);
|
||||
},
|
||||
createTerminal(nameOrOptions?: vscode.TerminalOptions | vscode.ExtensionTerminalOptions | string, shellPath?: string, shellArgs?: readonly string[] | string): vscode.Terminal {
|
||||
|
||||
@@ -2986,7 +2986,7 @@ export const MainContext = {
|
||||
MainThreadAiRelatedInformation: createProxyIdentifier<MainThreadAiRelatedInformationShape>('MainThreadAiRelatedInformation'),
|
||||
MainThreadAiEmbeddingVector: createProxyIdentifier<MainThreadAiEmbeddingVectorShape>('MainThreadAiEmbeddingVector'),
|
||||
|
||||
// Void added this:
|
||||
// Code added this:
|
||||
MainThreadInlineDiff: createProxyIdentifier<MainThreadInlineDiffShape>('MainThreadInlineDiff'),
|
||||
};
|
||||
|
||||
@@ -3060,12 +3060,12 @@ export const ExtHostContext = {
|
||||
ExtHostTelemetry: createProxyIdentifier<ExtHostTelemetryShape>('ExtHostTelemetry'),
|
||||
ExtHostLocalization: createProxyIdentifier<ExtHostLocalizationShape>('ExtHostLocalization'),
|
||||
|
||||
// Void added this:
|
||||
ExtHostInlineDiff: createProxyIdentifier<ExtHostInlineDiffShape>('ExtHostInlineDiff'), // Void added this
|
||||
// Code added this:
|
||||
ExtHostInlineDiff: createProxyIdentifier<ExtHostInlineDiffShape>('ExtHostInlineDiff'), // Code added this
|
||||
};
|
||||
|
||||
|
||||
// Void added these:
|
||||
// Code added these:
|
||||
export interface ExtHostInlineDiffShape {
|
||||
$onDidDispose(handle: number): void;
|
||||
}
|
||||
|
||||
@@ -304,11 +304,11 @@ const newCommands: ApiCommand[] = [
|
||||
})(value);
|
||||
})
|
||||
),
|
||||
// // --- Void code lens
|
||||
// // --- Code code lens
|
||||
// new ApiCommand(
|
||||
// 'vscode.executeVoidCodeLensProvider', '_executeVoidCodeLensProvider', 'Execute Void code lens provider.',
|
||||
// 'vscode.executeCodeCodeLensProvider', '_executeCodeCodeLensProvider', 'Execute Code code lens provider.',
|
||||
// [ApiCommandArgument.Uri, ApiCommandArgument.Number.with('itemResolveCount', 'Number of lenses that should be resolved and returned. Will only return resolved lenses, will impact performance)').optional()],
|
||||
// new ApiCommandResult<languages.CodeLens[], vscode.CodeLens[] | undefined>('A promise that resolves to an array of VoidCodeLens-instances.', (value, _args, converter) => {
|
||||
// new ApiCommandResult<languages.CodeLens[], vscode.CodeLens[] | undefined>('A promise that resolves to an array of CodeCodeLens-instances.', (value, _args, converter) => {
|
||||
// return tryMapWith<languages.CodeLens, vscode.CodeLens>(item => {
|
||||
// return new types.CodeLens(typeConverters.Range.to(item.range), item.command && converter.fromInternal(item.command));
|
||||
// })(value);
|
||||
@@ -445,7 +445,7 @@ const newCommands: ApiCommand[] = [
|
||||
).optional(),
|
||||
ApiCommandArgument.String.with('label', '').optional()
|
||||
],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
),
|
||||
new ApiCommand(
|
||||
'vscode.openWith', '_workbench.openWith', 'Opens the provided resource with a specific editor.',
|
||||
@@ -457,7 +457,7 @@ const newCommands: ApiCommand[] = [
|
||||
v => !v ? v : typeof v === 'number' ? [typeConverters.ViewColumn.from(v), undefined] : [typeConverters.ViewColumn.from(v.viewColumn), typeConverters.TextEditorOpenOptions.from(v)],
|
||||
).optional()
|
||||
],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
),
|
||||
new ApiCommand(
|
||||
'vscode.diff', '_workbench.diff', 'Opens the provided resources in the diff editor to compare their contents.',
|
||||
@@ -470,7 +470,7 @@ const newCommands: ApiCommand[] = [
|
||||
v => v && [typeConverters.ViewColumn.from(v.viewColumn), typeConverters.TextEditorOpenOptions.from(v)]
|
||||
).optional(),
|
||||
],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
),
|
||||
new ApiCommand(
|
||||
'vscode.changes', '_workbench.changes', 'Opens a list of resources in the changes editor to compare their contents.',
|
||||
@@ -495,7 +495,7 @@ const newCommands: ApiCommand[] = [
|
||||
},
|
||||
v => v)
|
||||
],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
),
|
||||
// --- type hierarchy
|
||||
new ApiCommand(
|
||||
@@ -517,13 +517,13 @@ const newCommands: ApiCommand[] = [
|
||||
new ApiCommand(
|
||||
'vscode.revealTestInExplorer', '_revealTestInExplorer', 'Reveals a test instance in the explorer',
|
||||
[ApiCommandArgument.TestItem],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
),
|
||||
// --- continue edit session
|
||||
new ApiCommand(
|
||||
'vscode.experimental.editSession.continue', '_workbench.editSessions.actions.continueEditSession', 'Continue the current edit session in a different workspace',
|
||||
[ApiCommandArgument.Uri.with('workspaceUri', 'The target workspace to continue the current edit session in')],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
),
|
||||
// --- context keys
|
||||
new ApiCommand(
|
||||
@@ -532,7 +532,7 @@ const newCommands: ApiCommand[] = [
|
||||
ApiCommandArgument.String.with('name', 'The context key name'),
|
||||
new ApiCommandArgument('value', 'The context key value', () => true, v => v),
|
||||
],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
),
|
||||
// --- mapped edits
|
||||
new ApiCommand(
|
||||
@@ -570,7 +570,7 @@ const newCommands: ApiCommand[] = [
|
||||
position: v.position ? typeConverters.Position.from(v.position) : undefined,
|
||||
};
|
||||
})],
|
||||
ApiCommandResult.Void
|
||||
ApiCommandResult.Code
|
||||
)
|
||||
];
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ export class ExtHostCommands implements ExtHostCommandsShape {
|
||||
// converted to their internal command and don't need
|
||||
// any indirection commands
|
||||
const candidate = this._apiCommands.get(id);
|
||||
return candidate?.result === ApiCommandResult.Void
|
||||
return candidate?.result === ApiCommandResult.Code
|
||||
? candidate : undefined;
|
||||
},
|
||||
logService
|
||||
@@ -482,7 +482,7 @@ export class ApiCommandArgument<V, O = V> {
|
||||
|
||||
export class ApiCommandResult<V, O = V> {
|
||||
|
||||
static readonly Void = new ApiCommandResult<void, void>('no result', v => v);
|
||||
static readonly Code = new ApiCommandResult<void, void>('no result', v => v);
|
||||
|
||||
constructor(
|
||||
readonly description: string,
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
// This file was created by Void
|
||||
// This file was created by Code
|
||||
// reference extHostCodeInsets.ts
|
||||
|
||||
import { Emitter } from '../../../base/common/event.js';
|
||||
|
||||
@@ -89,7 +89,7 @@ export class ExtHostNotebookKernels implements ExtHostNotebookKernelsShape {
|
||||
return v;
|
||||
})
|
||||
],
|
||||
ApiCommandResult.Void);
|
||||
ApiCommandResult.Code);
|
||||
|
||||
const requestKernelVariablesApiCommand = new ApiCommand(
|
||||
'vscode.executeNotebookVariableProvider',
|
||||
|
||||
@@ -239,7 +239,7 @@ MenuRegistry.appendMenuItems([{
|
||||
group: '3_workbench_layout_move',
|
||||
command: {
|
||||
id: ToggleSidebarPositionAction.ID,
|
||||
title: localize('move second sidebar left', "Move Void Side Bar Left")
|
||||
title: localize('move second sidebar left', "Move Code Side Bar Left")
|
||||
},
|
||||
when: ContextKeyExpr.and(ContextKeyExpr.notEquals('config.workbench.sideBar.location', 'right'), ContextKeyExpr.equals('viewLocation', ViewContainerLocationToString(ViewContainerLocation.AuxiliaryBar))),
|
||||
order: 1
|
||||
@@ -250,7 +250,7 @@ MenuRegistry.appendMenuItems([{
|
||||
group: '3_workbench_layout_move',
|
||||
command: {
|
||||
id: ToggleSidebarPositionAction.ID,
|
||||
title: localize('move second sidebar right', "Move Void Side Bar Right")
|
||||
title: localize('move second sidebar right', "Move Code Side Bar Right")
|
||||
},
|
||||
when: ContextKeyExpr.and(ContextKeyExpr.equals('config.workbench.sideBar.location', 'right'), ContextKeyExpr.equals('viewLocation', ViewContainerLocationToString(ViewContainerLocation.AuxiliaryBar))),
|
||||
order: 1
|
||||
@@ -949,7 +949,7 @@ registerAction2(class extends Action2 {
|
||||
if (!hasAddedView) {
|
||||
results.push({
|
||||
type: 'separator',
|
||||
label: localize('secondarySideBarContainer', "Void Side Bar / {0}", containerModel.title)
|
||||
label: localize('secondarySideBarContainer', "Code Side Bar / {0}", containerModel.title)
|
||||
});
|
||||
hasAddedView = true;
|
||||
}
|
||||
@@ -1056,7 +1056,7 @@ class MoveFocusedViewAction extends Action2 {
|
||||
if (!(isViewSolo && currentLocation === ViewContainerLocation.AuxiliaryBar)) {
|
||||
items.push({
|
||||
id: '_.auxiliarybar.newcontainer',
|
||||
label: localize('moveFocusedView.newContainerInSidePanel', "New Void Side Bar Entry")
|
||||
label: localize('moveFocusedView.newContainerInSidePanel', "New Code Side Bar Entry")
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1104,7 +1104,7 @@ class MoveFocusedViewAction extends Action2 {
|
||||
|
||||
items.push({
|
||||
type: 'separator',
|
||||
label: localize('secondarySideBar', "Void Side Bar")
|
||||
label: localize('secondarySideBar', "Code Side Bar")
|
||||
});
|
||||
|
||||
const pinnedAuxPanels = paneCompositePartService.getPinnedPaneCompositeIds(ViewContainerLocation.AuxiliaryBar);
|
||||
@@ -1386,7 +1386,7 @@ if (!isMacintosh || !isNative) {
|
||||
ToggleVisibilityActions.push(...[
|
||||
CreateToggleLayoutItem(ToggleActivityBarVisibilityActionId, ContextKeyExpr.notEquals('config.workbench.activityBar.location', 'hidden'), localize('activityBar', "Activity Bar"), { whenA: ContextKeyExpr.equals('config.workbench.sideBar.location', 'left'), iconA: activityBarLeftIcon, iconB: activityBarRightIcon }),
|
||||
CreateToggleLayoutItem(ToggleSidebarVisibilityAction.ID, SideBarVisibleContext, localize('sideBar', "Primary Side Bar"), { whenA: ContextKeyExpr.equals('config.workbench.sideBar.location', 'left'), iconA: panelLeftIcon, iconB: panelRightIcon }),
|
||||
CreateToggleLayoutItem(ToggleAuxiliaryBarAction.ID, AuxiliaryBarVisibleContext, localize('secondarySideBar', "Void Side Bar"), { whenA: ContextKeyExpr.equals('config.workbench.sideBar.location', 'left'), iconA: panelRightIcon, iconB: panelLeftIcon }),
|
||||
CreateToggleLayoutItem(ToggleAuxiliaryBarAction.ID, AuxiliaryBarVisibleContext, localize('secondarySideBar', "Code Side Bar"), { whenA: ContextKeyExpr.equals('config.workbench.sideBar.location', 'left'), iconA: panelRightIcon, iconB: panelLeftIcon }),
|
||||
CreateToggleLayoutItem(TogglePanelAction.ID, PanelVisibleContext, localize('panel', "Panel"), panelIcon),
|
||||
CreateToggleLayoutItem(ToggleStatusbarVisibilityAction.ID, ContextKeyExpr.equals('config.workbench.statusBar.visible', true), localize('statusBar', "Status Bar"), statusBarIcon),
|
||||
]);
|
||||
|
||||
@@ -2434,7 +2434,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi
|
||||
comment: 'Information about the layout of the workbench during statup';
|
||||
activityBarVisible: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Whether or the not the activity bar is visible' };
|
||||
sideBarVisible: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Whether or the not the primary side bar is visible' };
|
||||
auxiliaryBarVisible: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Whether or the not the Void side bar is visible' };
|
||||
auxiliaryBarVisible: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Whether or the not the Code side bar is visible' };
|
||||
panelVisible: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Whether or the not the panel is visible' };
|
||||
statusbarVisible: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Whether or the not the status bar is visible' };
|
||||
sideBarPosition: { classification: 'SystemMetaData'; purpose: 'FeatureInsight'; comment: 'Whether the primary side bar is on the left or right' };
|
||||
@@ -2534,7 +2534,7 @@ const LayoutStateKeys = {
|
||||
// Part Sizing
|
||||
GRID_SIZE: new InitializationStateKey('grid.size', StorageScope.PROFILE, StorageTarget.MACHINE, { width: 800, height: 600 }),
|
||||
SIDEBAR_SIZE: new InitializationStateKey<number>('sideBar.size', StorageScope.PROFILE, StorageTarget.MACHINE, 200),
|
||||
AUXILIARYBAR_SIZE: new InitializationStateKey<number>('auxiliaryBar.size', StorageScope.PROFILE, StorageTarget.MACHINE, 800), // Void changed this from 200 to 800
|
||||
AUXILIARYBAR_SIZE: new InitializationStateKey<number>('auxiliaryBar.size', StorageScope.PROFILE, StorageTarget.MACHINE, 800), // Code changed this from 200 to 800
|
||||
PANEL_SIZE: new InitializationStateKey<number>('panel.size', StorageScope.PROFILE, StorageTarget.MACHINE, 300),
|
||||
|
||||
PANEL_LAST_NON_MAXIMIZED_HEIGHT: new RuntimeStateKey<number>('panel.lastNonMaximizedHeight', StorageScope.PROFILE, StorageTarget.MACHINE, 300),
|
||||
|
||||
|
Before Width: | Height: | Size: 795 KiB After Width: | Height: | Size: 795 KiB |
@@ -26,7 +26,7 @@ const auxiliaryBarLeftOffIcon = registerIcon('auxiliarybar-left-off-layout-icon'
|
||||
export class ToggleAuxiliaryBarAction extends Action2 {
|
||||
|
||||
static readonly ID = 'workbench.action.toggleAuxiliaryBar';
|
||||
static readonly LABEL = localize2('toggleAuxiliaryBar', "Toggle Void Side Bar Visibility");
|
||||
static readonly LABEL = localize2('toggleAuxiliaryBar', "Toggle Code Side Bar Visibility");
|
||||
|
||||
constructor() {
|
||||
super({
|
||||
@@ -34,7 +34,7 @@ export class ToggleAuxiliaryBarAction extends Action2 {
|
||||
title: ToggleAuxiliaryBarAction.LABEL,
|
||||
toggled: {
|
||||
condition: AuxiliaryBarVisibleContext,
|
||||
title: localize('secondary sidebar', "Void Side Bar"),
|
||||
title: localize('secondary sidebar', "Code Side Bar"),
|
||||
mnemonicTitle: localize({ key: 'secondary sidebar mnemonic', comment: ['&& denotes a mnemonic'] }, "Secondary Si&&de Bar"),
|
||||
},
|
||||
|
||||
@@ -70,7 +70,7 @@ registerAction2(ToggleAuxiliaryBarAction);
|
||||
registerAction2(class FocusAuxiliaryBarAction extends Action2 {
|
||||
|
||||
static readonly ID = 'workbench.action.focusAuxiliaryBar';
|
||||
static readonly LABEL = localize2('focusAuxiliaryBar', "Focus into Void Side Bar");
|
||||
static readonly LABEL = localize2('focusAuxiliaryBar', "Focus into Code Side Bar");
|
||||
|
||||
constructor() {
|
||||
super({
|
||||
@@ -103,7 +103,7 @@ MenuRegistry.appendMenuItems([
|
||||
group: '0_workbench_toggles',
|
||||
command: {
|
||||
id: ToggleAuxiliaryBarAction.ID,
|
||||
title: localize('toggleSecondarySideBar', "Toggle Void Side Bar"),
|
||||
title: localize('toggleSecondarySideBar', "Toggle Code Side Bar"),
|
||||
toggled: { condition: AuxiliaryBarVisibleContext, icon: auxiliaryBarLeftIcon },
|
||||
icon: auxiliaryBarLeftOffIcon,
|
||||
},
|
||||
@@ -116,7 +116,7 @@ MenuRegistry.appendMenuItems([
|
||||
group: '0_workbench_toggles',
|
||||
command: {
|
||||
id: ToggleAuxiliaryBarAction.ID,
|
||||
title: localize('toggleSecondarySideBar', "Toggle Void Side Bar"),
|
||||
title: localize('toggleSecondarySideBar', "Toggle Code Side Bar"),
|
||||
toggled: { condition: AuxiliaryBarVisibleContext, icon: auxiliaryBarRightIcon },
|
||||
icon: auxiliaryBarRightOffIcon,
|
||||
},
|
||||
@@ -129,7 +129,7 @@ MenuRegistry.appendMenuItems([
|
||||
group: '3_workbench_layout_move',
|
||||
command: {
|
||||
id: ToggleAuxiliaryBarAction.ID,
|
||||
title: localize2('hideAuxiliaryBar', 'Hide Void Side Bar'),
|
||||
title: localize2('hideAuxiliaryBar', 'Hide Code Side Bar'),
|
||||
},
|
||||
when: ContextKeyExpr.and(AuxiliaryBarVisibleContext, ContextKeyExpr.equals('viewLocation', ViewContainerLocationToString(ViewContainerLocation.AuxiliaryBar))),
|
||||
order: 2
|
||||
|
||||
@@ -45,7 +45,7 @@ export class AuxiliaryBarPart extends AbstractPaneCompositePart {
|
||||
static readonly viewContainersWorkspaceStateKey = 'workbench.auxiliarybar.viewContainersWorkspaceState';
|
||||
|
||||
// Use the side bar dimensions
|
||||
override readonly minimumWidth: number = 230; // Void changed this (was 170)
|
||||
override readonly minimumWidth: number = 230; // Code changed this (was 170)
|
||||
override readonly maximumWidth: number = Number.POSITIVE_INFINITY;
|
||||
override readonly minimumHeight: number = 0;
|
||||
override readonly maximumHeight: number = Number.POSITIVE_INFINITY;
|
||||
@@ -200,8 +200,8 @@ export class AuxiliaryBarPart extends AbstractPaneCompositePart {
|
||||
actions.push(...[
|
||||
new Separator(),
|
||||
new SubmenuAction('workbench.action.panel.position', localize('activity bar position', "Activity Bar Position"), positionActions),
|
||||
toAction({ id: ToggleSidebarPositionAction.ID, label: currentPositionRight ? localize('move second side bar left', "Move Void Side Bar Left") : localize('move second side bar right', "Move Void Side Bar Right"), run: () => this.commandService.executeCommand(ToggleSidebarPositionAction.ID) }),
|
||||
toAction({ id: ToggleAuxiliaryBarAction.ID, label: localize('hide second side bar', "Hide Void Side Bar"), run: () => this.commandService.executeCommand(ToggleAuxiliaryBarAction.ID) })
|
||||
toAction({ id: ToggleSidebarPositionAction.ID, label: currentPositionRight ? localize('move second side bar left', "Move Code Side Bar Left") : localize('move second side bar right', "Move Code Side Bar Right"), run: () => this.commandService.executeCommand(ToggleSidebarPositionAction.ID) }),
|
||||
toAction({ id: ToggleAuxiliaryBarAction.ID, label: localize('hide second side bar', "Hide Code Side Bar"), run: () => this.commandService.executeCommand(ToggleAuxiliaryBarAction.ID) })
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
background-size: 16px;
|
||||
background-image: url('../../../../browser/media/void-icon-sm.png');
|
||||
background-image: url('../../../../browser/media/code-icon-sm.png');
|
||||
width: 16px;
|
||||
padding: 0;
|
||||
margin: 0 6px 0 10px;
|
||||
|
||||
@@ -23,8 +23,8 @@ import { IWindowOpenable } from '../../../../platform/window/common/window.js';
|
||||
import { ILabelService, Verbosity } from '../../../../platform/label/common/label.js';
|
||||
import { splitRecentLabel } from '../../../../base/common/labels.js';
|
||||
import { IHostService } from '../../../services/host/browser/host.js';
|
||||
import { VOID_OPEN_SETTINGS_ACTION_ID } from '../../../contrib/void/browser/voidSettingsPane.js';
|
||||
import { VOID_CTRL_K_ACTION_ID, VOID_CTRL_L_ACTION_ID } from '../../../contrib/void/browser/actionIDs.js';
|
||||
import { CODE_OPEN_SETTINGS_ACTION_ID } from '../../../contrib/void/browser/codeSettingsPane.js';
|
||||
import { CODE_CTRL_K_ACTION_ID, CODE_CTRL_L_ACTION_ID } from '../../../contrib/void/browser/actionIDs.js';
|
||||
// import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js';
|
||||
|
||||
registerColor('editorWatermark.foreground', { dark: transparent(editorForeground, 0.6), light: transparent(editorForeground, 0.68), hcDark: editorForeground, hcLight: editorForeground }, localize('editorLineHighlight', 'Foreground color for the labels in the editor watermark.'));
|
||||
@@ -49,7 +49,7 @@ registerColor('editorWatermark.foreground', { dark: transparent(editorForeground
|
||||
// const toggleFullscreen: WatermarkEntry = { text: localize({ key: 'watermark.toggleFullscreen', comment: ['toggle is a verb here'] }, "Toggle Full Screen"), id: 'workbench.action.toggleFullScreen' };
|
||||
// const showSettings: WatermarkEntry = { text: localize('watermark.showSettings', "Show Settings"), id: 'workbench.action.openSettings' };
|
||||
|
||||
// // shown when Void is emtpty
|
||||
// // shown when Code is emtpty
|
||||
// const noFolderEntries = [
|
||||
// // showCommands,
|
||||
// openFileNonMacOnly,
|
||||
@@ -148,7 +148,7 @@ export class EditorGroupWatermark extends Disposable {
|
||||
private render(): void {
|
||||
|
||||
this.clear();
|
||||
const voidIconBox = append(this.shortcuts, $('.watermark-box'));
|
||||
const codeIconBox = append(this.shortcuts, $('.watermark-box'));
|
||||
const recentsBox = append(this.shortcuts, $('div'));
|
||||
recentsBox.style.display = 'flex'
|
||||
recentsBox.style.flex = 'row'
|
||||
@@ -161,19 +161,19 @@ export class EditorGroupWatermark extends Disposable {
|
||||
const recentlyOpened = await this.workspacesService.getRecentlyOpened()
|
||||
.catch(() => ({ files: [], workspaces: [] })).then(w => w.workspaces);
|
||||
|
||||
clearNode(voidIconBox);
|
||||
clearNode(codeIconBox);
|
||||
clearNode(recentsBox);
|
||||
|
||||
this.currentDisposables.forEach(label => label.dispose());
|
||||
this.currentDisposables.clear();
|
||||
|
||||
|
||||
// Void - if the workbench is empty, show open
|
||||
// Code - if the workbench is empty, show open
|
||||
if (this.contextService.getWorkbenchState() === WorkbenchState.EMPTY) {
|
||||
|
||||
// Open a folder
|
||||
const openFolderButton = h('button')
|
||||
openFolderButton.root.classList.add('void-watermark-button')
|
||||
openFolderButton.root.classList.add('code-watermark-button')
|
||||
openFolderButton.root.style.display = 'block'
|
||||
openFolderButton.root.style.marginLeft = 'auto'
|
||||
openFolderButton.root.style.marginRight = 'auto'
|
||||
@@ -187,13 +187,13 @@ export class EditorGroupWatermark extends Disposable {
|
||||
// this.commandService.executeCommand(isMacintosh ? 'workbench.action.files.openFileFolder' : 'workbench.action.files.openFolder');
|
||||
// }
|
||||
}
|
||||
voidIconBox.appendChild(openFolderButton.root);
|
||||
codeIconBox.appendChild(openFolderButton.root);
|
||||
|
||||
|
||||
// Recents
|
||||
if (recentlyOpened.length !== 0) {
|
||||
|
||||
voidIconBox.append(
|
||||
codeIconBox.append(
|
||||
...recentlyOpened.map((w, i) => {
|
||||
|
||||
let fullPath: string;
|
||||
@@ -212,7 +212,7 @@ export class EditorGroupWatermark extends Disposable {
|
||||
const { name, parentPath } = splitRecentLabel(fullPath);
|
||||
|
||||
const linkSpan = $('span');
|
||||
linkSpan.classList.add('void-link')
|
||||
linkSpan.classList.add('code-link')
|
||||
linkSpan.style.display = 'flex'
|
||||
linkSpan.style.gap = '4px'
|
||||
linkSpan.style.padding = '8px'
|
||||
@@ -246,9 +246,9 @@ export class EditorGroupWatermark extends Disposable {
|
||||
}
|
||||
else {
|
||||
|
||||
// show them Void keybindings
|
||||
const keys = this.keybindingService.lookupKeybinding(VOID_CTRL_L_ACTION_ID);
|
||||
const dl = append(voidIconBox, $('dl'));
|
||||
// show them Code keybindings
|
||||
const keys = this.keybindingService.lookupKeybinding(CODE_CTRL_L_ACTION_ID);
|
||||
const dl = append(codeIconBox, $('dl'));
|
||||
const dt = append(dl, $('dt'));
|
||||
dt.textContent = 'Chat'
|
||||
const dd = append(dl, $('dd'));
|
||||
@@ -258,8 +258,8 @@ export class EditorGroupWatermark extends Disposable {
|
||||
this.currentDisposables.add(label);
|
||||
|
||||
|
||||
const keys2 = this.keybindingService.lookupKeybinding(VOID_CTRL_K_ACTION_ID);
|
||||
const dl2 = append(voidIconBox, $('dl'));
|
||||
const keys2 = this.keybindingService.lookupKeybinding(CODE_CTRL_K_ACTION_ID);
|
||||
const dl2 = append(codeIconBox, $('dl'));
|
||||
const dt2 = append(dl2, $('dt'));
|
||||
dt2.textContent = 'Quick Edit'
|
||||
const dd2 = append(dl2, $('dd'));
|
||||
@@ -270,17 +270,17 @@ export class EditorGroupWatermark extends Disposable {
|
||||
|
||||
const keys3 = this.keybindingService.lookupKeybinding('workbench.action.openGlobalKeybindings');
|
||||
const button3 = append(recentsBox, $('button'));
|
||||
button3.textContent = 'Void Settings'
|
||||
button3.textContent = 'Code Settings'
|
||||
button3.style.display = 'block'
|
||||
button3.style.marginLeft = 'auto'
|
||||
button3.style.marginRight = 'auto'
|
||||
button3.classList.add('void-settings-watermark-button')
|
||||
button3.classList.add('code-settings-watermark-button')
|
||||
|
||||
const label3 = new KeybindingLabel(button3, OS, { renderUnboundKeybindings: true, ...defaultKeybindingLabelStyles });
|
||||
if (keys3)
|
||||
label3.set(keys3);
|
||||
button3.onclick = () => {
|
||||
this.commandService.executeCommand(VOID_OPEN_SETTINGS_ACTION_ID)
|
||||
this.commandService.executeCommand(CODE_OPEN_SETTINGS_ACTION_ID)
|
||||
}
|
||||
this.currentDisposables.add(label3);
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 795 KiB After Width: | Height: | Size: 795 KiB |
|
Before Width: | Height: | Size: 850 KiB After Width: | Height: | Size: 850 KiB |
@@ -342,7 +342,7 @@ registerAction2(class extends Action2 {
|
||||
constructor() {
|
||||
super({
|
||||
id: 'workbench.action.closeAuxiliaryBar',
|
||||
title: localize2('closeSecondarySideBar', 'Hide Void Side Bar'),
|
||||
title: localize2('closeSecondarySideBar', 'Hide Code Side Bar'),
|
||||
category: Categories.View,
|
||||
icon: closeIcon,
|
||||
menu: [{
|
||||
@@ -415,7 +415,7 @@ class MoveViewsBetweenPanelsAction extends Action2 {
|
||||
}
|
||||
}
|
||||
|
||||
// --- Move Panel Views To Void Side Bar
|
||||
// --- Move Panel Views To Code Side Bar
|
||||
|
||||
// these are just for the command pallette
|
||||
|
||||
@@ -424,7 +424,7 @@ class MovePanelToSidePanelAction extends MoveViewsBetweenPanelsAction {
|
||||
constructor() {
|
||||
super(ViewContainerLocation.Panel, ViewContainerLocation.AuxiliaryBar, {
|
||||
id: MovePanelToSidePanelAction.ID,
|
||||
title: localize2('movePanelToSecondarySideBar', "Move Panel Views To Void Side Bar"),
|
||||
title: localize2('movePanelToSecondarySideBar', "Move Panel Views To Code Side Bar"),
|
||||
category: Categories.View,
|
||||
f1: false
|
||||
});
|
||||
@@ -436,7 +436,7 @@ export class MovePanelToSecondarySideBarAction extends MoveViewsBetweenPanelsAct
|
||||
constructor() {
|
||||
super(ViewContainerLocation.Panel, ViewContainerLocation.AuxiliaryBar, {
|
||||
id: MovePanelToSecondarySideBarAction.ID,
|
||||
title: localize2('movePanelToSecondarySideBar', "Move Panel Views To Void Side Bar"),
|
||||
title: localize2('movePanelToSecondarySideBar', "Move Panel Views To Code Side Bar"),
|
||||
category: Categories.View,
|
||||
f1: true
|
||||
});
|
||||
@@ -454,7 +454,7 @@ class MoveSidePanelToPanelAction extends MoveViewsBetweenPanelsAction {
|
||||
constructor() {
|
||||
super(ViewContainerLocation.AuxiliaryBar, ViewContainerLocation.Panel, {
|
||||
id: MoveSidePanelToPanelAction.ID,
|
||||
title: localize2('moveSidePanelToPanel', "Move Side Bar Views To Panel"), // Void - this seemed to have a typo before
|
||||
title: localize2('moveSidePanelToPanel', "Move Side Bar Views To Panel"), // Code - this seemed to have a typo before
|
||||
category: Categories.View,
|
||||
f1: false
|
||||
});
|
||||
@@ -467,7 +467,7 @@ export class MoveSecondarySideBarToPanelAction extends MoveViewsBetweenPanelsAct
|
||||
constructor() {
|
||||
super(ViewContainerLocation.AuxiliaryBar, ViewContainerLocation.Panel, {
|
||||
id: MoveSecondarySideBarToPanelAction.ID,
|
||||
title: localize2('moveSidePanelToPanel', "Move Void Side Bar Views To Panel"),
|
||||
title: localize2('moveSidePanelToPanel', "Move Code Side Bar Views To Panel"),
|
||||
category: Categories.View,
|
||||
f1: true
|
||||
});
|
||||
|
||||
@@ -253,7 +253,7 @@
|
||||
}
|
||||
|
||||
.monaco-workbench .part.titlebar > .titlebar-container > .titlebar-left > .window-appicon:not(.codicon) {
|
||||
background-image: url('../../../media/void-icon-sm.png');
|
||||
background-image: url('../../../media/code-icon-sm.png');
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
background-size: 16px;
|
||||
@@ -275,7 +275,7 @@
|
||||
height: 8px;
|
||||
z-index: 1;
|
||||
/* on top of home indicator */
|
||||
background-image: url('../../../media/void-icon-sm.png');
|
||||
background-image: url('../../../media/code-icon-sm.png');
|
||||
background-repeat: no-repeat;
|
||||
background-position: center center;
|
||||
background-size: 8px;
|
||||
|
||||
@@ -512,7 +512,7 @@ const registry = Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Con
|
||||
'type': 'string',
|
||||
'enum': ['left', 'right'],
|
||||
'default': 'left',
|
||||
'description': localize('sideBarLocation', "Controls the location of the primary side bar and activity bar. They can either show on the left or right of the workbench. The Void side bar will show on the opposite side of the workbench.")
|
||||
'description': localize('sideBarLocation', "Controls the location of the primary side bar and activity bar. They can either show on the left or right of the workbench. The Code side bar will show on the opposite side of the workbench.")
|
||||
},
|
||||
'workbench.panel.showLabel': {
|
||||
'type': 'boolean',
|
||||
@@ -545,12 +545,12 @@ const registry = Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Con
|
||||
'type': 'string',
|
||||
'enum': ['default', 'top', 'bottom', 'hidden'],
|
||||
'default': 'default',
|
||||
'markdownDescription': localize({ comment: ['This is the description for a setting'], key: 'activityBarLocation' }, "Controls the location of the Activity Bar relative to the Primary and Void Side Bars."),
|
||||
'markdownDescription': localize({ comment: ['This is the description for a setting'], key: 'activityBarLocation' }, "Controls the location of the Activity Bar relative to the Primary and Code Side Bars."),
|
||||
'enumDescriptions': [
|
||||
localize('workbench.activityBar.location.default', "Show the Activity Bar on the side of the Primary Side Bar and on top of the Void Side Bar."),
|
||||
localize('workbench.activityBar.location.top', "Show the Activity Bar on top of the Primary and Void Side Bars."),
|
||||
localize('workbench.activityBar.location.bottom', "Show the Activity Bar at the bottom of the Primary and Void Side Bars."),
|
||||
localize('workbench.activityBar.location.hide', "Hide the Activity Bar in the Primary and Void Side Bars.")
|
||||
localize('workbench.activityBar.location.default', "Show the Activity Bar on the side of the Primary Side Bar and on top of the Code Side Bar."),
|
||||
localize('workbench.activityBar.location.top', "Show the Activity Bar on top of the Primary and Code Side Bars."),
|
||||
localize('workbench.activityBar.location.bottom', "Show the Activity Bar at the bottom of the Primary and Code Side Bars."),
|
||||
localize('workbench.activityBar.location.hide', "Hide the Activity Bar in the Primary and Code Side Bars.")
|
||||
],
|
||||
},
|
||||
'workbench.activityBar.iconClickBehavior': {
|
||||
@@ -598,7 +598,7 @@ const registry = Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Con
|
||||
'description': localize('workbench.hover.delay', "Controls the delay in milliseconds after which the hover is shown for workbench items (ex. some extension provided tree view items). Already visible items may require a refresh before reflecting this setting change."),
|
||||
// Testing has indicated that on Windows and Linux 500 ms matches the native hovers most closely.
|
||||
// On Mac, the delay is 1500.
|
||||
'default': isMacintosh ? 300 : 300, // <-- Void edited this to 300 : 300 (was 1500 : 500)
|
||||
'default': isMacintosh ? 300 : 300, // <-- Code edited this to 300 : 300 (was 1500 : 500)
|
||||
'minimum': 0
|
||||
},
|
||||
'workbench.reduceMotion': {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
// Normally you'd want to put these exports in the files that register them, but if you do that you'll get an import order error if you import them in certain cases.
|
||||
// (importing them runs the whole file to get the ID, causing an import error). I guess it's best practice to separate out IDs, pretty annoying...
|
||||
|
||||
export const VOID_CTRL_L_ACTION_ID = 'void.ctrlLAction'
|
||||
export const CODE_CTRL_L_ACTION_ID = 'void.ctrlLAction'
|
||||
|
||||
export const VOID_CTRL_K_ACTION_ID = 'void.ctrlKAction'
|
||||
export const CODE_CTRL_K_ACTION_ID = 'void.ctrlKAction'
|
||||
@@ -20,7 +20,7 @@ import { extractCodeFromRegular } from './helpers/extractCodeFromResult.js';
|
||||
import { isWindows } from '../../../../base/common/platform.js';
|
||||
import { registerWorkbenchContribution2, WorkbenchPhase } from '../../../common/contributions.js';
|
||||
|
||||
// The extension this was called from is here - https://github.com/voideditor/void/blob/autocomplete/extensions/void/src/extension/extension.ts
|
||||
// The extension this was called from is here - https://github.com/hanzoai/code/blob/autocomplete/extensions/void/src/extension/extension.ts
|
||||
|
||||
|
||||
/*
|
||||
@@ -113,7 +113,7 @@ export interface IChatThreadService {
|
||||
|
||||
}
|
||||
|
||||
export const IChatThreadService = createDecorator<IChatThreadService>('voidChatThreadService');
|
||||
export const IChatThreadService = createDecorator<IChatThreadService>('codeChatThreadService');
|
||||
class ChatThreadService extends Disposable implements IChatThreadService {
|
||||
_serviceBrand: undefined;
|
||||
|
||||
@@ -22,10 +22,10 @@ import './chatThreadService.js'
|
||||
import './autocompleteService.js'
|
||||
|
||||
// settings pane
|
||||
import './voidSettingsPane.js'
|
||||
import './codeSettingsPane.js'
|
||||
|
||||
// register css
|
||||
import './media/void.css'
|
||||
|
||||
// update (frontend part, also see platform/)
|
||||
import './voidUpdateActions.js'
|
||||
import './codeUpdateActions.js'
|
||||
@@ -23,14 +23,14 @@ import { URI } from '../../../../base/common/uri.js';
|
||||
import { ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js';
|
||||
|
||||
|
||||
import { mountVoidSettings } from './react/out/void-settings-tsx/index.js'
|
||||
import { mountCodeSettings } from './react/out/code-settings-tsx/index.js'
|
||||
import { Codicon } from '../../../../base/common/codicons.js';
|
||||
import { IDisposable } from '../../../../base/common/lifecycle.js';
|
||||
|
||||
|
||||
// refer to preferences.contribution.ts keybindings editor
|
||||
|
||||
class VoidSettingsInput extends EditorInput {
|
||||
class CodeSettingsInput extends EditorInput {
|
||||
|
||||
static readonly ID: string = 'workbench.input.void.settings';
|
||||
|
||||
@@ -38,18 +38,18 @@ class VoidSettingsInput extends EditorInput {
|
||||
scheme: 'void', // Custom scheme for our editor
|
||||
path: 'settings'
|
||||
})
|
||||
readonly resource = VoidSettingsInput.RESOURCE;
|
||||
readonly resource = CodeSettingsInput.RESOURCE;
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
}
|
||||
|
||||
override get typeId(): string {
|
||||
return VoidSettingsInput.ID;
|
||||
return CodeSettingsInput.ID;
|
||||
}
|
||||
|
||||
override getName(): string {
|
||||
return nls.localize('voidSettingsInputsName', 'Void Settings');
|
||||
return nls.localize('codeSettingsInputsName', 'Code Settings');
|
||||
}
|
||||
|
||||
override getIcon() {
|
||||
@@ -59,7 +59,7 @@ class VoidSettingsInput extends EditorInput {
|
||||
}
|
||||
|
||||
|
||||
class VoidSettingsPane extends EditorPane {
|
||||
class CodeSettingsPane extends EditorPane {
|
||||
static readonly ID = 'workbench.test.myCustomPane';
|
||||
|
||||
// private _scrollbar: DomScrollableElement | undefined;
|
||||
@@ -71,7 +71,7 @@ class VoidSettingsPane extends EditorPane {
|
||||
@IStorageService storageService: IStorageService,
|
||||
@IInstantiationService private readonly instantiationService: IInstantiationService
|
||||
) {
|
||||
super(VoidSettingsPane.ID, group, telemetryService, themeService, storageService);
|
||||
super(CodeSettingsPane.ID, group, telemetryService, themeService, storageService);
|
||||
}
|
||||
|
||||
protected createEditor(parent: HTMLElement): void {
|
||||
@@ -90,7 +90,7 @@ class VoidSettingsPane extends EditorPane {
|
||||
|
||||
// Mount React into the scrollable content
|
||||
this.instantiationService.invokeFunction(accessor => {
|
||||
const disposables: IDisposable[] | undefined = mountVoidSettings(settingsElt, accessor);
|
||||
const disposables: IDisposable[] | undefined = mountCodeSettings(settingsElt, accessor);
|
||||
|
||||
// setTimeout(() => { // this is a complete hack and I don't really understand how scrollbar works here
|
||||
// this._scrollbar?.scanDomNode();
|
||||
@@ -112,18 +112,18 @@ class VoidSettingsPane extends EditorPane {
|
||||
|
||||
// register Settings pane
|
||||
Registry.as<IEditorPaneRegistry>(EditorExtensions.EditorPane).registerEditorPane(
|
||||
EditorPaneDescriptor.create(VoidSettingsPane, VoidSettingsPane.ID, nls.localize('VoidSettingsPane', "Void Settings Pane")),
|
||||
[new SyncDescriptor(VoidSettingsInput)]
|
||||
EditorPaneDescriptor.create(CodeSettingsPane, CodeSettingsPane.ID, nls.localize('CodeSettingsPane', "Code Settings Pane")),
|
||||
[new SyncDescriptor(CodeSettingsInput)]
|
||||
);
|
||||
|
||||
|
||||
// register the gear on the top right
|
||||
export const VOID_TOGGLE_SETTINGS_ACTION_ID = 'workbench.action.toggleVoidSettings'
|
||||
export const CODE_TOGGLE_SETTINGS_ACTION_ID = 'workbench.action.toggleCodeSettings'
|
||||
registerAction2(class extends Action2 {
|
||||
constructor() {
|
||||
super({
|
||||
id: VOID_TOGGLE_SETTINGS_ACTION_ID,
|
||||
title: nls.localize2('voidSettings', "Void: Toggle Settings"),
|
||||
id: CODE_TOGGLE_SETTINGS_ACTION_ID,
|
||||
title: nls.localize2('codeSettings', "Code: Toggle Settings"),
|
||||
icon: Codicon.settingsGear,
|
||||
menu: [
|
||||
{
|
||||
@@ -144,26 +144,26 @@ registerAction2(class extends Action2 {
|
||||
const instantiationService = accessor.get(IInstantiationService);
|
||||
|
||||
// close all instances if found
|
||||
const openEditors = editorService.findEditors(VoidSettingsInput.RESOURCE);
|
||||
const openEditors = editorService.findEditors(CodeSettingsInput.RESOURCE);
|
||||
if (openEditors.length > 0) {
|
||||
await editorService.closeEditors(openEditors);
|
||||
return;
|
||||
}
|
||||
|
||||
// else open it
|
||||
const input = instantiationService.createInstance(VoidSettingsInput);
|
||||
const input = instantiationService.createInstance(CodeSettingsInput);
|
||||
await editorService.openEditor(input);
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
|
||||
export const VOID_OPEN_SETTINGS_ACTION_ID = 'workbench.action.openVoidSettings'
|
||||
export const CODE_OPEN_SETTINGS_ACTION_ID = 'workbench.action.openCodeSettings'
|
||||
registerAction2(class extends Action2 {
|
||||
constructor() {
|
||||
super({
|
||||
id: VOID_OPEN_SETTINGS_ACTION_ID,
|
||||
title: nls.localize2('voidSettings', "Void: Open Settings"),
|
||||
id: CODE_OPEN_SETTINGS_ACTION_ID,
|
||||
title: nls.localize2('codeSettings', "Code: Open Settings"),
|
||||
f1: true,
|
||||
icon: Codicon.settingsGear,
|
||||
});
|
||||
@@ -173,13 +173,13 @@ registerAction2(class extends Action2 {
|
||||
const instantiationService = accessor.get(IInstantiationService);
|
||||
|
||||
// close all instances if found
|
||||
const openEditors = editorService.findEditors(VoidSettingsInput.RESOURCE);
|
||||
const openEditors = editorService.findEditors(CodeSettingsInput.RESOURCE);
|
||||
if (openEditors.length > 0) {
|
||||
await editorService.closeEditors(openEditors);
|
||||
}
|
||||
|
||||
// then, open one single editor
|
||||
const input = instantiationService.createInstance(VoidSettingsInput);
|
||||
const input = instantiationService.createInstance(CodeSettingsInput);
|
||||
await editorService.openEditor(input);
|
||||
}
|
||||
})
|
||||
@@ -192,8 +192,8 @@ registerAction2(class extends Action2 {
|
||||
MenuRegistry.appendMenuItem(MenuId.GlobalActivity, {
|
||||
group: '0_command',
|
||||
command: {
|
||||
id: VOID_TOGGLE_SETTINGS_ACTION_ID,
|
||||
title: nls.localize('voidSettings', "Void Settings")
|
||||
id: CODE_TOGGLE_SETTINGS_ACTION_ID,
|
||||
title: nls.localize('codeSettings', "Code Settings")
|
||||
},
|
||||
order: 1
|
||||
});
|
||||
@@ -10,14 +10,14 @@ import { localize2 } from '../../../../nls.js';
|
||||
import { Action2, registerAction2 } from '../../../../platform/actions/common/actions.js';
|
||||
import { INotificationService } from '../../../../platform/notification/common/notification.js';
|
||||
import { IMetricsService } from '../../../../platform/void/common/metricsService.js';
|
||||
import { IVoidUpdateService } from '../../../../platform/void/common/voidUpdateService.js';
|
||||
import { ICodeUpdateService } from '../../../../platform/void/common/codeUpdateService.js';
|
||||
import { IWorkbenchContribution, registerWorkbenchContribution2, WorkbenchPhase } from '../../../common/contributions.js';
|
||||
|
||||
|
||||
|
||||
|
||||
const notifyYesUpdate = (notifService: INotificationService, msg?: string) => {
|
||||
const message = msg || 'This is a very old version of void, please download the latest version! [Void Editor](https://voideditor.com/download-beta)!'
|
||||
const message = msg || 'This is a very old version of void, please download the latest version! [Code Editor](https://code.hanzo.ai/download-beta)!'
|
||||
notifService.notify({
|
||||
severity: Severity.Info,
|
||||
message: message,
|
||||
@@ -26,11 +26,11 @@ const notifyYesUpdate = (notifService: INotificationService, msg?: string) => {
|
||||
const notifyNoUpdate = (notifService: INotificationService) => {
|
||||
notifService.notify({
|
||||
severity: Severity.Info,
|
||||
message: 'Void is up-to-date!',
|
||||
message: 'Code is up-to-date!',
|
||||
})
|
||||
}
|
||||
const notifyErrChecking = (notifService: INotificationService) => {
|
||||
const message = `Void Error: There was an error checking for updates. If this persists, please get in touch or reinstall Void [here](https://voideditor.com/download-beta)!`
|
||||
const message = `Code Error: There was an error checking for updates. If this persists, please get in touch or reinstall Code [here](https://code.hanzo.ai/download-beta)!`
|
||||
notifService.notify({
|
||||
severity: Severity.Info,
|
||||
message: message,
|
||||
@@ -44,38 +44,38 @@ registerAction2(class extends Action2 {
|
||||
constructor() {
|
||||
super({
|
||||
f1: true,
|
||||
id: 'void.voidCheckUpdate',
|
||||
title: localize2('voidCheckUpdate', 'Void: Check for Updates'),
|
||||
id: 'void.codeCheckUpdate',
|
||||
title: localize2('codeCheckUpdate', 'Code: Check for Updates'),
|
||||
});
|
||||
}
|
||||
async run(accessor: ServicesAccessor): Promise<void> {
|
||||
const voidUpdateService = accessor.get(IVoidUpdateService)
|
||||
const codeUpdateService = accessor.get(ICodeUpdateService)
|
||||
const notifService = accessor.get(INotificationService)
|
||||
const metricsService = accessor.get(IMetricsService)
|
||||
|
||||
metricsService.capture('Void Update Manual: Checking...', {})
|
||||
const res = await voidUpdateService.check()
|
||||
if (!res) { notifyErrChecking(notifService); metricsService.capture('Void Update Manual: Error', { res }) }
|
||||
else if (res.hasUpdate) { notifyYesUpdate(notifService, res.message); metricsService.capture('Void Update Manual: Yes', { res }) }
|
||||
else if (!res.hasUpdate) { notifyNoUpdate(notifService); metricsService.capture('Void Update Manual: No', { res }) }
|
||||
metricsService.capture('Code Update Manual: Checking...', {})
|
||||
const res = await codeUpdateService.check()
|
||||
if (!res) { notifyErrChecking(notifService); metricsService.capture('Code Update Manual: Error', { res }) }
|
||||
else if (res.hasUpdate) { notifyYesUpdate(notifService, res.message); metricsService.capture('Code Update Manual: Yes', { res }) }
|
||||
else if (!res.hasUpdate) { notifyNoUpdate(notifService); metricsService.capture('Code Update Manual: No', { res }) }
|
||||
}
|
||||
})
|
||||
|
||||
// on mount
|
||||
class VoidUpdateWorkbenchContribution extends Disposable implements IWorkbenchContribution {
|
||||
static readonly ID = 'workbench.contrib.void.voidUpdate'
|
||||
class CodeUpdateWorkbenchContribution extends Disposable implements IWorkbenchContribution {
|
||||
static readonly ID = 'workbench.contrib.void.codeUpdate'
|
||||
constructor(
|
||||
@IVoidUpdateService private readonly voidUpdateService: IVoidUpdateService,
|
||||
@ICodeUpdateService private readonly codeUpdateService: ICodeUpdateService,
|
||||
@IMetricsService private readonly metricsService: IMetricsService,
|
||||
@INotificationService private readonly notifService: INotificationService,
|
||||
) {
|
||||
super()
|
||||
const autoCheck = async () => {
|
||||
this.metricsService.capture('Void Update Startup: Checking...', {})
|
||||
const res = await this.voidUpdateService.check()
|
||||
if (!res) { notifyErrChecking(this.notifService); this.metricsService.capture('Void Update Startup: Error', { res }) }
|
||||
else if (res.hasUpdate) { notifyYesUpdate(this.notifService, res.message); this.metricsService.capture('Void Update Startup: Yes', { res }) }
|
||||
else if (!res.hasUpdate) { this.metricsService.capture('Void Update Startup: No', { res }) } // display nothing if up to date
|
||||
this.metricsService.capture('Code Update Startup: Checking...', {})
|
||||
const res = await this.codeUpdateService.check()
|
||||
if (!res) { notifyErrChecking(this.notifService); this.metricsService.capture('Code Update Startup: Error', { res }) }
|
||||
else if (res.hasUpdate) { notifyYesUpdate(this.notifService, res.message); this.metricsService.capture('Code Update Startup: Yes', { res }) }
|
||||
else if (!res.hasUpdate) { this.metricsService.capture('Code Update Startup: No', { res }) } // display nothing if up to date
|
||||
}
|
||||
|
||||
// check once 5 seconds after mount
|
||||
@@ -89,4 +89,4 @@ class VoidUpdateWorkbenchContribution extends Disposable implements IWorkbenchCo
|
||||
|
||||
}
|
||||
}
|
||||
registerWorkbenchContribution2(VoidUpdateWorkbenchContribution.ID, VoidUpdateWorkbenchContribution, WorkbenchPhase.BlockRestore);
|
||||
registerWorkbenchContribution2(CodeUpdateWorkbenchContribution.ID, CodeUpdateWorkbenchContribution, WorkbenchPhase.BlockRestore);
|
||||
@@ -12,30 +12,30 @@ import { createDecorator } from '../../../../platform/instantiation/common/insta
|
||||
|
||||
|
||||
// service that manages state
|
||||
export type VoidUriState = {
|
||||
export type CodeUriState = {
|
||||
currentUri?: URI
|
||||
}
|
||||
|
||||
export interface IVoidUriStateService {
|
||||
export interface ICodeUriStateService {
|
||||
readonly _serviceBrand: undefined;
|
||||
|
||||
readonly state: VoidUriState; // readonly to the user
|
||||
setState(newState: Partial<VoidUriState>): void;
|
||||
readonly state: CodeUriState; // readonly to the user
|
||||
setState(newState: Partial<CodeUriState>): void;
|
||||
onDidChangeState: Event<void>;
|
||||
}
|
||||
|
||||
export const IVoidUriStateService = createDecorator<IVoidUriStateService>('voidUriStateService');
|
||||
class VoidUriStateService extends Disposable implements IVoidUriStateService {
|
||||
export const ICodeUriStateService = createDecorator<ICodeUriStateService>('codeUriStateService');
|
||||
class CodeUriStateService extends Disposable implements ICodeUriStateService {
|
||||
_serviceBrand: undefined;
|
||||
|
||||
static readonly ID = 'voidUriStateService';
|
||||
static readonly ID = 'codeUriStateService';
|
||||
|
||||
private readonly _onDidChangeState = new Emitter<void>();
|
||||
readonly onDidChangeState: Event<void> = this._onDidChangeState.event;
|
||||
|
||||
|
||||
// state
|
||||
state: VoidUriState
|
||||
state: CodeUriState
|
||||
|
||||
constructor(
|
||||
) {
|
||||
@@ -45,7 +45,7 @@ class VoidUriStateService extends Disposable implements IVoidUriStateService {
|
||||
this.state = { currentUri: undefined }
|
||||
}
|
||||
|
||||
setState(newState: Partial<VoidUriState>) {
|
||||
setState(newState: Partial<CodeUriState>) {
|
||||
|
||||
this.state = { ...this.state, ...newState }
|
||||
this._onDidChangeState.fire()
|
||||
@@ -54,4 +54,4 @@ class VoidUriStateService extends Disposable implements IVoidUriStateService {
|
||||
|
||||
}
|
||||
|
||||
registerSingleton(IVoidUriStateService, VoidUriStateService, InstantiationType.Eager);
|
||||
registerSingleton(ICodeUriStateService, CodeUriStateService, InstantiationType.Eager);
|
||||
@@ -155,7 +155,7 @@ export function findDiffs(oldStr: string, newStr: string) {
|
||||
// let keys = new Set([...Object.keys(a), ...Object.keys(b)])
|
||||
// for (let k of keys) {
|
||||
// if (a[k] !== b[k]) {
|
||||
// console.error('Void Test Error:', name_, '\n', `${k}=`, `${JSON.stringify(a[k])}, ${JSON.stringify(b[k])}`)
|
||||
// console.error('Code Test Error:', name_, '\n', `${k}=`, `${JSON.stringify(a[k])}, ${JSON.stringify(b[k])}`)
|
||||
// // console.error(JSON.stringify(a, null, 4))
|
||||
// // console.error(JSON.stringify(b, null, 4))
|
||||
// testsFailed += 1
|
||||
@@ -269,8 +269,8 @@ export function findDiffs(oldStr: string, newStr: string) {
|
||||
|
||||
|
||||
// if (testsFailed === 0) {
|
||||
// console.log('✅ Void - All tests passed')
|
||||
// console.log('✅ Code - All tests passed')
|
||||
// }
|
||||
// else {
|
||||
// console.log('❌ Void - At least one test failed')
|
||||
// console.log('❌ Code - At least one test failed')
|
||||
// }
|
||||
@@ -39,13 +39,13 @@ import { INotificationService, Severity } from '../../../../platform/notificatio
|
||||
import { isMacintosh } from '../../../../base/common/platform.js';
|
||||
import { EditorOption } from '../../../../editor/common/config/editorOptions.js';
|
||||
import { Emitter } from '../../../../base/common/event.js';
|
||||
import { VOID_OPEN_SETTINGS_ACTION_ID } from './voidSettingsPane.js';
|
||||
import { CODE_OPEN_SETTINGS_ACTION_ID } from './codeSettingsPane.js';
|
||||
import { ICommandService } from '../../../../platform/commands/common/commands.js';
|
||||
|
||||
const configOfBG = (color: Color) => {
|
||||
return { dark: color, light: color, hcDark: color, hcLight: color, }
|
||||
}
|
||||
// gets converted to --vscode-void-greenBG, see void.css, asCssVariable
|
||||
// gets converted to --vscode-code-greenBG, see void.css, asCssVariable
|
||||
const greenBG = new Color(new RGBA(155, 185, 85, .3)); // default is RGBA(155, 185, 85, .2)
|
||||
registerColor('void.greenBG', configOfBG(greenBG), '', true);
|
||||
|
||||
@@ -352,10 +352,10 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
// add sweep styles to the diffZone
|
||||
if (diffArea._streamState.isStreaming) {
|
||||
// sweepLine ... sweepLine
|
||||
const fn1 = this._addLineDecoration(model, diffArea._streamState.line, diffArea._streamState.line, 'void-sweepIdxBG')
|
||||
const fn1 = this._addLineDecoration(model, diffArea._streamState.line, diffArea._streamState.line, 'code-sweepIdxBG')
|
||||
// sweepLine+1 ... endLine
|
||||
const fn2 = diffArea._streamState.line + 1 <= diffArea.endLine ?
|
||||
this._addLineDecoration(model, diffArea._streamState.line + 1, diffArea.endLine, 'void-sweepBG')
|
||||
this._addLineDecoration(model, diffArea._streamState.line + 1, diffArea.endLine, 'code-sweepBG')
|
||||
: null
|
||||
diffArea._removeStylesFns.add(() => { fn1?.(); fn2?.(); })
|
||||
|
||||
@@ -364,7 +364,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
|
||||
else if (diffArea.type === 'CtrlKZone' && diffArea._linkedStreamingDiffZone === null) {
|
||||
// highlight zone's text
|
||||
const fn = this._addLineDecoration(model, diffArea.startLine, diffArea.endLine, 'void-highlightBG')
|
||||
const fn = this._addLineDecoration(model, diffArea.startLine, diffArea.endLine, 'code-highlightBG')
|
||||
diffArea._removeStylesFns.add(() => fn?.());
|
||||
}
|
||||
}
|
||||
@@ -540,7 +540,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
|
||||
// green decoration and minimap decoration
|
||||
if (type !== 'deletion') {
|
||||
const fn = this._addLineDecoration(model, diff.startLine, diff.endLine, 'void-greenBG', {
|
||||
const fn = this._addLineDecoration(model, diff.startLine, diff.endLine, 'code-greenBG', {
|
||||
minimap: { color: { id: 'minimapGutter.addedBackground' }, position: 2 },
|
||||
overviewRuler: { color: { id: 'editorOverviewRuler.addedForeground' }, position: 7 }
|
||||
})
|
||||
@@ -555,7 +555,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
fn: (editor) => {
|
||||
|
||||
const domNode = document.createElement('div');
|
||||
domNode.className = 'void-redBG'
|
||||
domNode.className = 'code-redBG'
|
||||
|
||||
const renderOptions = RenderOptions.fromEditor(editor)
|
||||
|
||||
@@ -713,7 +713,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
}
|
||||
|
||||
// minimal edits so not so flashy
|
||||
// const edits = this.worker.$Void_computeMoreMinimalEdits(uri.toString(), [{ range, text }], false)
|
||||
// const edits = this.worker.$Code_computeMoreMinimalEdits(uri.toString(), [{ range, text }], false)
|
||||
this.weAreWriting = true
|
||||
model.applyEdits([{ range, text }])
|
||||
this.weAreWriting = false
|
||||
@@ -805,7 +805,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
const elt: IUndoRedoElement = {
|
||||
type: UndoRedoElementType.Resource,
|
||||
resource: uri,
|
||||
label: 'Void Changes',
|
||||
label: 'Code Changes',
|
||||
code: 'undoredo.inlineDiffs',
|
||||
undo: () => { restoreDiffAreas(beforeSnapshot) },
|
||||
redo: () => { if (afterSnapshot) restoreDiffAreas(afterSnapshot) }
|
||||
@@ -1029,7 +1029,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
else if (lastDiff.type === 'deletion')
|
||||
newCodeEndLine = lastDiff.startLine
|
||||
else
|
||||
throw new Error(`Void: diff.type not recognized on: ${lastDiff}`)
|
||||
throw new Error(`Code: diff.type not recognized on: ${lastDiff}`)
|
||||
}
|
||||
|
||||
|
||||
@@ -1104,7 +1104,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
// originalCodeStartLine = lastDiff.originalStartLine
|
||||
// }
|
||||
// else {
|
||||
// throw new Error(`Void: diff.type not recognized on: ${lastDiff}`)
|
||||
// throw new Error(`Code: diff.type not recognized on: ${lastDiff}`)
|
||||
// }
|
||||
// }
|
||||
|
||||
@@ -1242,7 +1242,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
endLine = endLine_
|
||||
}
|
||||
else {
|
||||
throw new Error(`Void: diff.type not recognized on: ${featureName}`)
|
||||
throw new Error(`Code: diff.type not recognized on: ${featureName}`)
|
||||
}
|
||||
|
||||
const currentFileStr = this._readURI(uri)
|
||||
@@ -1257,7 +1257,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
const { onFinishEdit } = this._addToHistory(uri)
|
||||
|
||||
// __TODO__ let users customize modelFimTags
|
||||
const isOllamaFIM = false // this._voidSettingsService.state.modelSelectionOfFeature['Ctrl+K']?.providerName === 'ollama'
|
||||
const isOllamaFIM = false // this._codeSettingsService.state.modelSelectionOfFeature['Ctrl+K']?.providerName === 'ollama'
|
||||
const modelFimTags = defaultFimTags
|
||||
|
||||
const adding: Omit<DiffZone, 'diffareaid'> = {
|
||||
@@ -1396,15 +1396,15 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
const details = errorDetails(e.fullError)
|
||||
this._notificationService.notify({
|
||||
severity: Severity.Warning,
|
||||
message: `Void Error: ${e.message}`,
|
||||
message: `Code Error: ${e.message}`,
|
||||
actions: {
|
||||
secondary: [{
|
||||
id: 'void.onerror.opensettings',
|
||||
enabled: true,
|
||||
label: 'Open Void settings',
|
||||
label: 'Open Code settings',
|
||||
tooltip: '',
|
||||
class: undefined,
|
||||
run: () => { this._commandService.executeCommand(VOID_OPEN_SETTINGS_ACTION_ID) }
|
||||
run: () => { this._commandService.executeCommand(CODE_OPEN_SETTINGS_ACTION_ID) }
|
||||
}]
|
||||
},
|
||||
source: details ? `(Hold ${isMacintosh ? 'Option' : 'Alt'} to hover) - ${details}` : undefined
|
||||
@@ -1546,7 +1546,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
].join('\n')
|
||||
}
|
||||
else {
|
||||
throw new Error(`Void error: ${diff}.type not recognized`)
|
||||
throw new Error(`Code error: ${diff}.type not recognized`)
|
||||
}
|
||||
|
||||
// console.log('DIFF', diff)
|
||||
@@ -1638,7 +1638,7 @@ class InlineDiffsService extends Disposable implements IInlineDiffsService {
|
||||
toRange = { startLineNumber: diff.startLine, startColumn: 1, endLineNumber: diff.endLine, endColumn: Number.MAX_SAFE_INTEGER } // 1-indexed
|
||||
}
|
||||
else {
|
||||
throw new Error(`Void error: ${diff}.type not recognized`)
|
||||
throw new Error(`Code error: ${diff}.type not recognized`)
|
||||
}
|
||||
|
||||
// update the file
|
||||
@@ -1912,7 +1912,7 @@ class AcceptAllRejectAllWidget extends Widget implements IOverlayWidget {
|
||||
// constructor() {
|
||||
// super({
|
||||
// id: 'void.testDiff',
|
||||
// title: localize2('voidTestDiff', 'Void Test Diff'),
|
||||
// title: localize2('codeTestDiff', 'Code Test Diff'),
|
||||
// f1: true,
|
||||
// });
|
||||
// }
|
||||
@@ -3,27 +3,27 @@
|
||||
* Licensed under the Apache License, Version 2.0. See LICENSE.txt for more information.
|
||||
*--------------------------------------------------------------------------------------*/
|
||||
|
||||
.monaco-editor .void-sweepIdxBG {
|
||||
background-color: var(--vscode-void-sweepIdxBG);
|
||||
.monaco-editor .code-sweepIdxBG {
|
||||
background-color: var(--vscode-code-sweepIdxBG);
|
||||
}
|
||||
|
||||
.void-sweepBG {
|
||||
background-color: var(--vscode-void-sweepBG);
|
||||
.code-sweepBG {
|
||||
background-color: var(--vscode-code-sweepBG);
|
||||
}
|
||||
|
||||
.void-highlightBG {
|
||||
background-color: var(--vscode-void-highlightBG);
|
||||
.code-highlightBG {
|
||||
background-color: var(--vscode-code-highlightBG);
|
||||
}
|
||||
|
||||
.void-greenBG {
|
||||
background-color: var(--vscode-void-greenBG);
|
||||
.code-greenBG {
|
||||
background-color: var(--vscode-code-greenBG);
|
||||
}
|
||||
|
||||
.void-redBG {
|
||||
background-color: var(--vscode-void-redBG);
|
||||
.code-redBG {
|
||||
background-color: var(--vscode-code-redBG);
|
||||
}
|
||||
|
||||
.void-watermark-button {
|
||||
.code-watermark-button {
|
||||
margin: 8px 0;
|
||||
padding: 8px 20px;
|
||||
background-color: #3b82f6;
|
||||
@@ -35,17 +35,17 @@
|
||||
cursor: pointer;
|
||||
transition: background-color 0.2s ease;
|
||||
}
|
||||
.void-watermark-button:hover {
|
||||
.code-watermark-button:hover {
|
||||
background-color: #2563eb;
|
||||
}
|
||||
.void-watermark-button:active {
|
||||
.code-watermark-button:active {
|
||||
background-color: #2563eb;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.void-settings-watermark-button {
|
||||
.code-settings-watermark-button {
|
||||
margin: 8px 0;
|
||||
padding: 8px 20px;
|
||||
background-color: var(--vscode-input-background);
|
||||
@@ -57,22 +57,22 @@
|
||||
cursor: pointer;
|
||||
transition: all 0.2s ease;
|
||||
}
|
||||
.void-settings-watermark-button:hover {
|
||||
.code-settings-watermark-button:hover {
|
||||
filter: brightness(1.1);
|
||||
}
|
||||
.void-settings-watermark-button:active {
|
||||
.code-settings-watermark-button:active {
|
||||
filter: brightness(1.1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.void-link {
|
||||
.code-link {
|
||||
color: #3b82f6;
|
||||
cursor: pointer;
|
||||
transition: all 0.2s ease;
|
||||
}
|
||||
.void-link:hover {
|
||||
.code-link:hover {
|
||||
opacity: 80%;
|
||||
}
|
||||
|
||||
@@ -80,89 +80,89 @@
|
||||
|
||||
|
||||
|
||||
.void-scrollable-element::-webkit-scrollbar,
|
||||
.void-scrollable-element *::-webkit-scrollbar {
|
||||
.code-scrollable-element::-webkit-scrollbar,
|
||||
.code-scrollable-element *::-webkit-scrollbar {
|
||||
width: 14px !important;
|
||||
height: 14px !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element::-webkit-scrollbar-track,
|
||||
.void-scrollable-element *::-webkit-scrollbar-track {
|
||||
.code-scrollable-element::-webkit-scrollbar-track,
|
||||
.code-scrollable-element *::-webkit-scrollbar-track {
|
||||
background: transparent !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element *::-webkit-scrollbar-thumb {
|
||||
background-color: transparent !important;
|
||||
border-radius: 0px !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element::-webkit-scrollbar-thumb:hover,
|
||||
.void-scrollable-element *::-webkit-scrollbar-thumb:hover {
|
||||
.code-scrollable-element::-webkit-scrollbar-thumb:hover,
|
||||
.code-scrollable-element *::-webkit-scrollbar-thumb:hover {
|
||||
background-color: var(--vscode-scrollbarSlider-hoverBackground) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element::-webkit-scrollbar-thumb:active,
|
||||
.void-scrollable-element *::-webkit-scrollbar-thumb:active {
|
||||
.code-scrollable-element::-webkit-scrollbar-thumb:active,
|
||||
.code-scrollable-element *::-webkit-scrollbar-thumb:active {
|
||||
background-color: var(--vscode-scrollbarSlider-activeBackground) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element::-webkit-scrollbar-corner,
|
||||
.void-scrollable-element *::-webkit-scrollbar-corner {
|
||||
.code-scrollable-element::-webkit-scrollbar-corner,
|
||||
.code-scrollable-element *::-webkit-scrollbar-corner {
|
||||
background-color: transparent !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-0::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-0 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-0::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-0 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 0%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-1::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-1 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-1::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-1 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 10%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-2::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-2 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-2::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-2 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 20%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-3::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-3 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-3::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-3 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 30%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-4::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-4 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-4::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-4 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 40%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-5::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-5 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-5::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-5 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 50%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-6::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-6 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-6::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-6 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 60%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-7::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-7 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-7::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-7 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 70%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-8::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-8 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-8::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-8 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 80%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-9::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-9 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-9::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-9 *::-webkit-scrollbar-thumb {
|
||||
background-color: color-mix(in srgb, var(--vscode-scrollbarSlider-background) 90%, transparent) !important;
|
||||
}
|
||||
|
||||
.void-scrollable-element.show-scrollbar-10::-webkit-scrollbar-thumb,
|
||||
.void-scrollable-element.show-scrollbar-10 *::-webkit-scrollbar-thumb {
|
||||
.code-scrollable-element.show-scrollbar-10::-webkit-scrollbar-thumb,
|
||||
.code-scrollable-element.show-scrollbar-10 *::-webkit-scrollbar-thumb {
|
||||
background-color: var(--vscode-scrollbarSlider-background) !important;
|
||||
}
|
||||