mirror of
				https://github.com/ohmyzsh/ohmyzsh.git
				synced 2025-11-04 13:21:19 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			90 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			90 lines
		
	
	
		
			5.4 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# VS Code
 | 
						|
 | 
						|
This plugin provides useful aliases to simplify the interaction between the command line and VS Code, VSCodium, or Cursor editor.
 | 
						|
 | 
						|
To start using it, add the `vscode` plugin to your `plugins` array in `~/.zshrc`:
 | 
						|
 | 
						|
```zsh
 | 
						|
plugins=(... vscode)
 | 
						|
```
 | 
						|
 | 
						|
## Requirements
 | 
						|
 | 
						|
This plugin requires to have a flavour of VS Code installed and it's executable available in PATH.
 | 
						|
 | 
						|
You can install either:
 | 
						|
 | 
						|
- VS Code (code)
 | 
						|
- VS Code Insiders (code-insiders)
 | 
						|
- VSCodium (codium)
 | 
						|
- Cursor (cursor)
 | 
						|
 | 
						|
### MacOS
 | 
						|
 | 
						|
While Linux installations will add the executable to PATH, MacOS users might still have to do this manually:
 | 
						|
 | 
						|
[For VS Code and VS Code Insiders](https://code.visualstudio.com/docs/setup/mac#_launching-from-the-command-line),
 | 
						|
open the Command Palette via (F1 or ⇧⌘P) and type shell command to find the Shell Command:
 | 
						|
 | 
						|
> Shell Command: Install 'code' command in PATH
 | 
						|
 | 
						|
[For VSCodium](https://github.com/VSCodium/vscodium/blob/master/DOCS.md#how-do-i-open-vscodium-from-the-terminal),
 | 
						|
open the Command Palette via (F1 or ⇧⌘P) and type shell command to find the Shell Command:
 | 
						|
 | 
						|
> Shell Command: Install 'codium' command in PATH
 | 
						|
 | 
						|
For Cursor, open the Command Palette via (F1 or ⌘⇧P) and type shell command to find the Shell Command:
 | 
						|
 | 
						|
> Shell Command: Install 'cursor' command in PATH
 | 
						|
 | 
						|
## Using multiple flavours
 | 
						|
 | 
						|
If for any reason, you ever require to use multiple flavours of VS Code i.e. VS Code (stable) and VS Code
 | 
						|
Insiders, you can manually specify the flavour's executable. Add the following line to the .zshrc file
 | 
						|
(between the `ZSH_THEME` and the `plugins=()` lines). This will make the plugin use your manually defined
 | 
						|
executable.
 | 
						|
 | 
						|
```zsh
 | 
						|
ZSH_THEME=...
 | 
						|
 | 
						|
# Choose between one [code, code-insiders, codium, or cursor]
 | 
						|
# The following line will make the plugin to open VS Code Insiders
 | 
						|
# Invalid entries will be ignored, no aliases will be added
 | 
						|
VSCODE=code-insiders
 | 
						|
 | 
						|
plugins=(... vscode)
 | 
						|
 | 
						|
source $ZSH/oh-my-zsh.sh
 | 
						|
```
 | 
						|
 | 
						|
## Common aliases
 | 
						|
 | 
						|
| Alias                   | Command                        | Description                                                                                                 |
 | 
						|
| ----------------------- | ------------------------------ | ----------------------------------------------------------------------------------------------------------- |
 | 
						|
| vsc                     | code .                         | Open the current folder in VS code                                                                          |
 | 
						|
| vsc `dir`               | code `dir`                     | Open passed folder in VS code                                                                               |
 | 
						|
| vsca `dir`              | code --add `dir`               | Add folder(s) to the last active window                                                                     |
 | 
						|
| vscd `file` `file`      | code --diff `file` `file`      | Compare two files with each other.                                                                          |
 | 
						|
| vscg `file:line[:char]` | code --goto `file:line[:char]` | Open a file at the path on the specified line and character position.                                       |
 | 
						|
| vscn                    | code --new-window              | Force to open a new window.                                                                                 |
 | 
						|
| vscr                    | code --reuse-window            | Force to open a file or folder in the last active window.                                                   |
 | 
						|
| vscw                    | code --wait                    | Wait for the files to be closed before returning.                                                           |
 | 
						|
| vscu `dir`              | code --user-data-dir `dir`     | Specifies the directory that user data is kept in. Can be used to open multiple distinct instances of Code. |
 | 
						|
| vscp `profile`          | code --profile `profile`       | Specifies the profile to open Code with.                                                                    |
 | 
						|
 | 
						|
## Extensions aliases
 | 
						|
 | 
						|
| Alias                   | Command                                                          | Description                       |
 | 
						|
| ----------------------- | ---------------------------------------------------------------- | --------------------------------- |
 | 
						|
| vsced `dir`             | code --extensions-dir `dir`                                      | Set the root path for extensions. |
 | 
						|
| vscie `id or vsix-path` | code --install-extension `extension-id> or <extension-vsix-path` | Installs an extension.            |
 | 
						|
| vscue `id or vsix-path` | code --uninstall-extension `id or vsix-path`                     | Uninstalls an extension.          |
 | 
						|
 | 
						|
## Other options:
 | 
						|
 | 
						|
| Alias        | Command                   | Description                                                                                                           |
 | 
						|
| ------------ | ------------------------- | --------------------------------------------------------------------------------------------------------------------- |
 | 
						|
| vscv         | code --verbose            | Print verbose output (implies --wait).                                                                                |
 | 
						|
| vscl `level` | code --log `level`        | Log level to use. Default is 'info'. Allowed values are 'critical', 'error', 'warn', 'info', 'debug', 'trace', 'off'. |
 | 
						|
| vscde        | code --disable-extensions | Disable all installed extensions.                                                                                     |
 |