Skip to content

Latest commit

 

History

History
1186 lines (890 loc) · 61.3 KB

File metadata and controls

1186 lines (890 loc) · 61.3 KB

Unreleased

Added:

  • Internal buffers (logs, highlights, etc) can be added to sidebar
  • Improved legibility of the returned values of MONITOR list (/monitor L)
  • Config option (preview.card.description_decode_html) to decode html strings in preview card descriptions
  • Support displaying a larger version of the card images in-app
  • IRCv3 no-implicit-names support
  • Keyboard shortcuts validation (e.g no duplicate key binds)
  • actions.buffer.notifications settings to control how interacting with notifications is handled
  • actions.buffer.click_nickname and actions.nicklist.click_nickname can be used to specify whether a nickname will: open query and how the query is opened, insert nickname in the input box, or no action ("no-action" or "noop"); takes over functionality from buffer.nickname.click and buffer.channel.nicklist.click and adds the ability to perform no action
  • actions.buffer.click_channel_name and actions.buffer.click_highlight can be set to no action ("no-action" or "noop") to not open the channel when clicking on the channel name
  • Explicit portable mode
  • Theme editor can be closed via Escape

Fixed:

  • Nick highlight improvements
    • Handle nick possessives <nick>'s (<nick> should be parsed)
    • Skip parsing nicks inside abbreviations (e.g. shouldn't have highlights)
  • Notifications no longer immediately dismissed in some Wayland DE(s)
  • Do not send duplicate JOIN message when using /join
  • Do not send MARKREAD for non-PRIVMSG/NOTICE messages when the server does not support echoes
  • Do not show unread/highlight indicators for ignored messages
  • Do not copy empty selections to the primary clipboard (i.e. do not clear the primary clipboard when a non-selection action is performed, such as moving the cursor or focusing the text input on some systems)
  • Prevent anti-flood rate limiting from refilling the token bucket beyond its configured capacity
  • Show unread indicators for panes hidden by maximize
  • Allow commands (e.g. /join) to be used in the input box of not-joined channels
  • Disabled menu entries now block clicks from passing through
  • Preserve own away state when leaving and rejoining a channel
  • Do not panic when previewing an SVG with a very large filter
  • Reject overlong lines from the server connection instead of buffering them without bound
  • Do not panic when a server-supplied METADATA retry-after value would overflow the retry timer
  • Stop busy-looping on CPU when a DCC file-transfer peer closes its connection early

Changed:

  • change_mode server messages are categorized as actions (i.e. actions_dimmed controls whether they are dimmed by default)
  • Renamed sidebar.server_iconsidebar.primary_icon and sidebar.server_font_sizesidebar.primary_font_size since the settings now apply to both servers and internal buffers
  • Renamed sidebar.font_sizesidebar.secondary_font_size to reflect its relationship to sidebar.primary_font_size
  • Renamed actions.buffer.localactions.buffer.open_internal to match naming convention used elsewhere
  • Renamed actions.buffer.click_username to actions.buffer.click_nickname for more consistent terminology
  • Moved functionality from buffer.nickname.clickactions.buffer.click_nickname and buffer.channel.nicklist.clickactions.nicklist.click_nickname
  • Windows release artifacts are signed using SignPath
  • Set window icon also on Linux for X11

Thanks:

  • Contributions: @englut, @luca020400, @classabbyamp, @KaiKorla, @TheDcoder, @City-busz
  • Bug reports: @luca020400, agent314

2026.7.2 (2026-06-08)

Added:

  • Add clear buffer shortcut to title bar
  • Indicate in query if user is offline in its title bar

Fixed:

  • Issue where large window size could cause Halloy to crash in certain scenarios
  • Correctly support RPL_METADATASYNCLATER
  • Issue where input box could lose focus after a filehost, reply, or reaction modal
  • Issue where a buffer could jitter in certain particular scroll positions
  • Minor issues where input tooltips could fail to reflect current caret position, highlight the correct active argument, show when first the input is first loaded, etc
  • Show Display in Configuration docs menu
  • Document that servers.<name>.username setting will fall back to servers.<name>.nickname if not set
  • Nick completion tooltip no longer shows when there is only a single match

Changed:

  • buffer.reply.insert_nick no longer inserts nick when replying in query buffers or to yourself
  • Input tooltips are aligned with the input (i.e. inset when text_input.nickname.enabled = true)
  • servers.<name>.sasl.plain.username setting will fall back to servers.<name>.nickname if not set
  • Replace the Windows MSI package with a per-user Inno Setup installer

Thanks:

  • Contributions: @luca020400, @englut, @furudean
  • Feature requests: @g00s
  • Bug reports: wwWraith, @skizzerz, @ncfavier, @account1009

2026.7.1 (2026-06-02)

Fixed:

  • Panic when a reply contains a multibyte character near the start of message
  • Ensure messages don't get formatted if channel has +c mode (colour filter)
  • User highlighting incorrectly matching contraction suffixes

Thanks:

  • Contributions: @luca020400, @aniketkotal
  • Bug reports: @WinnerWind, @sco1, @classabbyamp, @aniketkotal

2026.7 (2026-05-28)

Added:

  • Support for IRCv3 reply client tag
  • Support for IRCv3 draft/message-redaction
  • Support for IRCv3 metadata display-name, avatar, pronouns, homepage, color, status keys
  • IRCv3 bot mode support, with bot icon in buffers and nicklists
  • Support for IRCv3 WebSockets
  • Support for displaying SVGs
  • Notification for reacts (notifications.reaction)
  • Theme colors for horizontal rule text and buffer backlog/date separators
  • Font size settings the sidebar (sidebar.font_size) and server titles in the sidebar (sidebar.server_font_size)
  • The focused buffer is indicated in the sidebar by a thin border (can be configured with the optional theme color buttons.primary.border_active, falls back to buffer.border_selected if no color is configured; set to "#00000000" to disable)
  • Two new optional theme colors, buttons.primary.border_active and buttons.secondary.border_active that define border color used to signal secondary state (set to "#00000000" to disable)
  • The config buffer.server_messages.condense.max may be used to limit the number of user entries shown in condensed messages
  • Setting to close queries when closing query buffer panes (buffer.close.query)
  • Configuration options for font stretch (font.stretch)
  • The default font is not bundled if default feature iosevka-font is disabled.
  • Customize the character used to indicate a nickname was truncated with display.truncation_character
  • Support for draft/chathistory-end message tag
  • Setting to mark new messages as read for any open buffer when the buffer is scrolled to the bottom and Halloy is focused (buffer.mark_as_read.on_message)
  • Setting to hide the text of messages that contain only a single URL, when the URL's preview is visible (preview.hide_url)
  • Nick and channel completion picker
  • Runtime graphics settings (graphic backend, vsync, and antialiasing)

Fixed:

  • Issue where duplicate messages could appear for sent messages when connecting to a soju bouncer
  • Issue where ZNC playback would produce duplicate messages
  • Record NICK and QUIT messages returned by draft/event-playback (chathistory)
  • Allow multiple file uploads when pasting on macOS
  • Preview inclusion conditions would require both channel and user/server_message be specified, when one or the other should be sufficient
  • Matching against users for some include/exclude conditions
  • Do not hide consecutive nicknames if the user's displayed access levels or bot mode changes
  • Link matching:
    • Channel link matching on single line only
    • Fix link matching for both end of line delimiters & punctuations
    • Handle URLs ending with paired delimiters chars when matching links
    • Handle leading delimiters when parsing link fragments to match nicks after quotes
  • Issue where a shorter highlight word would match instead of a longer one sharing the same prefix
  • Issue where unread indicator could appear in sidebar for an open pane that does not have unread messages
  • Issue where backlog divider in highlights or logs pane would not update when marking the pane as read
  • VERSION and JOIN commands on connect are skipped if server is primary soju server
  • tor enabled builds
  • Emoji pickers not finding newer emoji like 🙂‍↕️
  • Selection expansion will take precedence over input history navigation (i.e. shift + ↑ will expand the selection to include the top line of input, rather than navigate to the previous input history entry)
  • Window title displays buffer name after closing previously last pane

Changed:

  • On-join topic messages dropped by default (buffer.server_messages.join_topic), instead the topic banner is enabled by default (buffer.channel.topic_banner)
  • Topic messages manually requested via /topic have a distinct setting from topic messages received on join (buffer.server_messages.topicbuffer.server_messages.request_topic & buffer.server_messages.join_topic)
  • Badging on server icons used to indicate unread/highlight state (instead of the color of the server icon); unread indicators positioned to be aligned with server badge
  • Default sidebar.server_icon.size changed from 1220
  • Default sidebar.unread_indicator.highlight_icon_size changed from 86
  • Default sidebar.spacing.server changed from 62
  • Default sidebar.padding.buffer changed from [4, 4] to [5, 4]
  • For filehosts, localhost is now treated as a secure transport when using servers.<name>.filehost.override_url
  • buffer.mark_as_read.on_message = true is now equivalent to buffer.mark_as_read.on_message = "open" (previously equivalent to buffer.mark_as_read.on_message = "focused")
  • Tooltips have had their spacing tightened
  • Reactions are listed in the order they were first added to the message
  • Reaction tooltips:
    • Display the reaction text in a larger font size (uses font.only_emojis_size if set and the reaction is an emoji)
    • Lists nicks with a new layout, where nicks are now colored and are listed in order of when they reacted

Thanks:

  • Contributions: @bb010g, @furudean, @englut, @luca020400, @4e554c4c, @stephenfin, @achille, @ncfavier
  • Bug reports: @bb010g, daniiooo, @e00E, belthesar, @Fingel, @death916, @furudean, @ncfavier, @WinnerWind, @alexaandru, @kasper93, tranzystorekk
  • Feature requests: @WinnerWind, Shyny, @classabbyamp, @4e554c4c, @furudean, @englut, @esden, @Erroneuz

2026.6 (2026-04-21)

Added:

  • Files can be uploaded to server using soju.im/FILEHOST (see the file uploads guide for details)
  • typing
    • Per-server typing settings (servers.<name>.typing)
    • Animate typing dots
    • buffer.typing.style setting with padded and popped modes for typing indicators
  • Settings to reroute direct PRIVMSG and/or NOTICE messages to another buffer (servers.<name>.reroute.query and servers.<name>.reroute.notice)
  • channel-context support (messages with the tag will be automatically rerouted)
  • Theme & Display
    • buffer.nickname.color now supports { palette = ["#RRGGBB", ...] } for nickname colors from a fixed set
    • buffer.server_messages.away setting to control when automated away messages are shown
    • buffer.server_messages.away theme setting to control how automated away messages appear
    • Setting to control whether unread indicators are shown on open buffers (sidebar.unread_indicator.show_on_open_buffers)
    • Unread indicators for queries can be hidden via sidebar.unread_indicator.exclude
    • Ability to customize the arrows used for directional messages such as join, part, quit, kick, and CTCP messages.
    • Expanded tooltips setting to allow hiding auto-complete tooltips
  • Commands
    • Ability to add optional arguments in custom aliases (/msg ChanServ op $channel $1?-)
    • /massmessage command to send Ergo/Solanum mass-messages
    • /invite command tooltip and validation provided, and display of INVITE-related messages improved
    • // can be used to escape a leading /; in other words, //topic example will send the message /topic example (not execute the /topic command)
  • Controls
    • Right-click context menu on messages now includes "Copy message" to copy the message text to the clipboard
    • Message drafts are remembered across Halloy sessions (can be disabled with buffer.text_input.persist)
    • ctrl + , now opens the config file ( + , on macOs)
    • emacs bindings for ctrl + u and ctrl + w
    • buffer.text_input.kill_to_clipboard to control key bindings moving killed text to clipboard
  • Windows MSI installer does not automatically start Halloy during passive or quiet installations

Changed:

  • Default typing style (buffer.typing.style) is now popped (from padded)
  • Moved typing settings from buffer.channel.typing to buffer.typing to clarify that they apply to queries as well as channels
  • Moved nicklist nickname settings from buffer.channel.nicklist to buffer.nickname (away and color)
  • Colons, semicolons and double quotes are no longer considered part of channel names
  • Backslash escapes are now only interpreted when escaping markdown formatting characters
  • Tooltips will be shown for all commands, even those not available on the server, with an error tooltip shown if the server does not support the command
  • Parsed URLs will be displayed with IDN encoded domains (to avoid domain spoofing) and percent-decoded path & later components (for legibility) by default (display.decode_urls)

Fixed:

  • Server notices with wildcard targets (for example NOTICE *) are shown in the server buffer again
  • typing
    • Settings for buffers could get in a stuck state without any way to control them (or see that the state is stuck)
    • +typing=done should not be sent when the message is sent
  • chathistory
    • Support for multiline messages
    • TARGETS pagination
    • More conservative treatment of pagination on reconnect
    • Greatly reduced the scope of deduplication to only messages that can be expected to possibly be duplicates
  • Receive & apply reactions in queries
  • IRC URIs now handle bracketed IPv6 hosts and percent-encoded channel targets correctly
  • Fix URLs with non-ASCII characters getting percent-encoded when rendered in buffers
  • Filtering for common trailing punctuation and delimiters when linking channel names (and nicks & urls)
  • /MOTD command will not trigger end-of-registration actions
  • Repeat lines in some MOTDs would be deduplicated
  • Keyboard shortcuts now work in popped out buffer windows, including command bar shortcuts
  • sidebar.order_by setting works when set to "config"

Removed:

  • buffer.channel.message.nickname_color in favor of buffer.nickname.color

Thanks:

  • Contributions: @furudean, @omentic, @KaiKorla, @achille, @classabbyamp, @ncfavier, @englut, @WinnerWind, @okdana, @luca020400, @mgdudas, @auronandace
  • Bug reports: sebbu, @whitequark, @SnoopJ, @esden, @miyukoc, @ld-cd, @achille, @classabbyamp, vignoux, @ncfavier, @englut, @cyrneko, @jeffharrell1, @RoboDanjal, @internet-catte, @Lualttt, @c727, @cyrneko, @furudean, @lephe
  • Feature requests: @omentic, @classabbyamp, @ncfavier, @ineeee, @4e554c4c, @RoboDanjal

2026.5 (2026-03-21)

Added:

  • Setting to limit reaction display length (buffer.channel.message.max_reaction_display) and maximum length (buffer.channel.message.max_reaction_chars)
  • Emoji and command picker entries are now clickable and insert the selected completion directly into the input.
  • Multi-line send support (uses IRCv3 multiline when available)
  • Typing indicator support (uses IRCv3 typing)
  • Add emoji reactions for supported servers (uses IRCv3 react)
  • New "config" option to sidebar.order_channels_by. Uses server.<server_name>.channels to determine order.
  • Case insensitive sort of query names in sidebar
  • Copied order_channels_by from sidebar to server.<name>, defaults to sidebar.order_channels_by if empty.
  • Alias commands (see buffer.commands.aliases)
  • Exec command support for generating input from shell command output (see buffer.commands.exec)
  • The titlebar now displays the current buffer for each window.
  • /plain-me, /format-me, /plain-msg, /format-msg, /plain-notice, and /format-notice commands were added to provide /plain//format functionality to the /me, /msg, and /notice commands

Fixed:

  • Improved message length calculation (when known the bytes required to relay a message are included in the calculation, when unknown an estimate is used)
  • Prevent interaction leakage behind open modals: clicks, cursor changes, and hover states no longer affect underlying UI while preserving outside-click and Esc to close
  • Prevent clicks from passing through completion picker overlays to content behind them (for example nicknames in the buffer).
  • Regression that could make the application slow to close
  • Apply locale to context menu, copy, and date separator timestamps
  • Fixed direct message notifications when excludes are present
  • Fixed reloading config for channel sorting.
  • Fixed handling of URLs ending with ).
  • Auto-format rules are applied to the content of /me, /msg, and /notice commands

