gnodet opened a new pull request, #23605:
URL: https://github.com/apache/camel/pull/23605

   [CAMEL-23635](https://issues.apache.org/jira/browse/CAMEL-23635)
   
   ## Summary
   
   Embeds a real JLine shell inside the TUI using JLine's virtual terminal 
infrastructure:
   
   - **ShellPanel**: new overlay panel accessible from F2 → Shell
     - Uses `LineDisciplineTerminal` + `ScreenTerminal` (VT100 emulator) + 
`ScreenTerminalOutputStream` — the same wiring pattern as JLine's own 
`WebTerminal`
     - Shell runs in a background thread via `ShellBuilder` with 
`PicocliCommandRegistry` — full tab completion, history, aliases, fish-style 
autosuggestions
     - Screen buffer dumped each frame and converted to TamboUI `Span`/`Line` 
widgets with proper color/attribute mapping
     - Full resize handling: half↔full toggle via F11, real terminal resize 
propagated via `setSize()` → SIGWINCH
     - Key events encoded as ANSI escape sequences and forwarded to the virtual 
terminal
   
   - **Layout**: half-screen (50/50 split with monitoring tabs) or full-screen 
(shell takes entire content area)
   
   ## Test plan
   
   - [ ] `camel top` → F2 → Shell → verify shell prompt appears
   - [ ] Type `catalog component --filter=kafka` → verify output with colors
   - [ ] Test tab completion on commands
   - [ ] F11 → verify full-screen toggle
   - [ ] Resize terminal window → verify shell reflows
   - [ ] Escape → verify close (full→half→close)
   - [ ] Reopen shell → verify previous session state
   
   _Claude Code on behalf of Guillaume Nodet_


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to