# vscode-bash-debug
**Repository Path**: dglxlcl/vscode-bash-debug
## Basic Information
- **Project Name**: vscode-bash-debug
- **Description**: Bash shell debugger extension for VSCode (based on bashdb)
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 1
- **Created**: 2020-02-21
- **Last Updated**: 2023-07-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# VS Code Bash Debug
A bash debugger GUI frontend based on awesome `bashdb` scripts (bashdb now included in package).
# Overview
This is a SIMPLE bashdb debugger frontend. Useful for learning bash shell usage and writing simple scripts.
Useful hint: shellcheck extension does a great job with finding common script errors before debugging.
## Usage
1. Select **Debug -> Add Configuration** to add custom debug configuration (drop-down, path-input, etc...)
1. Select **Debug -> Start Debugging (F5)** to start debugging
See https://code.visualstudio.com/docs/editor/debugging for general usage.
## Sample features
- Debugging auto-configuration via `launch.json`
[
](https://raw.githubusercontent.com/rogalmic/vscode-bash-debug/gif/images/bash-debug-samp-launch-autoconfig.gif)
- Simple debugging in hello world application
[
](https://raw.githubusercontent.com/rogalmic/vscode-bash-debug/gif/images/bash-debug-samp-hello-world.gif)
- Standard input handling via terminal
[
](https://raw.githubusercontent.com/rogalmic/vscode-bash-debug/gif/images/bash-debug-samp-stdin-usage.gif)
- Pause support while script is running
[
](https://raw.githubusercontent.com/rogalmic/vscode-bash-debug/gif/images/bash-debug-samp-pause-support.gif)
- Advanced "Watch" and "Debug console" usage
[
](https://raw.githubusercontent.com/rogalmic/vscode-bash-debug/gif/images/bash-debug-samp-watch-advanced.gif)
- Conditional breakpoints usage
[
](https://raw.githubusercontent.com/rogalmic/vscode-bash-debug/gif/images/bash-debug-samp-conditional-breakpoints.gif)
For Windows users:
- Install [Windows Subsystem for Linux](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux)
- Terminal has problems with spaces in paths when powershell is used, use [WSL bash](https://github.com/Microsoft/vscode/issues/22317) instead. For beta WSL please read [this](https://github.com/rogalmic/vscode-bash-debug/issues/93)
- `pathBash` refers to BASH binary path in WSL filesystem, not path to `wsl.exe`/`bash.exe`
For macOS users:
- Read [here](https://github.com/rogalmic/vscode-bash-debug/wiki/macOS:-avoid-use-of--usr-local-bin-pkill) if your mac has `/usr/local/bin/pkill`.
- Install `bash` version `4.*` and set `pathBash` properly
## Dependencies
1. `bash` version `4.0` or later
2. `cat`, `mkfifo`, `rm`, `pkill`
## Limitations and known problems
* Use `terminalKind`@`launch.json` set to `integrated` or `external` for interactive scripts (using stdin)
* Currently debugger stops at first command
* `$0` variable shows path to bashdb
* Older `bash` versions ( `4.0` - `4.2` ) are not tested, but might workâ˘
* `BASH_REMATCH` gets overwritten when stepping through code