Changed:

  • Spoilers (/f ||hello world||) now reveal on click instead of hover

Security:

  • Fixed file transfer path traversal vulnerability when using DCC
  • Config directories and config.toml are now created with owner-only permissions

Thanks:

  • Contributions: @KaiKorla, @englut, @mango766, @ncfavier, @classabbyamp, @melocene
  • Bug reports: chmod222, @whitequark, @englut, sebbu, @ascarion, @4e554c4c, @BKVad1m, @mango766, @esden
  • Feature requests: @gAlleb, @jtbx, @cyrneko, @englut, @ascarion

2026.4 (2026-03-03)

Added:

  • Support for the IRCv3 react client tag.
  • Correctly record window size if window is maximized
  • Optional settings to transform channel name casing:
    • sidebar.channel_name_casing for channel entries in the sidebar
    • buffer.channel.channel_name_casing for channel pane title bars

Changed:

  • Notification toasts can now use a subtitle on supported operating systems
  • New about screen accessible from the user menu in the sidebar
  • Added setting to mark focused buffers as read on incoming messages
  • Formatting inside code spans is now ignored in order to prevent breaks in code span styling
  • Links inside code spans are not detected in order to prevent breaks in code span styling
  • Setting to hide consecutive timestamps (buffer.timestamp.hide_consecutive)
  • Channel name casing can now be transformed (e.g. to lowercase) in sidebar entries and channel pane titles via channel_name_casing settings

