VSCodeTools helps creating/opening/managing VSCode workspaces and synced (externalized) scripts or tables.
The only requirement is
code.exe set up as the default text editor in TD Preferences.
This tool is part of my greater toolkit/toolbar:
https://github.com/function-store/FunctionStore_tools
The component is a button with the following interactions (and more, check the parameters below to get a full picture of what it does!!!)
LeftClick: Open VSCode workspace (if set up, see below)
RightClick: Set up VSCode workspace
Shift+LeftClick: Sync to file selected script
Ctrl+Shift+Alt+LeftClick: Force sync to file dialog
Parameters:
- Code.exe: path to code.exe [this may be auto-filled, see Auto-detect]
- Workspace: path to VSCode workspace file (with extension .code-workspace) [his may be auto-filled, see Auto-detect]
- Auto-detect: will attempt to auto-fill the Code.exe and Workspace parameters. (on by default)
- Code.exe will be auto-filled if it is already set up in TD Preferences
- Workspace will be the name of the project file by default
- Auto-open: will open the VSCode workspace when the project starts
- Open: opens workspace, if it didn't exist before, a new one is created and opened in the project root folder
Sync Settings
- Script Sync Base Folder: folder path relative to project root where scripts will be synced
- Use Ctrl+Shift+E Shortcut: hitting this shortcut will externalize selected script or table to the base folder, with the name of the operator. If it already exists a dialog pops up to rename.
- You can also use Ctrl+Shift+Alt+E if you want to force the dialog to save to another path or with another name.
- Sync File Selected: same as Ctrl+Shift+E
Clear tab:
Explanation: if you ship your project file with synced files in your project, but without supplying the files you will have a bad time. Using tags helps with this, and you have several options (these are all undo-able actions!):
- Tags: this is read-only and should not be changed --- these are the tags that are automatically added if syncing/externalizing with this tool, and checked (all of them need to exist in an operator)
- Clear:
- selected DATs: will only clear sync and tags from the selected DATs
- in current pane: will clear sync and tags from current pane (and not any deeper children)
- in current pane and all children: will clear sync and tags from current pane and all children
- all in project: will clear sync and tags from all of the project