feat(vscode): add language support for shell, Docker, TOML, YAML, and Makefile
Extensions (settings/config/development.nix)
- bash-ide-vscode, shellcheck, shell-format — Bash LSP + linting + formatting
- ms-azuretools.vscode-docker — Dockerfile syntax and Docker integration
- tamasfe.even-better-toml — TOML (Cargo.toml, starship.toml, pyproject.toml)
- redhat.vscode-yaml — YAML with schema validation
- ms-vscode.makefile-tools — Makefile support (marketplace)
- Clarify ms-dotnettools.csharp covers VB.NET too
Packages (settings/config/packages.nix)
- Add shellcheck and shfmt so shell extensions can resolve their binaries
Settings (home/programs/vscode.nix)
- Add explicit editor.defaultFormatter bindings for every used language:
JS/TS → prettier, Svelte → svelte-vscode, TOML → even-better-toml,
shell → shell-format, Dockerfile → vscode-docker, Makefile → makefile-tools
- Add shell extension binary paths (shellcheck.executablePath, shellformat.path,
bashIde.shellcheckPath) pointing at Nix-managed installs
- Enable YAML validation and formatting
- Add TOML formatter options
- Move [python].defaultFormatter into the unified formatters block