Fixed:

  • High CPU usage when opening very large buffers
  • Window state is saved even if altered shortly before quitting
  • Default dimmed value for server messages no longer overrides dimmed = false set for individual server message kinds
  • Issue where context menu items would not respond to clicks
  • Filters are loaded on first connection to server via bouncer-networks and updated on config file reload
  • Compatibility with ZNC's backlog service
  • Markdown formatting inside code spans is properly ignored

Security:

  • Improve link preview management to mitigate spam-driven resource abuse

Thanks:

  • Contributions: @melocene, @4e554c4c, @TheOneric, @bmndc, @RealKindOne, @englut
  • Feature requests: @deepspaceaxolotl, @RoboDanjal
  • Bug reports: @barretgoat, @TheOneric, @Erroneuz, @BKVad1m. @englut, @whitequark, petteri, xtracked

2026.3 (2026-02-24)

Added:

  • Support requesting window attention (setting urgency) for notifications (notifications.<type>.request_attention)
  • Default server message pseudo-type, allowing the default values for server message types to be user-specified
  • Default internal message pseudo-type, allowing the default values for internal message types to be user-specified
  • Add setting to specify queries to be added to the sidebar after connecting to a server
  • Added ability to disconnect on SASL authentication failure (defaults to true)
  • Setting to configure font line height (font.line_height)
  • Ability to add multiple keybinds for a single shortcut
  • Sidebar actions can now be configured separately for channel and query buffers (actions.sidebar.channel, actions.sidebar.query)
  • URL context menu now supports Hide Preview / Show Preview
  • New shortcuts:
    • new_horizontal_buffer (not bound by default)
    • new_vertical_buffer (not bound by default)
    • quit_application (defaults to Ctrl+Q on linux, not bound on Windows/MacOS)
  • Expand show_access_levels to allow all access levels (in addition to highest or no access levels) in buffer/nicklist/input
  • Setting to allow locale specification used when formatting timestamps
  • Setting to include chantypes / prefixes when sorting channels in the sidebar
  • Manual disconnection from a server will disable auto-reconnect
  • Disconnected servers can be connected to via the Connect to server entry in the context menu for its sidebar entry
  • Servers can be prevented from connecting on launch (or configuration reload) with the servers.<name>.autoconnect setting
  • /connect (without an argument) and /reconnect can be used in open buffers for disconnected servers to (re-)connect to the server
  • /join (without an argument) can be used in channel buffers where the channel is not joined in order to (re-)join the channel

