Unsaved Files Status (kodevolve)
Shows the number of open dirty files in the VS Code status bar and an optional Explorer tree.
Named files are counted while dirty. Untitled files can be included separately. Click the status bar item, or run Unsaved Files Status (kodevolve): Show Open Unsaved Files, to select an open dirty file.
Highlights
- Separate clean and dirty labels, icons, tooltips, and colors.
- Light, dark, high-contrast, and high-contrast-light color overrides.
- Optional flat or nested Explorer view using the active file icon theme.
- Named and untitled file tracking.
- Workspace-aware settings.
- Namespaced commands with no default keyboard shortcuts.
- Diagnostic log channel available through
Unsaved Files Status (kodevolve): Show Logs.
Example
{
"kodevolve.unsavedFilesStatus.enabled": true,
"kodevolve.unsavedFilesStatus.files.includeUntitled": true,
"kodevolve.unsavedFilesStatus.explorer.enabled": true,
"kodevolve.unsavedFilesStatus.explorer.layout": "nested",
"kodevolve.unsavedFilesStatus.statusBar.colors.mode": "activeCustomBackground",
"kodevolve.unsavedFilesStatus.statusBar.colors.clean.default.foreground": "#000000",
"kodevolve.unsavedFilesStatus.statusBar.colors.clean.default.background": "#00ff00",
"kodevolve.unsavedFilesStatus.statusBar.colors.dirty.default.foreground": "#ffffff",
"kodevolve.unsavedFilesStatus.statusBar.colors.dirty.default.background": "#ff0000"
}
All settings are available under Extensions > Unsaved Files Status (kodevolve).
Background Color Limitation
VS Code does not provide extension-private arbitrary status bar backgrounds. It only permits shared warning and error background tokens.
Color modes:
foregroundOnly: isolated foreground colors; custom backgrounds are ignored.
themeBackground: uses the active theme's warning and error backgrounds.
activeCustomBackground: applies the current state's custom colors through shared tokens, reducing but not eliminating collisions.
customBackground: keeps both custom state colors in shared tokens for faster switching, with greater collision risk.
In either custom-background mode, unrelated status bar items such as Error Lens may inherit the same colors. This is a VS Code API limitation, not something an extension can fully isolate.
Commands
Open the Command Palette and search for Unsaved Files Status (kodevolve).
Common commands include:
- Show Open Unsaved Files
- Go to Next Dirty File
- Go to Previous Dirty File
- Toggle Extension
- Toggle Status Bar
- Toggle Explorer View
- Set Explorer Layout
- Set Status Bar Color Mode
- Clear Shared Status Bar Color Overrides
- Open Settings
- Show Logs
Every contributed command can be assigned a keyboard shortcut by the user. The extension assigns no default shortcuts.
Dirty-file navigation supports editor order, alphabetical order, workspace path, file type, recent use, and named-files-first ordering. Wrapping is configurable.
The log channel supports error, warning, info, and verbose levels through kodevolve.unsavedFilesStatus.logging.level.
Development
npm install
npm test
npm run test:integration
npm run package
npm run package increments the patch version and creates the VSIX.
License
MIT