From 202f5480e1e2906266c5704d895d1c7722c59079 Mon Sep 17 00:00:00 2001 From: Justin Bollinger Date: Sun, 3 May 2026 14:37:08 -0400 Subject: [PATCH] build(deps): make simple-term-menu a default dependency Move simple-term-menu from the [tui] optional extra into the main dependencies list so arrow-key menu navigation works out of the box. Users can still opt into the plain numbered menu with HATE_CRACK_PLAIN_MENU=1. Co-Authored-By: Claude Opus 4.7 (1M context) --- README.md | 12 +++--------- pyproject.toml | 4 +--- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 284af3c..ccb72e8 100644 --- a/README.md +++ b/README.md @@ -358,17 +358,11 @@ This installs hooks defined in `prek.toml` using the pre-commit local-repo TOML Note: prek 0.3.3 expects `repos = [...]` at the top level. The old `[hooks.] commands = [...]` format is not supported. -### Arrow-Key Menu Navigation (Optional) +### Arrow-Key Menu Navigation -Install the `[tui]` extra to enable arrow-key menu navigation via `simple-term-menu`: +Arrow-key menu navigation is enabled by default via the `simple-term-menu` dependency. When running in a terminal (TTY), menus render with arrow-key navigation and number-key shortcuts. -```bash -uv pip install '.[tui]' -``` - -When installed and running in a terminal (TTY), menus render with arrow-key navigation and number-key shortcuts. Without it, the classic numbered `print()` + `input()` menu is used. - -To force the plain numbered menu even when `simple-term-menu` is installed, set `HATE_CRACK_PLAIN_MENU=1`. +To force the classic numbered `print()` + `input()` menu, set `HATE_CRACK_PLAIN_MENU=1`. ### Dev Dependencies diff --git a/pyproject.toml b/pyproject.toml index e9301e0..72a0ba9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -13,14 +13,12 @@ dependencies = [ "beautifulsoup4>=4.12.0", "openpyxl>=3.0.0", "packaging>=21.0", + "simple-term-menu==1.6.6", ] [project.scripts] hate_crack = "hate_crack.__main__:main" -[project.optional-dependencies] -tui = ["simple-term-menu==1.6.6"] - [tool.setuptools.packages.find] include = ["hate_crack*"]