# v0.5.0 — Terminal search, keyword alerts & a major TTL scripting upgrade ## ✨ New features **Find text in your scroll-back (Ctrl+F)** * Press **Ctrl+F** to open a search bar right inside the terminal and find any text in the scroll-back history — **Enter** jumps to the previous match, **Shift+Enter** to the next, **F3** repeats, **Esc** closes. * Every match is highlighted in **yellow**, the current one in **orange**, and matches stay anchored to the right line even as old output scrolls off the top of the buffer. **Keyword highlighting + per-tab alerts** * Define your own keyword list under **Settings → Highlight** (add, remove, and enable/disable each one). Matching text is highlighted on screen wherever it appears, case-insensitive. * When a keyword shows up on a tab you're **not** currently looking at, that tab's dot turns **red** so you notice it — switching to the tab clears the alert. Great for watching several sessions at once for an error string. **A much bigger, TeraTerm-compatible TTL scripting language** * The TTL engine now understands a large set of **TeraTerm-compatible commands**, so many existing TeraTerm macros run with little or no change. * New control flow — `for`/`next`, `do`/`loop`, `while`/`until`, `call`, `goto`, `break`, `continue`, `include` — plus a real expression parser (parentheses, logical & comparison operators, hex `0x` / `$`), and dozens of new string, file/folder and utility commands (`sprintf`, `strsplit`, `filereadln`, `getdate`, `random`, `crc32`, `inputbox`, `yesnobox`, …). * New **serial-specific** script commands: `sendbreak`, `setbaud`, `setdtr`, `setrts`, `sendfile`. * Note: a single-string `wait` keeps ETTerms' existing settle-and-timeout behavior; multi-string `wait` follows TeraTerm semantics (times out and continues with `result=0`). **See — or hide — what your scripts are doing** * Scripts now echo their progress (waits, sends, errors) in **grey** directly in the terminal, and you can switch this off under **Settings → Terminal** (**Show script trace**). * The trace is display-only: it never reaches your session log, the AI bridge, or the device, so your captured machine logs stay clean. ## 📦 Downloads Two builds are produced: | Build | Needs .NET 8 Desktop Runtime? | Notes | |-------|-------------------------------|-------| | **Standard** (`ETTerms_v0.5.0`) | ✅ Yes | Smaller; for machines that already have the runtime | | **Portable** (`ETTerms_v0.5.0_portable`) | ❌ No | Runtime bundled — unzip and run, no install / admin needed | Run `ETTerms v0.5.0.exe`. ## 🔗 Links * TTL reference: [docs/ttl-script-reference.md](https://github.com/ETWen/ETTerms/blob/main/docs/ttl-script-reference.md) * PDU MCP & Serial MCP setup guide: [docs/serial-mcp-guide.md](https://github.com/ETWen/ETTerms/blob/main/docs/serial-mcp-guide.md) **Full changelog:** [v0.4.0...v0.5.0](https://github.com/ETWen/ETTerms/compare/v0.4.0...v0.5.0)