Add window levels, status bar, UTF-8 input, charset conversion
- Isolated window levels with 500-line scrollback per window - Window 1: status + private messages - Windows 2-9: channels - Status bar showing window, channel, nick prefix, channel modes - Automatic charset conversion (UTF-8/UTF-16 -> ISO-8859-1 on wire) - UTF-8 aware input editing with Ctrl-A/E/U/K/Y - CTCP VERSION reply with real OS info from uname() - Real name from passwd GECOS field - SIGWINCH handling for terminal resize - Ctrl-C quit confirmation (y + Enter) - /whois, /wii, /mode, /quit with default reason - Green prompt, timestamps on all messages
This commit is contained in:
@@ -6,9 +6,8 @@ A lightweight terminal IRC client written in C with automatic charset conversion
|
||||
|
||||
- **Automatic charset conversion** — detects UTF-8, UTF-16 (BOM), and ISO-8859-1 input; always sends ISO-8859-1 on the wire
|
||||
- **Window levels** — isolated windows with independent 500-line scrollback:
|
||||
- Window 1: Status (server messages, numerics, notices)
|
||||
- Window 2: Private messages
|
||||
- Windows 3–9: Channels
|
||||
- Window 1: Status and private messages
|
||||
- Windows 2–9: Channels
|
||||
- **Status bar** — shows current window, channel, nick prefix (@/+), and channel modes
|
||||
- **UTF-8 terminal support** — full multi-byte input editing
|
||||
- **CTCP VERSION** reply with OS info
|
||||
@@ -63,10 +62,10 @@ Typing text without a `/` prefix sends to the channel on the current window.
|
||||
|
||||
## Window Workflow
|
||||
|
||||
1. Press ESC+3 to switch to window 3
|
||||
1. Press ESC+2 to switch to window 2
|
||||
2. `/join #channel` — the channel is bound to that window
|
||||
3. Press ESC+4, `/join #other` — second channel on window 4
|
||||
4. ESC+1 to check status, ESC+2 for private messages
|
||||
3. Press ESC+3, `/join #other` — second channel on window 3
|
||||
4. ESC+1 to check status and private messages
|
||||
|
||||
Each window maintains its own scrollback. Switching redraws the full history.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user