Files
gh-cadrianmae-claude-market…/skills/code-pointer/references/advanced_usage.md
2025-11-29 18:03:05 +08:00

2.4 KiB

Advanced VSCode CLI Usage

Window control, multiple files, and advanced features.

Opening Multiple Files

# Open multiple files at different positions
code -g file1.js:10 -g file2.js:20 -g file3.py:100

# Mix different files and positions
code -g src/main.ts:1:1 -g src/types.ts:50:0 -g README.md:1

Each -g flag opens a separate file at its specified position.

Window Control

New Window (-n)

# Force opening in brand new VSCode window
code -n -g file.js:10

# Useful when you don't want to disturb current work
code -n -g important.js:42

Reuse Window (-r)

# Opens in existing VSCode window as new tab
code -r -g file.js:10

# Default behavior without -n flag
code -g file.js:10  # Opens in existing window by default

Wait for Close (-w)

# Shell waits until user closes the file
code -w -g file.js:10

# Useful for git commit messages, etc.
git config core.editor "code -w"

Diff View

# Open side-by-side diff comparison
code -d original.js modified.js

# Compare two versions of a file
code -d old-version.py new-version.py

Merge Editor

# Open three-way merge editor
code -m modified1.js modified2.js common.js result.js

# Useful for resolving merge conflicts

Add to Workspace

# Adds folder to current workspace
code -a /path/to/folder

# Add multiple folders
code -a /path/one -a /path/two

Profile and Data Directory

Open with Profile

# Uses specific VSCode profile settings
code --profile my-profile -g src/index.ts:42

# Useful for different development environments
code --profile python-dev -g main.py:10

Custom Data Directory

# Uses isolated VSCode instance with separate settings
code --user-data-dir /tmp/vscode-instance -g file.js:10

# Useful for testing or isolated environments

Combining Options

# New window with multiple files
code -n -g file1.js:10 -g file2.js:20

# Reuse window and wait
code -r -w -g file.js:10

# Profile with specific file position
code --profile work -g project/src/app.js:42:10

URL Scheme Alternative

Syntax:

vscode://file/{absolute_path}:line:column

Usage:

# Can be used in shell as URI
xdg-open "vscode://file//home/user/project/main.js:5:10"

# Useful for integration with web apps or other tools

Requirements:

  • Full absolute paths required
  • File must be on local filesystem
  • VSCode must be registered as URI handler (automatic on install)