https://github.com/14ag/blinter_vscode_extension
Integrates the Blinter linter into VS Code, providing fast diagnostics and quick fixes for Windows batch files (.bat, .cmd).
https://github.com/14ag/blinter_vscode_extension
batch-file batch-script vscode-extension
Last synced: 3 months ago
JSON representation
Integrates the Blinter linter into VS Code, providing fast diagnostics and quick fixes for Windows batch files (.bat, .cmd).
- Host: GitHub
- URL: https://github.com/14ag/blinter_vscode_extension
- Owner: 14ag
- License: mit
- Created: 2025-10-24T12:51:21.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-11-06T20:59:42.000Z (3 months ago)
- Last Synced: 2025-11-06T21:04:22.722Z (3 months ago)
- Topics: batch-file, batch-script, vscode-extension
- Language: JavaScript
- Homepage:
- Size: 19.4 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Blinter — VS Code Batch Linter
Blinter integrates the native Blinter executable into Visual Studio Code’s **Run & Debug** workflow so Windows batch files (`.bat`, `.cmd`) get live diagnostics, variable tracking, and actionable quick fixes while you iterate.
## What it does
- Registers a `blinter-debug` debug type that launches the bundled `blinter.exe` and streams its output into VS Code.
- Parses stdout incrementally to keep the **Problems** panel, hover tooltips, and inline “stupid line” decorations in sync.
- Exposes a **Blinter Output** view in the Run & Debug sidebar that groups diagnostics (errors, warnings, undefined variables, etc.) and lets you jump straight to problem lines.
- Provides command-casing quick fixes (configurable) and detailed variable traces for undefined-variable diagnostics.
## Requirements
- Visual Studio Code 1.75.0 or higher (stable or Insiders).
- Bundled native `blinter.exe` in `bin/` (or `bins/`) inside the extension. The extension does **not** fall back to Python scripts.
Important third-party notice
----------------------------
This extension bundles the upstream Blinter linter (standalone executable) produced
by the Blinter project (author: `tboy1337`). The bundled executable in this
repository is `bin/Blinter-v1.0.94.exe` (Blinter v1.0.94). Blinter itself is
licensed under the GNU AGPL-3.0 (AGPL-3.0-or-later). By bundling the executable
we are redistributing AGPL-licensed code; please review the upstream
license (https://github.com/tboy1337/Blinter) and ensure the AGPL obligations are
acceptable for your distribution channel. The extension code (this repository)
is released under the MIT license (see `LICENSE`).
Credits
-------
- Blinter (core linter executable): tboy1337 — https://github.com/tboy1337/Blinter
- This VS Code integration and extension scaffolding: Blinter VS Code Extension
contributors (see repository history / git log)
## Quick start
1. Confirm `bin/blinter.exe` is included alongside the extension (already bundled in the published VSIX).
2. Open a workspace that contains the batch file you want to lint.
3. Open the **Run & Debug** view (`Ctrl+Shift+D`) and choose the `Launch Batch (Blinter)` configuration. If prompted, allow VS Code to create a `launch.json` using the snippet below.
4. Press **Run** (F5). Blinter runs immediately, populating the Problems panel, in-editor highlights, and the Blinter Output view.
Example `launch.json` entry:
```
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch Batch (Blinter)",
"type": "blinter-debug",
"request": "launch",
"program": "${file}"
}
]
}
```
## Settings
- `blinter.enabled` (boolean) – enable/disable the integration entirely.
- `blinter.runOn` (`"onSave" | "onType"`) – keep the legacy background linting triggers if you prefer automatic runs outside of debugging.
- `blinter.debounceDelay` (number) – debounce (ms) for `onType` runs.
- `blinter.rulesPath` (string|null) – optional override for a custom rules JSON file.
- `blinter.quickFixCodes` (string[]) – diagnostic codes that should offer command-casing quick fixes.
- `blinter.stupidHighlightColor` (string) – hex color used for highlighted “stupid” lines during a debug session.
## Output & troubleshooting
- View → Output → **Blinter** shows the exact command invocation, stdout, and stderr.
- If `blinter.exe` cannot be located, a warning is raised and the Output channel logs the lookup paths (`bin/` or `bins/`). Copy the executable into one of those folders and rerun.
- Diagnostics clear automatically when a session ends; start a new Run & Debug session to refresh analysis.
## Packaging & publishing
- Run `build.bat` to build a distributable VSIX. The script regenerates the icon assets and runs `vsce package`.
- See `PACKAGING.md` for end-to-end packaging guidance (including CI notes and artifact checks).
## License
- MIT — see `LICENSE`.
Questions or feature requests? Open an issue or tweak the Blinter Output webview to suit your team’s workflow.