Fixed:

  • Channel mode in pane headers not updating immediately after mode changes
  • Cycle next/previous (unread) buffer shortcuts work from an empty pane
  • Virtualize message rendering to improve buffer performance
  • Default proxy used when checking for an update
  • Detect system locale when formatting timestamps with locale-specific stftime formats
  • When changing connection details for server (e.g. address, port, SASL authentication, etc) the connection details will be properly updated and the connection re-initiated
  • Server configurations are properly updated when reloading configuration file

Changed:

  • When leaving a server (via context menu on sidebar entry or /quit), the server will not be automatically removed from the sidebar
  • Condensed server messages are now enabled by default for nick changes, joins, parts, and quits
  • The default condensed server message icon is now "none"
  • sidebar.user_menu.show_new_version_indicator setting has been changed to check_for_update_on_launch to clarify that it prevents the check for an update
  • Default settings:
    • buffer.server_messages.condense.messages: []["change-host", "change-nick", "join", "part", "quit"]
    • sidebar.padding.buffer: [5,5][4,4]
    • sidebar.spacing.server: 126

Fixed:

  • When joining a channel fails (for example, invite-only or channel full), we now show the failure reason

Thanks:

  • Contributions: @Hummer12007, @chamlis, @englut
  • Feature requests: @megumintyan, @4e554c4c, @RoboDanjal, @stacyharper, @zZzUP3RzZz, @Porkepix, @vidje
  • Bug reports: @someone2037492034, @deepspaceaxolotl, @whitequark, @sebbu2, @esden, @Porkepix, @someone2037492034, @Hexorg, @sulrich, @Erroneuz

2026.2 (2026-02-01)

Added:

  • Settings to disable (selectively, or for the entire server) confirmation of delivery for sent messages
  • Setting to adjust inner spacing and outer padding for panes (pane.gap.inner, pane.gap.outer)
  • Setting to style unread query buffers as highlights in the sidebar (sidebar.unread_indicator.query_as_highlight)
  • Settings to configure card and image preview dimensions
  • Support for transparent background.

Fixed:

  • Buffer not showing history until resize
  • Previews are fetched through the same proxy as the server (or default proxy) for HTTP/SOCKS5 proxies
  • No longer highlight nickname mentions in sent messages in certain scenarios
  • Filters applied to one server will no longer hide query panes for other servers
  • Card preview description text is now limited in height to prevent excessive text display

Changed:

  • No longer highlight matches in sent messages
  • No longer show notifications for messages where the relevant buffer is open and Halloy is focused

Thanks:

  • Contributions: @Hummer12007
  • Bug reports: @e00E, @oooo-ps, @csmith, @bw1, @deepspaceaxolotl

2026.1.1 (2026-01-21)

Fixed:

  • Version number reported in AppData file

Thanks:

  • Bug reports: @englut

2026.1 (2026-01-20)

Added:

  • Added Open URL entry to URL context menus
  • Setting to not hide consecutive if previous message was a image preview
  • Channel discovery buffer to view all channels on a server (using LIST). Can be opened via sidebar button or command bar.
  • Setting to hide server icons in sidemenu
  • Setting to adjust buffer padding and server spacing in sidemenu
  • Setting to adjust entry padding in context menus
  • Support for configuring a regex-based allowlist of URL patterns for Preview
  • Setting to open a new pane, replace current pane, or open a new window after /join
  • Emoji, channel, and user completion can be used with commands
  • Auto-completion (emoji/channel/user) will auto-complete at the text cursor (instead of the end of the current input)
  • Insert-nickname will place the nickname at the text cursor (instead of end of the current input)
  • Backlog separator can be customized with a custom color and text (with the ability to remove text from it)
  • Setting to disable unread indicators for specified channels/servers
  • Users and messages can be filtered using regular expressions
  • Added ability to set default QUIT and PART reason
  • /connect command to temporarily connect to a server
  • Setting for the font size of messages that contain only emojis

Fixed:

  • No longer any delay in showing a tooltip after hovering
  • Ignored users will not be suggested by user auto-completion
  • Channel auto-completion works with all channel prefixes specified by the server
  • Number pad enter now sends messages instead of adding a new line
  • Join & monitor commands sent automatically on connection respect TARGMAX limits specified by the server
  • /sysinfo is cleared from input when sent, and is recorded to the buffer even if the server doesn't support echoes
  • Channel and user links in messages in the highlight buffer
  • Remember fullscreen state across sessions

Changed:

  • Keybindings for macOS default to Emacs-like by default, to match native text-input behavior

Thanks:

  • Contributions: @csmith
  • Bug reports: halloy3002, g00s, Eagle-1
  • Feature requests: @tribly, @deepspaceaxolotl, @dieperdev, @Erroneuz, @lorenzosu, @Summertime, @WinnerWind, @vidje

2025.12 (2025-11-28)

Added:

  • Ability to exclude previews from specific server messages (e.g. topic, part, quit)
  • Ability to expand & contract condensed messages via left-click
  • Ability to hide nickname for consecutive messages from the same user
  • Ability to hide the indicator when a new version of Halloy is available
  • Ability to set Emacs-like keybindings for text input
  • Ability to specify a distinct sound for each match highlight set
  • Border radius on both image previews and cards displaying images through meta tags (configurable)
  • Change-host and kick server messages messages can be condensed
  • Context menu added to text input when right clicking
  • Context menu item added to server-wide buffers to close all queries
  • Exit application from user menu
  • Fuzzy matching when searching in command bar
  • Keyboard shortcuts can now be unset
  • Messages that fail to send are dimmed and marked, and can be deleted or re-sent (for servers that support the echo-message capability)
  • Per server custom proxy configuration option
  • Reload Halloy by sending SIGUSR1 on Unix system
  • Setting to disable file transfers (DCC), removing it from the UI
  • Setting to notify for every message in a channel
  • /plain command to send text with automatic formatting disabled
  • Whowas instead of Whois action in context menu for offline nicknames

Fixed:

  • Channels with the same name as servers now appear before servers when searching in command bar
  • Flickering logo on Welcome screen
  • Hide jitter in backlog divider caused by read marker updates when marking read on send
  • Larger fonts (and font sizes) can be used without blanking out the input box
  • NumLock status respected in input box & shortcuts
  • Server messages reporting an inability to send to a nick/channel are routed to the relevant buffer
  • Standard Exif rotation data is used when displaying images

