vscli 0.1.5

A CLI tool to launch vscode projects, which supports devcontainers.
vscli-0.1.5 is not a library.

vscli

MIT License Continuous integration Crates.io Homebrew Chocolatey

A CLI tool to launch vscode projects, which supports devcontainers.

Features

  • A shorthand for launching vscode projects
  • Detects whether a project is a devcontainers project, and launches the devcontainer instead
  • Supports the insiders version of vscode

Installation

Cargo

Install vscli using cargo on Windows or Linux:

cargo install vscli

Homebrew

Install vscli using homebrew on Linux:

brew install michidk/tools/vscli

Chocolatey

Install vscli using Chocolatey on Windows:

choco install vscli

Additional steps

You can set a shorthand alias for vscli in your shell's configuration file:

alias vs="vscli --verbosity error"

Usage

Commandline

After installation, the vscli command will be available:

Usage: vscli [OPTIONS] [PATH] [ARGS]...

Arguments:
  [PATH]
          The path of the vscode project to open

          [default: .]

  [ARGS]...
          Aditional arguments to pass to vscode

Options:
  -b, --behaviour <BEHAVIOUR>
          Launch behaviour

          [default: detect]

          Possible values:
          - detect:          Use devcontainer if it was detected
          - force-container: Force open with devcontainer, even if no config was found
          - force-classic:   Ignore devcontainers

  -i, --insiders
          Whether to launch the insiders version of vscode

  -v, --verbosity <VERBOSITY>
          The verbosity of the output

          [default: info]

  -h, --help
          Print help (see a summary with '-h')

Examples

You can launch a project using the default behaviour:

vscli                               # open vscode in the current directory
vscli .                             # open vscode in the current directory
vscli /path/to/project              # open vscode in the specified directory

The default behaviour tries to dectect whether the project is a devcontainers project. If it is, it will launch the devcontainer instead - if not it will launch vscode normally.

You can change the launch behvaiour using the --behaviour flag:

vscli --behaviour force-container . # force open vscode devcontainer (even if vscli did not detect a devcontainer)
vscli --behaviour force-classic .   # force open vscode without a devcontairer (even if vscli did detect a devcontainer)

You can launch the insiders version of vscode using the --insiders flag:

vscli --insiders .                  # open vscode insiders in the current directory

Additional arguments can be passed to the code executable, by specifying them after --:

vscli . -- --disable-gpu            # open vscode in the current directory without GPU hardware acceleration

Read more about the code flags, by executing code --help.