c886befac77d312d855659aa5d4a4f2795e5e472
Pasting (Ctrl-V or browser menu) now sends clipboard text to the PTY.
- on:paste reads clipboard_data().get_data("text"); newlines normalized
to CR (the line-submit byte) via the pure, unit-tested prepare_paste()
- when the app enabled bracketed paste (DECSET 2004, exposed via the new
TerminalCore::bracketed_paste() proxy), the text is wrapped in
ESC[200~ / ESC[201~ so vim et al. don't auto-indent each pasted line
- pasting returns the view to live mode + scrolls to bottom, matching the
keydown handler
- Cargo.toml: add ClipboardEvent/DataTransfer (and explicit WheelEvent)
to the web-sys feature allowlist
- right-click is left to the browser's default menu (avoids requiring
clipboard-read permission); Ctrl-V is the primary path
Adds a prepare_paste unit test (14 terminal tests total) and marks paste
done in TERMINAL_ROADMAP.md. Also fixes a clippy manual_contains lint in
an existing test.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
BASE_PATH Demo
Minimal Leptos SSR project that reuses a few components from ui to validate SiteConfig::BASE_PATH.
The public app path is /rustui, while Leptos SSR routes are still declared as /, /check, and /deep/nested. The server strips /rustui before route matching, and the client router uses /rustui as its base.
cargo leptos watch
Then open:
http://127.0.0.1:3100/rustuihttp://127.0.0.1:3100/rustui/checkhttp://127.0.0.1:3100/rustui/deep/nested
Change app_config/src/lib.rs to test another base path.
Description
Languages
Rust
88.8%
CSS
7.6%
JavaScript
3.6%