Changed:

  • Buffer context menu items in sidebar are sorted alphabetically
  • By default the backlog separator is hidden when all messages in a pane have been marked as read (buffer.backlog_separator.hide_when_all_read)
  • Unicode nicknames are now supported
  • User menu configuration moved to [sidebar.user_menu] section

Thanks:

  • Contributions: @kasperkronborg, @mistivia, @oooo-ps
  • Bug reports: @Frikilinux, ThePendulum, @crabbedhaloablution, @findus, @Darksecond
  • Feature requests: @cyrneko, ilya, abby, @clorteau, @RobertCraigie, @dei-layborer, @classabbyamp, @4e554c4c, @dmd, @ghost, @Erroneuz, @kasper93, @inphobia

2025.11 (2025-10-27)

Fixed:

  • Regression when loading chat history in a channel

Thanks:

  • Bug reports: @Erroneuz

2025.10 (2025-10-27)

Added:

  • /sysinfo command to send system information to current buffer
  • Copy URLs from context menu by right-clicking on links
  • Settings to condense multiple consecutive server messages into a single abbreviated message
  • /detach command to detach from channels (soju feature)
  • Support for USERINFO CTCP query
  • Configurable anti-flood protection for servers that do not advertise SAFERATE
  • Channel modes will be retrieved on joining a channel (to be shown in the pane title bar)
  • Display own nickname next to text input field
  • Server messages can be dimmed (enabled by default), to lessen their visual impact relative to user messages
  • Context menu to timestamps that shows the message date, and will copy the timestamp to the clipboard when clicked
  • Setting to open new buffers scrolled to the bottom (rather than scrolled to the last unread message, the default and current behavior)
  • macOS: Ability to adjust content rendering to account for titlebar
  • Setting to remove all window decorations
  • New sounds: Zone, Bloop, Drop, Tweep.

Fixed:

  • Enforce delay between notifications
  • Larger fonts (and font sizes) can be used without blanking out the sidebar or pane title bar(s)
  • The primary clipboard (with copy on selection & paste with middle click) is supported on Linux
  • Sound effects are now properly reloaded when config file is refreshed from within the application
  • Filters are applied only to the server they are specified for
  • Filters are renormalized properly when ISUPPORT is updated
  • Crash when typing /bouncer into the message box
  • Scroll state no longer changes rapidly when long previews for URL(s) are present in history
  • Sidebar menu always takes one click to open (would sometimes require two clicks)

Changed:

  • The logs pane will only contain log messages since the last of launch of Halloy (i.e. for the current session only)
  • Always show version number in user menu

Thanks:

  • Contributions: @Toby222, @Frikilinux, @4e554c4c, @apollo7321, @Bartkk0, @seraxis
  • Bug reports: @Toby222, @deepspaceaxolotl, @zhelezov, @Erroneuz, @dgz0, @csmith, @otonoton, @mefistoso
  • Feature requests: @j0lol, @xcfrg, ThePendulum, i_like_halloy

2025.9 (2025-09-16)

Added:

  • Added different unread icons for highlights vs regular unread messages
  • Setting to change icons for unread messages and unread highlight messages
  • Setting to change server icon size
  • Setting to control spacing between messages in buffers
  • Ability to specific multiple themes which then gets picked randomly at launch
  • Notification indicator on sidebar menu for warning & error log messages
  • Ability to mark as read on buffer close only if scrolled to the bottom of the buffer (new default behavior)
  • /part, /topic, /mode, /kick, and /ctcp commands can have their target(s) argument skipped when it can be inferred from context (e.g. /topic will target the current channel by default when used in a channel buffer)
  • /cleartopic command to remove a channel's topic (will target the current channel by default when used in a channel buffer)
  • Ability to hide and theme kick server messages
  • Setting to control whether or not to restore on launch the panes that were open when Halloy last closed
  • Setting for split axis chosen as the shorter dimension of the focused pane (new default behavior)
  • Setting for split axis chosen as the shorter dimension of the largest splittable pane
  • soju.im/bouncer-networks support
  • Setting to hide the backlog divider when all messages in the buffer have been read
  • Setting to specify whether nickname highlighting is case sensitive
  • Setting to hide topic changes

