diff --git a/GLASS_README.txt b/GLASS_README.txt deleted file mode 100644 index 16fd2c71..00000000 --- a/GLASS_README.txt +++ /dev/null @@ -1,24 +0,0 @@ -https://github.com/microsoft/vscode/wiki/How-to-Contribute - -## Initializing - -yarn - -## Testing - -ctrl + shift + B - -./scripts/code.sh - -Tip! Use ctrl + shift + P and run "Reload Window" to see changes without restarting the build. - - - -## Bundling - -yarn gulp vscode-win32-x64 - -Full options: - -vscode-{win32-ia32 | win32-x64 | darwin-x64 | darwin-arm64 | linux-ia32 | linux-x64 | linux-arm}(-min) - diff --git a/LINEMAGE_VSCODE_GUIDE.txt b/LINEMAGE_VSCODE_GUIDE.txt new file mode 100644 index 00000000..e2988f86 --- /dev/null +++ b/LINEMAGE_VSCODE_GUIDE.txt @@ -0,0 +1,107 @@ +https://github.com/microsoft/vscode/wiki/How-to-Contribute + +## Initializing + +yarn + +## Testing + +ctrl + shift + B + +./scripts/code.sh + +Tip! Use ctrl + shift + P and run "Reload Window" to see changes without restarting the build. + + + +## Bundling + +yarn gulp vscode-win32-x64 + +Full options: + +vscode-{win32-ia32 | win32-x64 | darwin-x64 | darwin-arm64 | linux-ia32 | linux-x64 | linux-arm}(-min) + + + + + + + + + + + + + + + + + + + + + + + + + +# Useful links + +Useful links when learning about the VS Code sourcecode: + +## Getting started + +- VSCode UI guide (describes what sidebar, aux bar, panels, etc are. intended for general public), and UX guide (for developers) +https://code.visualstudio.com/docs/getstarted/userinterface +https://code.visualstudio.com/api/ux-guidelines/overview + + +- Files you need in an extension +https://code.visualstudio.com/api/get-started/extension-anatomy + + +## Contributing + +VERY USEFUL - How VS Code's sourcecode is organized (describes entry point files, what browser/ and common/ mean, etc, read the whole thing!) +- https://github.com/microsoft/vscode/wiki/Source-Code-Organization + + +- Full VSCode API (all functions/events/variables available in extension api - look on right hand side for organization) +https://code.visualstudio.com/api/references/vscode-api +(don't miss this part on cancellation tokens, how events and disposables work) https://code.visualstudio.com/api/references/vscode-api#api-patterns + + +- Guide on contributes ("contributes": part of package.json) - a "contribute" is how your extension mounts - it's all the things your extension actually contributes +https://code.visualstudio.com/api/references/contribution-points +(full package.json schema) https://code.visualstudio.com/api/references/extension-manifest +(activation events you can define in package.json) https://code.visualstudio.com/api/references/activation-events + + +- Every command built-in to VSCode (e.g. 'workbench.action.openWalkthrough') +https://code.visualstudio.com/api/references/commands + + +## Building VS Code's source + +https://github.com/microsoft/vscode/wiki/How-to-Contribute + + +## Summary + +Editor: +/vs/editor/contrib = allowed to depend on browser env +/vs/editor/{common|browser} = core code ('common' and 'browser' are the only two envs that are allowed here) +/vs/editor/{standalone} = seems unimportant - something about the standalone editor + + +Workbench: +/vs/workbench/contrib: + - no deps from outside here are allowed + - each contrib needs a single contribname.contribution.ts which serves as the entrypoint (eg /search/browser/search.contribution.ts) + - the contribution should expose its internal api from only 1 entrypoint and only be accessed from there, nowhere else (eg /search/common/search.ts) + - sounds like all services, etc should be managed by that one entrypoint +/vs/workbench/api = provides vscode.d.ts to iinterface with stuff outside of /workbench/contrib +/vs/workbench/{common|browser|electron-sandbox} = core code, "as minimal as possible" + +TODO andrew finish writing the summary from written notes (some visuals...)