Overview Version History Q & A Rating & Review
Toggle Hidden Files
Toggle every boolean value inside the user-level files.exclude object.
This extension uses the VS Code configuration API, so it works with the active user-level settings instead of guessing a physical settings.json path.
Features
Toggle all boolean files.exclude entries between true and false
Force all boolean entries to hidden with Hide Excluded Files
Force all boolean entries to visible with Show Excluded Files
Explorer title button and status bar button stay in sync with the actual user settings
Handles mixed states by deriving the current state from the actual user-level config before every action
Refreshes from VS Code configuration change events and when the window regains focus
Optional toggleHiddenFiles.showStatusBarLabel setting to show or hide the Hidden/Shown text in the status bar
Commands
Toggle Hidden Files
Hide Excluded Files
Show Excluded Files
Behavior
Only boolean values inside files.exclude are changed
Non-boolean rules such as { "when": ... } are preserved untouched
Mixed states are treated as "not fully hidden", so toggle will hide everything first
If there are no boolean entries inside files.exclude, the extension shows a warning state instead of guessing
Development and testing
bun install
bun run check
bun run package
Manual testing
Run bun install
Run bun run check
Open this project in VS Code
Press F5 to launch an Extension Development Host
In the development host, open User Settings JSON and prepare a sample:
{
"files.exclude": {
".vscode": true,
".idea": false,
"dist": true,
"**/node_modules": {
"when": "$(basename).js"
}
}
}
Verify the Explorer title button appears next to the new folder button
Verify the status bar button appears at the bottom
Click the button or run Toggle Hidden Files, Hide Excluded Files, and Show Excluded Files from the Command Palette
Confirm only boolean entries change and object rules stay untouched
Open a second VS Code or compatible IDE window using the same user profile, change one files.exclude value manually, then return to the first window and confirm the button state refreshes on focus