Fixed:

  • Receiving files over DCC will no longer stall when sender stops accepting received receipts
  • Attempting to navigate to the next/previous unread buffer, when there is no such buffer, will no longer clear the buffer
  • Window position is now validated, preventing windows from opening on disconnected monitors
  • When kicked from a channel the kick message will be broadcast in the server buffer (which remains open) as well as in the channel history (which is closed on kick)
  • Preview images with large dimensions will not be displayed if larger than the allowed buffer size
  • Do not activate the mark as read buffer when blocked/hidden messages are unread in the buffer
  • Nickname highlighting is case insensitive by default (and uses the server's specified casemapping)
  • Nickname changes properly broadcast in all channels user is in
  • Page up/down behavior moves by consistent page length, and will no longer get stuck at the top of a buffer
  • file_transfer.save_directory is now affected by path substitutions (tilde expansion & relative path prefixing)

Changed:

  • Relative paths in configuration files are now prefixed with config dir

Thanks:

  • Contributions: @Death916, @4e554c4c, @freakyy85, @hashcatHitman, @5GameMaker
  • Bug reports: @privacyadmin, @rlndd, @wingedonezero, @Seishiin, @Erroneuz, @andar1an, freakyy85, ThinkT510, alexia, @darienm, quaff, @zhelezov
  • Feature requests: @deepspaceaxolotl, @4e554c4c, @seraxis, RebeLLz, @cvengler, @barretgoat, @remexre, @dmd

2025.8 (2025-07-31)

Added:

  • Clear buffers with /clear command
  • Notification indicator on sidebar menu for application updates and file transfers

Fixed:

  • Nicknames in query was always shown as offline
  • macOS now properly prioritizes XDG config directory (~/.config/halloy) over user config directory (~/Library/Application Support/halloy)

2025.7 (2025-07-26)

Added:

  • Ability to ignore nicknames on server level or on a per-channel basis
  • Ability to truncate nicknames in buffer
  • New option to customize the appearance of offline nicknames
  • Specify whether nicknames in buffers appear with the user's current status or status at time of sending the message
  • Log level filtering for the log buffer (ctrl + l) and log file
  • Per toast type setting for showing content in toasts
  • Ability to hide nick and mode change server messages
  • Context menu item added to server-wide buffers to mark all messages as read
  • Auto-accept file transfers, with support for nick and mask filtering
  • Adjustable scrollbar sizing

Fixed:

  • Sidebar menu is now drawn with the correct offset
  • Prevent messages with previews from shifting position on hover
  • Recognize registration completion on older servers without capability negotiation (i.e. send on_connect, umodes, etc.)

Changed:

  • Optimized message loading by implementing lazy loading: buffers now load only enough messages to fill the visible area instead of always loading 500+ messages.
  • The [buffer.away] section has been split into [buffer.channel.nicklist] and [buffer.nickname] for greater flexibility
  • Colorize the level text in log buffer based on theme
  • Scrollbars now use a dedicated scrollbar color instead of horizontal_rule
  • Tor is now an optional feature. Build with --features tor to enable Tor proxy support
  • Topic "set at" time is now shown with local timezone offset, instead of UTC's

Thanks:

  • Contributions: @4e554c4c, @KE0VVT, @englut, @KaiKorla, @root-goblin
  • Bug reports: @darienm, @mercster, @ChrisRenfrow, @glguy
  • Feature requests: @rossburton, death916, @Celeo, @TehPeGaSuS, @gdluca, @darienm, @RealKindOne, @Tahomaru, @tribly

2025.6 (2025-06-14)

Added:

  • New application icon
  • Show channel mode in panel if available
  • Configuration options for font weight and bold weight
  • /delay <seconds> command that can be used to control the timing of commands sent on connect
  • Configuration option for the ordering of servers in the sidebar

Fixed:

  • Handling of RPL_NOWAWAY & RPL_UNAWAY to reflect user's own AWAY state
  • Draft messages are saved while navigating message history (i.e. pressing ↑ then ↓ in the input box will restore an unsent message after displaying sent message history)

Thanks:

  • Contributions: @englut, @KaiKorla, @kit-ty-kate, @mhegreberg, @ohhskar, Rune Seir
  • Bug reports: @awbradle
  • Feature requests: @darienm, @kasper93, @auronandace, @n-kalosha

2025.5 (2025-05-05)

Added:

  • Ability to show a modal prompt before opening a URL
  • WHOIS command now accepts optional server parameter
  • CTCP requests through commands and user context
  • Title bar button and keyboard shortcut to mark a buffer as read (will update the read marker as well, if the read-marker capability is available)
  • Mark as Read settings to control when buffers are automatically marked as read
  • /hop command. /hop parts the current channel and joins a new one
  • Settings to limit passwords read from a file to the first line of the file only (on by default)
  • Receive WALLOPS messages in the server buffer (color configurable in themes)

Changed:

  • Clicking to insert a username will now use same suffixes specified for autocomplete
  • Emoji picker will only show once there are two characters after : (by default, configurable)
  • Autocomplete will match users based on how recently they were seen in the channel (by default, configurable)
  • Include & exclude settings for previews apply to queries as well as channels

2025.4 (2025-04-07)

Added:

  • All toast notifications now display the server name
  • Server messages (join, part, etc.) are now user-aware and will color nicknames accordingly
  • Actions will be colored with the same features as regular messages (nicknames, urls, etc)
  • Shortcuts for cycling buffers with unread message(s)
    • Cycle to next buffer with unread message(s) ctrl + `
    • Cycle to previous buffer with unread message(s) ctrl + ~
  • Navigate commands & emoji picker with ↑ & ↓ (as well as Tab & Shift-Tab)
  • Expanded command completion and error checking/reporting
  • Various shortcuts for https://themes.halloy.chat/
    • The Command Bar now includes a "Discover More Themes" action, which opens the website
    • The Theme Editor now has a "Share Theme with Community" option that opens the submit page with the theme payload pre-filled
  • Ability to adjust alpha value of away users
  • New action settings section with settings to control how to open buffers in response to various user actions

Fixed:

  • No longer freezes under Wayland when window(s) are not visible
  • Emoji picker is no longer case sensitive (i.e. 🤔 and :THINKING: will both match 🤔)
  • Full support for the /notice command
    • Message text will no longer be truncated to the first word
    • Sent notices appear in message history
    • /notice <targets> (without any message text) will open a pane for the target(s) without sending a message
  • /msg <targets> supports more than one target when opening pane(s) without sending a message

Changed:

  • Improved font rendering on Windows for better readability
  • Sidebar buffer action settings have been moved to the new action settings section
    • sidebar.buffer_actionactions.sidebar.buffer
    • sidebar.buffer_focused_actionactions.sidebar.focused_buffer

2025.3 (2025-03-14)

Added:

  • Highlights by regex and words
  • Time remaining is now displayed during file transfers
  • Sidebar now automatically adjusts its width based on content
  • Ability to customize default pane splitting direction (vertical or horizontal)
  • Clicking a nickname is now configurable. The default behavior has changed to open a query.
  • Ability to quit Halloy through command bar and keyboard shortcut
  • New shortcuts for scrolling a buffer:
    • Scroll buffer up a page pageup (Fn + on macOS)
    • Scroll buffer down a page pagedown (Fn + on macOS)
    • Scroll to top of buffer ctrl + ( + on macOS)
    • Scroll to bottom of buffer ctrl + ( + on macOS)

Changed:

  • [file_transfer.save_directory] is now default download path for transfers. If set, files will be downloaded there by default. Otherwise, you'll be prompted to choose a location
  • Ability to dynamically select dark or light theme based on OS appearance.
  • /msg <target> (without any message text) will now open a pane for the target without sending a message
  • Text input of the active pane will remain focused after all actions
  • Focus last known active pane on launch
  • Changed maximize / restore buffer shortcuts to ctrl + shift + / ctrl + shift + ( + shift + / ctrl + shift + on macOS) to prevent collision with new scroll shortcuts

2025.2 (2025-02-20)

Added:

  • Emoji picker accessible via : in text input
  • Automatically replace :shortcode: with corresponding emoji
  • Added an option to show or hide images in preview cards by default

Fixed:

  • infinite_scroll was defaulting to false, contrary to its documented default value. Now defaults to true
  • A rare issue where the app opens smaller than when closed
  • Closing the application while it is minimized (on Windows) causes it to open with the wrong size and position next time
  • TLS connection issue on Windows (10+)

2025.1 (2025-02-02)

Added:

  • Image and card previews for url links
  • Ability to disable dimming of usernames when away
  • Ability to customize autocomplete sorting direction and completion suffixes
  • Ability to hide command descriptions
  • Ability to set delay before triggering notifications
  • Ability to toggle fullscreen
  • Ability to exclude and include notifications.
  • New IRCv3 extensions support
    • chathistory
    • setname
    • Standard Replies
  • Case mapping support via ISUPPORT
  • Restore last known window position and size at launch
  • Date separators in buffers when day changes
  • Show nickname in user-context menu
  • Tor support as a proxy option

Fixed:

  • Long username & password combinations could cause SASL authentication to fail
  • nick_password_command is now working as intended
  • Don't add suffix (: ) to prompt if there is no valid nick to autocomplete
  • Append .toml filename when saving themes on macOS
  • Highlight notifications are correctly triggered for /me actions

Changed:

  • Changed focus buffer shortcuts to include ctrl ( on macOS) to avoid interfering with default text input shortcuts for word navigation ( + , + )

2024.14 (2024-10-29)

Fixed:

  • CPU spiking due to memory leak in upstream crate.

2024.13 (2024-10-27)

Added:

  • Highlight buffer to view highlights across all servers. Can be opened via sidebar button or command bar.
  • Logging buffer to view logs. Can be opened via sidebar button or command bar.
  • New hotkeys
    • Toggle channel topic (Ctrl + Alt + t (macOS: + + t))
    • Toggle file_transfers buffer (Ctrl + j (macOS: + j))
    • Toggle logs buffer (Ctrl + l (macOS: + l))
    • Toggle theme editor window (Ctrl + t (macOS: + t))
  • New configuration options
    • Dynamically select dark or light theme based on OS appearance. See configuration.
    • Ability to define a shell command for loading a NICKSERV password. See configuration
    • Ability to define a shell command for loading a SASL password. See configuration
    • Show/hide sidebar button to view logs. See configuration
    • Ability to align nicknames above messages. See configuration.

Fixed:

  • Inverted scrolling direction.
  • Only highlight if user nick isn't part of another word.
  • Errors from password commands are now caught and displayed to the user.

Removed:

  • Configuration options:
    • [sidebar.buttons] in favor for the new User Menu

2024.12 (2024-09-17)

Added:

  • Multi-window support: Pop out panes into separate windows.
  • In-app theme editor with ability to with share it via a halloy:// URL.
  • Clickable users and channels in buffers.
  • New configuration options
    • Ability to include or exclude channels for server messages (join, part, etc.). See configuration.
    • Ability to color nicknames within channel messages. See configuration
    • Ability to define a shell command for loading a server password. See configuration
  • Enable support for IRCv3 msgid and read-marker

Fixed:

  • Regression where messages sent to ZNC virtual users were routed to the wrong buffer (e.g. *status routed to status).
  • Timeouts that could occur while Halloy was running in the background.

Changed:

  • Default Ghost sequence changed to REGAIN.

2024.11 (2024-09-04)

Added:

Fixed:

  • Expanded recognized login notifications (used to join channels that report themselves as requiring registration after logging in)
  • Messages with multiple targets are correctly recorded into multiple buffers (and/or multiple times into the same buffer) client-side.
  • Messages sent with a STATUSMSG prefix are recorded and indicated in the corresponding channel.
  • Ability to position the sidebar at the top, bottom, right, or left. See configuration.
  • /mode requires too many parameters for certain commands.

Changed:

  • Reworked themes to add better customization possibilities
    • NOTE Old theme files are not compatible with the new format. However all the themes in the theme community has been updated to the new format.
  • Unread indicator has changed from a boolean value to a enum. See configuration.
  • Renamed sidebar.default_action to sidebar.buffer_action.
  • Auto-completing (with tab) a nickname at the beginning of the input line will append ': ' (colon space). Otherwise, a space is appended to the completion.
  • SIGTERM and SIGINT are now intercepted and trigger the same exit path as a normal window close

Removed:

  • Removed hex configuration option for server messages and nicknames.
    • hex was previously used to overwrite a color value. This is now done through the new theme format.

2024.10 (2024-08-04)

Added:

  • Small icon in sidemenu when a new release is available
  • Enable support for IRCv3 chghost, account-notify, and extended-join

Removed:

  • Persistent window position and size due to an upstream bug

2024.9 (2024-07-29)

Added:

  • Rich formatted and clickable URLs
  • Text formatting through /format command. For more details, see text formatting guide.
  • Support for CTCP queries CLIENTINFO, PING, SOURCE, and VERSION
  • Custom notification sounds. Use your own sounds or select from a few new built-in options. For more details, see notification configuration.
  • Support DCC Send requests with spaces in the filename
  • Reload config button in Sidebar

Fixed:

  • Text input missing key presses in certain instances
  • Connection timeout when UI is suspended on an offscreen workspace due to channel back pressure
  • Raw commands are passed through unmodified
  • AWAY command cuts off the away message

2024.8 (2024-07-05)

Added:

  • Ability to open irc:// and ircs:// URL schemes
  • Ability to overwrite nickname colors by providing a hex string (see buffer configuration).
  • Ability to overwrite server & internal message colors by providing a hex string (see buffer configuration).
  • Configurable shortcuts for "Leave Buffer" and "Toggle Sidebar" actions (see keyboard shortcuts configuration).
  • Ability to remember window position and size when reopened.
  • Ability to hide unread indicators in sidebar (see sidemenu configuration)

Fixed:

  • UTF-8 channel name rendering in sidebar and in pane title bars.

2024.7 (2024-05-05)

Added:

  • Reload configuration file from within the application (Ctrl + r (macOS: + r))
  • Allow configuration of internal messages in buffer (see buffer configuration)
  • User information added to context menu
  • Support for IRCv3 CAP NEW and CAP DEL subcommands
  • Enable support for IRCv3 multi-prefix, message-tags, WHOX, and UTF8ONLY
  • Dynamic commands and tooltips added to command auto-completion via ISUPPORT
  • Added support for socks5 proxy configuration (see proxy configuration)
  • Added support for http proxy configuration (see proxy configuration)

Changed:

  • Simplified onboarding experience for users without a config.toml file
  • MacOS will now also look in $HOME/.config/halloy for config.toml.
  • Context menus can be dismissed by pressing Escape
  • Join channels that report themselves as requiring registration after logging in

Fixed:

  • No longer automatically reconnects to a server after using the /QUIT command.

2024.6 (2024-04-05)

Added:

Fixed:

  • Accept '@' in usernames to support bouncers that use the user@identifier/network convention
  • Prevent rare scenario where broadcast messages' timestamp would not match time the messages are received
  • Fix SASL on macos by using RUSTLS backend

Changed:

2024.5 (2024-03-21)

BREAKING Configuration file format has switched from YAML to TOML. Please visit the migration guide here: halloy.squidowl.org/guides/migrating-from-yaml.

Added:

  • Added command bar entry to open wiki website.

Changed:

  • Configuration file now uses TOML instead of YAML
    • Renamed [keys] section to [keyboard]
    • Renamed [buffer.channel.users] section to [buffer.channel.nicklist]
    • Renamed [buffer.input_visibility] section to [buffer.text_input]
    • Removed [dashboard] section
      • Renamed [dashboard.sidebar] section to [sidebar]
    • Changed exclude from [buffer.server_messages] to two separate settings
      • enabled = bool
      • smart = number
  • Use primary text color instead of accent color for solid nicknames
  • Op and Voice context menu items hidden in channels where the user is not an Op

Fixed:

  • WHOIS is now correctly formatted when printed in buffers.

2024.4 (2024-03-15)

Added:

  • Configuration option to enable a topic banner in channels. This can be enabled under buffer.channel.topic
  • Messages typed into the input will persist until sent. Typed messages are saved when switching a pane to another buffer, then are restored when that buffer is returned to.
  • Added display of highest access level in front of nicks in chat, mirroring the format in the nick list
  • Added ability to toggle Op and Voice from user context menu in channels

Fix:

  • Context menus now shows buttons as expected
  • Buttons on help screen is now correctly sized
  • Text input is now disabled when not connected to a channel
  • When someone is kicked, it is now correctly shown
  • Query messages sent by another client will now correctly be displayed
  • Prevent flooding server by grouping channels together in as few JOIN messages as possible

Changed:

  • Various UI changes
    • Ensured consistent padding in channel buffer
    • Unified styling for dividers

Security:

2024.3, 2024.2 (2024-03-05)

Added:

  • Option to colorize nicks in the nick list (and an option to control it separately from in the buffer)
  • Option to control application scale factor

Fixed:

  • Input not visible on Server and Query (DM) buffers
  • Clipped buttons in context menu

Changed:

  • Improved user experience in text input when auto-completing a nickname.
  • Configuration option server_messages changed exclude from a boolean value to [All, None or !Smart seconds].
    • All excludes all messages for the specific server message.
    • None [default] excludes no messages for the specific server message.
    • !Smart seconds shows the server message if the user has sent a message in the given time interval (seconds) prior to the server message.

2024.1 (2024-02-07)

Added:

  • Configuration option servers.<name>.sasl.external.key added to support loading a separate PEM PKCS #8 encoded key for SASL authentication.

Changed:

  • Focus an available pane on launch, so that launch behavior follows typical use (e.g. if dashboard.sidebar.default_action is set to replacePane, then selecting a channel in the sidebar will replace the focused pane instead of opening a new pane)
  • hidden_server_messages has been changed to server_messages and additional customization has been added:
    • Exclude messages [join, part, quit].
    • Adjust username format.

Fixed:

  • Accept '*' as a legal special symbol for usernames
  • Accept '/' in usernames, ensuring correct parsing for bouncers using the nick/server convention
  • Create the configuration directory correctly, if it does not exist yet.

2023.5 (2023-11-12)

Added:

  • IRCv3 capability userhost-in-names support added
  • IRCv3 capability invite-notify support added
  • Configuration option dashboard.sidebar.width to control sidebar width.
  • Configuration option notification to control and enable notifications

Changed:

  • Limit messages to 512 bytes in length, including the trailing CR-LF characters.
  • Configuration option dashboard.sidebar_default_action now moved to dashboard.sidebar.default_action

2023.4 (2023-08-03)

Added:

  • Command bar (opened by pressing (Ctrl + k (macOS: + k)))
  • Configurable keyboard shortcuts for common actions, such as changing buffer focus, maximize / restoring buffer size, cycling channels in the buffer and more! A new keys section has been added to the config file, reference the wiki for more details.
  • Single clicking on a user will insert nickname to input
  • Configuration option on_connect to execute commands once connected to a server, reference the wiki for more details.

Changed:

  • Instead of using hostname as fallback, we now always derive the seed for unique user colors from their nickname

Fixed:

  • Set the window application id on Linux to org.squidowl.halloy
  • Correctly display all arguments when receiving MODE command

2023.3 (2023-07-27)

Message history and dashboard state will be reset due to a breaking change. We've switched to a more flexible storage format to ensure future breakages won't occur.

Added:

  • Away-notify extension added for supported servers
  • SASL support for PLAIN & EXTERNAL. The following per-server config keys have been added:
    • PLAIN - sasl.plain.username & sasl.plain.password
    • EXTERNAL - sasl.external.cert is a path to the PEM encoded X509 cert
  • Configuration option buffer.hidden_server_messages to hide server messages from the provided array of sources: ["join", "part", "quit"]
  • Configuration option buffer.input_visibility to control input field visibility: always shown or following the focused buffer.
  • Portable mode - if a config file exists in the same directory as the executable, all Halloy data will be saved to that directory
  • Upon joining a channel, display the channel mode in the buffer
  • When querying an away user, you will see an away message
  • Autocomplete on joined channels

Changed:

  • Away users will be appear slightly transparent in nicklist
  • Configuration option new_buffer has been renamed to buffer. new_buffer key will still work for backwards compatibility.
  • Migrated to our own internal IRC backend. This should allow for quicker development against extensions and bug fixes.

Fixed:

  • Changes done in the config file are now properly applied to the old buffers
  • Text and colors on light themes will no longer appear washed out
  • All WHOIS responses are now properly routed to the buffer where the request was made (text input or via context menu)
  • Accessing text input history will only populate the current buffer, not all of them
  • Text from input box can be copied to clipboard
  • Prevent text input cursor from blinking when window loses focus

2023.2 (2023-07-07)

Added:

  • Nickname completions in text input with Tab
  • Previously sent messages can be accessed per buffer in the text input with / arrows
  • New configuration option dashboard.sidebar_default_action to control pane behavior when selecting buffers
  • Messages from other users containing your nickname are now highlighted
  • Themes directory where users can add their own theme files
  • Broadcast nickname changes to relevant channels and queries.
  • Broadcast quit messages to relevant channels and queries.
  • Better error descriptions on connection failures
  • Support RAW command
  • Drag & drop buffers to the edges for better customization of the grid
  • Whois messages are printed in the currently focused buffer

Changed:

  • Default channel in config.yaml has been changed to #halloy (from ##rust)
  • palette field has been deprecated and replaced by theme in config.yaml
  • Sorting channel nicknames
  • Title headers has been changed to also display user count for channels
  • Copy change: "Leave" has been changed to "Close query" for queries

Fixed:

  • The last word of a message sometimes disappeared
  • Persist partial text input content when switching away from buffer
  • Correctly load image on welcome screen

2023.1-alpha1 (2023-06-30)

Added:

  • First release 🎉