# Changelog ## v2.1 - Made the installer compatible with minimal Calculinux environments by replacing `install -m` with `cp` followed by `chmod`. ## Current - Bash shell integration is installed automatically through `~/.bashrc`. - Multi-command actions execute as one TUI handoff; TUI is not redrawn between commands. - Each generated command is added to Bash history. - Failed commands stop the current action and pause on a `read` before TUI resumes. - Marks are stored as absolute paths and survive directory changes. - Returning to a directory shows its previously marked entries again. - Moving marked entries uses the current TUI directory as the destination. - `.tui` lookup is limited to the user's home directory. ## Unreleased - Hidden files and directories are hidden by default; use `tui -a` / `tui --all` to show them. - Added a synthetic parent-directory entry at the top of every listing. - Left arrow moves the cursor to the parent entry; pressing left again moves to the parent directory. - Navigation is limited to the directory containing the applicable `.tui` file. - Added `ls --color`-style colors for directories, symlinks, executables, archives and common image files. - Marked paths remain visible as marked when returning to their directory. ## 2.0.7 - Added `tui -v` / `tui --version` for verifying which installed version is running. - Fixed Ctrl+C exit so the parent Bash process changes to the directory where TUI was closed. - TUI now uses a separate exit status for normal Ctrl+C exit versus shell-action handoff. - Shell actions are read into an array before execution, so commands containing `read`, `&&`, and `||` receive the real terminal stdin and behave like normal Bash commands. ## 3.0.0 - Added data-driven action menu with `M`. - Added `A` toggle for hidden files and `Q` to quit; these are defined in `.tui` as normal key bindings. - Menu entries, labels, shortcuts, conditions and actions are defined in `.tui`. - Added generic menu conditions including `git`, `file`, `folder`, `marked`, `multiple`, `exists:...`, `missing:...` and boolean `all`/`any`/`not` expressions. - Added `target: none` actions for directory-level operations that do not operate on a selected file. - Added Git menu examples: status, pull, diff, log, add, commit and push. - `A` state is preserved when returning from a shell action.