7 Commits

Author SHA1 Message Date
anders f32d248d71 Improve AI translation: skip Swedish/English, /trans toggle, better prompt
- All messages sent to LLM (not just non-Latin)
- LLM detects language and returns SKIP for understood languages
- /trans toggles echoing translations publicly to channel
- PM nicks ordered most-recent-first for tab completion
- tool_choice:none to fix vLLM/litellm 400 error
- Updated README with /trans command
2026-04-30 13:37:27 +02:00
anders 2e7006a8d5 Fix translation detection for Cyrillic and ISO-8859-1
- Skip ISO-8859-1 Latin chars (0xC0-0xFF) to avoid Swedish false positives
- Require 3+ non-Latin chars to trigger translation
- Handle both UTF-8 and single-byte Cyrillic encodings
- Update README with ai_port option
2026-04-30 12:15:17 +02:00
anders 4a5ca98c13 Add AI translation, input history, line wrapping, /ctcp
- Auto-translate non-Latin messages via OpenAI-compatible API
- Config in ~/.hircrc (created on first run, disabled by default)
- Translation shown in italic below original message
- Arrow up/down for input history (50 entries)
- Long lines wrap properly on window redraw
- /ctcp command for sending CTCP requests
- Updated README with AI translation docs
2026-04-30 11:40:43 +02:00
anders fe75236fad Add /me, /slap, /q, /topic, tab completion, bold events
- /me <action> sends CTCP ACTION
- /slap <nick> slaps with a large trout
- /q <nick> sets query target, /q clears it
- /topic to view/set channel topic
- Tab completion for nicks (cycling, : suffix at line start)
- Nick list tracking via NAMES/JOIN/PART/QUIT/NICK
- Bold formatting for joins, parts, quits, mode changes
- Incoming CTCP ACTION displayed as * nick action
- Updated README with all commands and features
2026-04-30 08:05:35 +02:00
anders 354f0eb8e9 Display incoming UTF-8 natively, convert only outgoing to ISO-8859-1
- Stop converting incoming text to ISO-8859-1 for display
- Terminal is UTF-8, so pass through directly (åäö, Cyrillic, etc.)
- Keep ISO-8859-1 conversion only for outgoing messages
- Add irc.log to .gitignore
2026-04-29 12:34:55 +02:00
anders 71f6699aa9 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
2026-04-29 12:03:57 +02:00
anders e2a5ddf9a0 first commit 2026-04-29 11:44:36 +02:00