🎨 Theme Switcher
A VS Code extension that allows you to quickly cycle through available color themes via status bar buttons and keyboard shortcuts. Perfect for theme developers and anyone who wants to spot discrepancies when changing VS Code UI color tokens.
✨ Features
- 🎛️ Quick Theme Switching: Cycle through all available color themes with keyboard shortcuts or status bar buttons
- 🌗 Preferred Theme Shortcuts: Set and quickly jump to your preferred light and dark themes
- 🏷️ Status Bar Integration: Shows the current theme name and allows one-click theme switching
- ⌨️ Keyboard Shortcuts: Use
Ctrl+Shift+Alt+Right/Left to cycle themes, Ctrl+Shift+Alt+L/D for preferred themes
- ♿ High Contrast Toggle: Quickly toggle between Default High Contrast themes with
Ctrl+Alt+Shift+H
- 🔍 Theme Discovery: Automatically discovers all installed themes including built-in and extension themes
- 📢 Visual Feedback: Shows notifications when switching themes with current position in theme list
🚀 Usage
⌨️ Keyboard Shortcuts
Ctrl+Shift+Alt+Right (or Cmd+Shift+Alt+Right on Mac): Next theme
Ctrl+Shift+Alt+Left (or Cmd+Shift+Alt+Left on Mac): Previous theme
Ctrl+Shift+Alt+L (or Cmd+Shift+Alt+L on Mac): Switch to preferred light theme
Ctrl+Shift+Alt+D (or Cmd+Shift+Alt+D on Mac): Switch to preferred dark theme
Ctrl+Alt+Shift+H (or Cmd+Alt+Shift+H on Mac): Toggle between Default High Contrast themes
🏷️ Status Bar
The extension adds a status bar item showing the current theme name. Click it to cycle to the next theme.
🌗 Preferred Themes
You can set up your favorite light and dark themes for quick access:
⭐ Set Preferred Themes:
- Navigate to a theme you like (using cycling or manual selection)
- Run
Theme Switcher: Set Current Theme as Preferred Light or Theme Switcher: Set Current Theme as Preferred Dark
⚡ Jump to Preferred Themes:
- Use
Ctrl+Shift+Alt+L (Mac: Cmd+Shift+Alt+L) to instantly switch to your preferred light theme
- Use
Ctrl+Shift+Alt+D (Mac: Cmd+Shift+Alt+D) to instantly switch to your preferred dark theme
This is perfect for quickly switching between your go-to light and dark themes without cycling through all available options.
♿ High Contrast Toggle
For accessibility and testing purposes, you can quickly toggle between the built-in high contrast themes:
- Use
Ctrl+Alt+Shift+H (Mac: Cmd+Alt+Shift+H) to toggle between "Default High Contrast" and "Default High Contrast Light"
- If you're not currently using a high contrast theme, it will switch to "Default High Contrast" first
- Perfect for testing how your code or extensions look in high contrast mode
🛠️ Commands
Access these commands via the Command Palette (Ctrl+Shift+P or Cmd+Shift+P):
Theme Switcher: Next Theme
Theme Switcher: Previous Theme
Theme Switcher: Switch to Preferred Light Theme
Theme Switcher: Switch to Preferred Dark Theme
Theme Switcher: Set Current Theme as Preferred Light
Theme Switcher: Set Current Theme as Preferred Dark
Theme Switcher: Toggle High Contrast Themes
Theme Switcher: Toggle Status Bar
📦 Installation
- 🖥️ Open VS Code
- 🔎 Press
Ctrl+P (or Cmd+P on Mac) to open Quick Open
- ⬇️ Type
ext install theme-switcher and press Enter
- 🧩 Or install from the Extensions view by searching for "Theme Switcher"
🎯 Perfect For
This extension is ideal for:
- 👩🎨 Theme developers who need to quickly test their themes
- 🖌️ UI developers working with VS Code color tokens
- 🧩 Extension developers who want to ensure their extensions work well across different themes
- 🌞🌚 Anyone who frequently switches between light and dark themes
- ♿ Accessibility testers who need to quickly check high contrast themes
⚙️ Requirements
- VS Code 1.104.0 or higher
⚙️ Configuration
This extension adds the following settings:
themeSwitcher.preferredLightTheme: Set your preferred light theme name (leave empty for none)
themeSwitcher.preferredDarkTheme: Set your preferred dark theme name (leave empty for none)
You can set these manually in settings or use the provided commands to set your current theme as preferred.
🐞 Known Issues
- The extension may take a moment to initialize the theme list on first activation
- Theme changes from external sources (like other extensions) will cause a brief reinitialization
📝 Release Notes
🥚 0.0.1
Initial release of Theme Switcher:
- Basic theme cycling functionality
- Status bar integration
- Keyboard shortcuts
- Automatic theme discovery
🤝 Contributing
Found a bug or have a feature request? Please open an issue on the GitHub repository.
🎉 Enjoy switching themes!