Commit Graph
3 Commits
Author SHA1 Message Date
Kang bc4c32a854 fix(terminal): route multiline suggestions through paste review
Open the existing paste review from both suggestion entry points, preserving
complete quick commands and replacing the query only after confirmation.
Revalidate the input and session before sending; require bracketed paste for
direct filling and retain explicit line-by-line execution. Preserve literal
newlines through Telnet while sharing input recording and write guards.

Add multiline candidate labels, translations, regression coverage and docs.
No persistence format, dependency or fork revision changes.

Validation: workspace check, test (5863 passed, 37 ignored), fmt check and
clippy --all-targets passed. File permission tests used an unprivileged runner.
Linux Bash, Zsh and Fish PTY checks preserved continuations and blank lines,
with execution only after manual Enter. GUI, Windows and macOS unverified.
2026-11-08 20:02:00 +08:00
Kang c0a20564c4 fix(terminal): restore full-command suggestions and fuzzy filling
Share whole-history and named quick-command search between automatic
suggestions and Alt+R. Keep contextual token supplements in automatic mode,
deduplicate final target lines, and retain whole-command metadata.

Replace confirmed shell input through the shared editing-key encoder, wait
for echo, and require another manual Enter to execute. Remove the legacy
history badge and description without changing stored history formats.

Validation: core completion tests; 57 related desktop tests; workspace
check; cargo fmt check; workspace clippy with all targets. Also verify
manual Enter records the complete replacement command exactly once.

Workspace tests hit an existing read-only permission assertion under root;
the same test passes as nobody. Remaining package tests and doctests pass.
2026-11-08 19:04:49 +08:00
Kang 557266fc44 feat: Enhance command context handling and shell integration
- Introduced `CommandContext` event to manage shell command contexts more effectively.
- Updated `SessionManager` to create and push command contexts based on shell program and arguments.
- Enhanced `SshShellIntegrationState` to capture shell identities and push command contexts during SSH sessions.
- Added support for dialect detection in WSL environments.
- Implemented a new catalog generation script for offline command completion using Carapace.
- Added performance benchmarks for command completion.
- Updated documentation and tests for the new completion features.
2026-11-06 08:30:53 +08:00