Commit d385fcf
feat(list): devbase list の対話選択を simple-term-menu で TUI 化 (i29) (#42)
* build(deps): simple-term-menu を追加 (devbase list TUI化の前提)
* feat(list): メニュー表示文字列生成 (_build_menu_entries / _color_status) 追加
* feat(list): simple-term-menu による TUI 選択を追加 (fallback 温存)
* test(list): 既存 input テストを fallback 経路 (_HAVE_TERMINAL_MENU=False) に固定
* docs(list): TUI 化 (simple-term-menu) を CHANGELOG / README に反映
* docs(issues): i29 list TUI化 実装プランを追加
* fix(list): TUI メニューの色付け既定 OFF と 10件目以降の二重字下げ修正
- _STATUS_COLOR を False に: menu entry に ANSI を埋め込むと
simple_term_menu の wcswidth() が -1 を返し表示幅計算/ハイライト消去が
崩れるため、実機検証まで色付けを無効化 (機能 > 装飾)
- _build_menu_entries: ショートカット無し行 (10件目以降) の手動 4 スペース
字下げを除去。simple_term_menu はショートカット定義時に全行へ 4 文字
ガターを自前描画するため、二重インデントになっていた
- test: 上記に合わせて 10件目の期待値を body 先頭 (字下げ無し) に更新
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>1 parent bc2dd30 commit d385fcf
7 files changed
Lines changed: 875 additions & 7 deletions
File tree
- issues
- lib/devbase/commands
- tests/cli
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
8 | 14 | | |
9 | 15 | | |
10 | 16 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| 18 | + | |
18 | 19 | | |
19 | 20 | | |
20 | 21 | | |
| |||
0 commit comments