This page lists major features done or planned.
Dive in the future of WeeChat!


Version 3.7 ()

Tracker Spec Status Git Plugin Description
- Done Commit core Add info "uptime_current".
- Done Commit buflist Add buflist: variable "${hotlist_priority_number}".
issue #1630 Done Commit core, irc, relay, xfer Add option "-save" in command "/upgrade".
issue #1798 Done Commit core Add option weechat.look.highlight_disable_regex and buffer property "highlight_disable_regex".
- Done Commit Commit api Rename API function "string_build_with_split_string" to "string_rebuild_split_string", add arguments "index_start" and "index_end".
issue #1805 Done Commit irc Display SETNAME command in channels and private buffers, add options irc.color.message_setname and irc.look.smart_filter_setname.
issue #1806 Done Commit trigger Add elapsed time for trigger execution on monitor buffer when trigger debug is set, add option trigger.color.identifier
issue #1695 Done Commit core Sort filters by name.
- Done Commit api Add function crypto_hash_file.
issue #1821 Done Commit api Add support of priority in function hook_line.
- Done Commit irc Add option irc.look.display_pv_nick_change.
issue #1699 Done Commit spell Allow special dict value "-" to disable spell checking on a specific buffer.
issue #559 Done Commit core Add key alt+backspace, change behavior of ctrl+w (delete previous word until whitespace).
issue #314 Done Commit logger Add options to rotate and compress log files.

Version 3.6 ()

Tracker Spec Status Git Plugin Description
issue #1700 Doc Done core Add spacer item in bars to align items.
issue #808 Done Commit Commit core Add command /item to create custom bar items.
issue #1778 Done Commit core Add case conversion in evaluation of expressions with "lower:string" and "upper:string".
issue #1780 Done Commit core Allow to catch multiple signals in functions hook_signal and hook_hsignal.

Version 3.5 ()

Tracker Spec Status Git Plugin Description
- Done Commit relay, weechat-relay Add Zstandard compression in relay plugin (much faster, better compression).
issue #1680 Done Commit Commit irc, trigger Add IRC message tags in messages displayed.

Version 3.4 ()

Tracker Spec Status Git Plugin Description
- Done Commit core Add user variables in evaluation of expressions with "define:name,value".
- Done Commit core Add command /toggle.
- Done Commit doc Add dark theme in documentation.
issue #1666 Done Commit irc Improve parsing of parameters in all IRC messages.

Version 3.3 ()

Tracker Spec Status Git Plugin Description
issue #1653 Doc Done Commit Commit Commit irc Add support of "setname" capability.
issue #320 Done Commit Commit Commit irc Enable all capabilities by default, add options irc.look.display_account_message and irc.look.display_extended_join.
issue #1654 Doc Done Commit Commit Commit Commit irc Add support of "message-tags" capability.
issue #413 Doc Done Commit irc Implement IRCv3.2 SASL authentication, add /auth command to (re-)authenticate with SASL.
issue #1667 Done Commit api Add function file_copy.
- Doc Done Commit Commit Commit typing, irc Add support of "typing status": send own status, display other users typing.
- Done Commit core Add random integer number with "random:min,max" in evaluated expressions.
issue #1599
issue #1668
Done Commit php Add support of PHP 8.
issue #1685 Done Commit irc Add option "-parted" in command /allchan.
issue #1689 Done Commit core Add "${re:repl_index}" to get the index of replacement in function string_eval_expression.
- Done Commit core Add keys to restore hotlist in current or all buffers (alt-h alt-r, alt-h alt-shift-R) and key to remove current buffer from hotlist (alt-h alt-m).

Version 3.2 ()

Tracker Spec Status Git Plugin Description
issue #1285 Doc Done Commit core Follow XDG directories by default.
issue #1628 Doc Done Commit core Add support of SASL mechanisms SCRAM-SHA-1, SCRAM-SHA-256 and SCRAM-SHA-512.
issue #1628 Done Commit api Add function crypto_hmac.
issue #1595 Done Commit core Add options to customize commands executed on system signals received (SIGHUP, SIGQUIT, SIGTERM, SIGUSR1, SIGUSR2).
issue #1377 Done Commit python Add Python stub for WeeChat API.
issue #1624 Done Commit trigger Add variables "${tg_shell_argc}" and "${tg_shell_argvN}" in command trigger evaluated strings.
issue #1622 Done Commit core Add bar item "tls_version".
issue #1622 Done Commit core Add translation of string with "${translate:…}" in evaluated expressions.
- Done Commit core Add info "weechat_daemon".
- Done Commit core Add signals "cursor_start" and "cursor_end".
- Done Commit core Add option weechat.network.gnutls_ca_system, rename option weechat.network.gnutls_ca_file to weechat.network.gnutls_ca_user.

Version 3.1 ()

Tracker Spec Status Git Plugin Description
issue #1582 Done Commit core Add evaluation of condition with "${eval_cond:...}" in evaluated expressions.
issue #1580 Done Commit trigger Add ${tg_trigger_name} in evaluation of trigger command decription/args/desc.args/completion.
- Done Commit irc Add info "irc_is_message_ignored".
- Done Commit core Add info_hashtable "secured_data".
issue #1611 Done Commit core Add raw string in evaluation of expressions with "raw:xxx".
- Done Commit core Add option "recreate" in command /filter.
issue #1600 Done Commit core Add buffer local variable "completion_default_template".
- Done Commit core Add options "setvar" and "delvar" in command /buffer, rename option "localvar" to "listvar".
- Done Commit core Improve debug in command /eval: display more verbose debug with two "-d", add indentation and colors.
issue #141 Done Commit core Add option sec.crypt.passphrase_command to read passphrase from an external program on startup, remove option sec.crypt.passphrase_file.
issue #992
issue #993
Done Commit core Add options weechat.look.hotlist_update_on_buffer_switch and weechat.look.read_marker_update_on_buffer_switch.

Version 3.0 ()

Tracker Spec Status Git Plugin Description
issue #1536 Done Commit Commit irc Evaluate command and allow to send text on buffers with commands /allchan, /allpv and /allserv.
issue #1553 Done Commit fset Add option fset.look.auto_refresh.
- Done Commit api Add argument "bytes" in function string_dyn_concat.

Version 2.9 ()

Tracker Spec Status Git Plugin Description
issue #1472 Done Commit trigger Evaluate arguments of command when the trigger is created.
issue #1358 Done Commit relay Add client status "waiting_auth" for connected clients still not authenticated.
- Done Commit relay Add option relay.network.auth_timeout to automatically disconnect clients not authenticated after this amout of time.
issue #1474 Done Commit relay Add command "handshake" in weechat relay protocol and nonce to prevent replay attacks.
issue #1484 Done Commit relay Add command "completion" in weechat relay protocol to perform a completion on a string at a given position.
- Done Commit buflist Add options enable/disable/toggle in command /buflist.
- Done Commit buflist Add default key alt-shift-B to toggle buflist.
- Done Commit core Add default key alt-shift-N to toggle nicklist bar.
issue #1484 Done Commit api Add functions completion_new, completion_search and completion_free.
issue #1484 Done Commit api Add hdata "completion_word".
issue #1476 Done Commit core Reload configuration files on signal SIGHUP.
issue #1475
issue #1477
Done Commit Commit core Add command line option "--stdout" in weechat-headless binary.
issue #1063 Done Commit core Add an option for multiline input in a buffer.
issue #369 Done Commit weechat-relay Decode WeeChat messages.

Version 2.8 ()

Tracker Spec Status Git Plugin Description
issue #1435 Done Commit relay Reject client with weechat protocol if password or totp is received in init command but not set in WeeChat.
- Done Commit Commit api Add functions crypto_hash and crypto_hash_pbkdf2.
- Done Commit relay Accept hash of password in init command of weechat protocol with option "password_hash" (PBKDF2, SHA256, SHA512).
issue #1433 Done Commit api Add info "weechat_headless".
issue #1453 Done Commit api Add info "auto_connect".
- Done Commit irc Add support of fake IRC servers (no I/O, for testing purposes).

Version 2.7 ()

Tracker Spec Status Git Plugin Description
issue #916
issue #956
Done Commit Commit Commit core CMake error on missing dependency.
issue #997 Done Commit core Calculate result of expression with "${calc:...}" in evaluated expressions.
issue #1098 Done Commit guile Add support of Guile 2.2.
issue #528
issue #621
Done Commit Commit Commit logger Add support of ANSI color codes in log files, display colors in backlog.
issue #1237 Done Commit xfer Add a temporary suffix to files received via DCC.
issue #60 Done Commit api Add modifier "eval_path_home".
issue #60 Done Commit core Add support of modifiers in evaluation of expressions with "modifier:name,data,string".
issue #60 Done Commit core Add optional default path (evaluated) in completion "filename".
issue #60 Done Commit irc Use path from option xfer.file.upload_path to complete filename in command "/dcc send".
issue #892 Done Commit irc Add option irc.look.display_pv_warning_address to display a warning in private buffer if the remote nick address has changed.
issue #1389 Done Commit python Send string with type "bytes" to Python 3 callbacks in case of invalid UTF-8 data.
issue #1000 Done Commit irc Add filtering of messages in the IRC raw buffer.

Version 2.6 ()

Tracker Spec Status Git Plugin Description
issue #1264 Done Commit core Fix color code ${color:fg,bg} that can cause bugs in evaluated strings.
- Done Commit api Add argument "strip_items" in function string_split.
issue #853 Done Commit core Add option "close" in command /window.
issue #1343
issue #1345
Done Commit core Support 32767 ncurses color pairs.

Version 2.5 ()

Tracker Spec Status Git Plugin Description
issue #733
issue #1333
Done Commit relay Add support of UNIX socket.
- Done Commit core Use getopt to parse command line arguments.
issue #1127 Done Commit core Add option weechat.look.buffer_time_same.
- Done Commit Commit Commit core Improvements on command /repeat: use seconds by default, allow unit for the interval, allow text in addition to a command.
issue #1055
issue #1312
Done Commit core Add option "addreplace" in command /filter.
- Done Commit api Return allocated string in hook_info callback and function info_get.
issue #1322 Done Commit api Replace argument "keep_eol" by "flags" in function string_split.
issue #928 Done Commit api Add function command_options.
- Done Commit api Add function string_match_list.
- Done Commit irc Add bar items "irc_nick", "irc_host" and "irc_nick_host".
- Done Commit irc Add variable "host" in server structure.
issue #928 Done Commit relay Add option relay.weechat.commands.
- Done Commit script Use SHA-512 instead of MD5 for script checksum.
issue #1299 Done Commit spell Rename aspell plugin to spell.
- Done Commit Commit trigger Add hooks "info" and "info_hashtable".
issue #269 Done Commit xfer Rename option xfer.network.speed_limit to xfer.network.speed_limit_send, add option xfer.network.speed_limit_recv.

Version 2.4 ()

Tracker Spec Status Git Plugin Description
- Done Commit core Add command line option "-t" (or "--temp-dir") to create a temporary WeeChat home (deleted on exit).
- Done Commit api Add functions string_base_encode and string_base_decode, remove functions string_encode_base64 and string_decode_base64.
- Done Commit api Add support of Time-based One-Time Password (TOTP), add infos "totp_generate" and "totp_validate".
- Done Commit relay Add support of Time-based One-Time Password (TOTP) as second authentication factor in weechat protocol.
- Done Commit exec Add option exec.command.shell to customize the shell used with /exec -sh.
issue #1281 Done Commit relay Add support of close frame in websocket connection.

Version 2.3 ()

Tracker Spec Status Git Plugin Description
- Done Commit core Add a new hook to change line data before it is printed (buffer, date, tags, highlight, prefix, message).
- Done Commit trigger Allow creation of temporary variables with the regex.
- Done Commit core Add option "-P" (or "--plugins") to customize the plugins to load at startup.
issue #1248 Done Commit core Allow multiple options "-r" ("--run-command") in command line arguments.
issue #958 Done Commit core Add repeat of string in evaluation of expressions with "repeat:count,string".
issue #1256 Done Commit relay Add real IP in client description.

Version 2.2 ()

Tracker Spec Status Git Plugin Description
task #11374
task #10876
issue #597
Done Commit irc Indexed ban list, completion for /unban and /unquiet.
issue #623 Done Commit irc Add support for IRCv3.2 Client Capability Negotiation.
issue #639 Done Commit irc Add support for IRCv3.2 invite-notify.
issue #640 Done Commit irc Add support for IRCv3.2 chghost.
issue #219
issue #826
Done Commit core Add support of HTTP headers and lists in CURL options.

Version 2.1 ()

Tracker Spec Status Git Plugin Description
issue #1075 Done Commit scripts Add option "version" in script commands.
issue #128 Done Commit Commit scripts Add "eval" option in script commands and info "xxx_eval" (python, perl, ruby, lua and guile).
issue #1132 Done Commit logger Add option logger.look.backlog_conditions.
issue #1145 Done Commit logger Add option logger.file.fsync.
- Done Commit irc Add server option "split_msg_max_length".
- Done Commit core Add option weechat.completion.partial_completion_templates.
issue #1113 Done Commit Commit core Add a way to create new buffers in commands /buffer and /print.
issue #1120 Done Commit core Add a headless mode (with option to daemonize the process).

Version 2.0 ()

Tracker Spec Status Git Plugin Description
- Done Commit fset Fset plugin.
issue #909 Done Commit php Add PHP scripting support.

Version 1.9 ()

Tracker Spec Status Git Plugin Description
issue #332 Done Commit buflist Add option buflist.look.auto_scroll.
- Done Commit buflist Add keys F1/F2 and alt+F1/F2 to scroll the buflist bar.

Version 1.8 ()

Tracker Spec Status Git Plugin Description
issue #893
task #11461
Done Commit core Add resize of window parents with /window resize [h/v]size.
- Done Commit api Add dynamic string functions in the C API.
- Done Commit api Add arraylist functions in the C API.
- Done Commit core Add ternary operator in evaluation of expressions.
- Done Commit buflist New plugin buflist: bar item with list of buffers.
issue #608
issue #611
Done Commit core Add wildcard matching in evaluation of expressions.
issue #981 Done Commit core Add option weechat.completion.nick_case_sensitive.

Version 1.7 ()

Tracker Spec Status Git Plugin Description
issue #377
issue #820
Done Commit Commit Commit irc Add server option "usermode".
issue #840 Done Commit irc Add tag "self_msg" on self messages.
issue #850 Done Commit fifo Add configuration file "fifo.conf".
issue #850 Done Commit core Add info "pid" (WeeChat PID).
- Done Commit core Add optional arguments in completion template, sent to the callbacks.
issue #411
issue #802
Done Commit core Add option "weechat.look.align_multiline_words" to not align multiline words.

Version 1.6 ()

Tracker Spec Status Git Plugin Description
- Done Commit irc Evaluate server options "msg_*".
issue #399
issue #509
Done Commit core Add support for one-time triggers.
issue #534 Done Commit core Add "extra" argument to evaluate extra variables in function string_eval_expression().
- Done Commit core Add option "cycle" in command /buffer.
- Done Commit core Add optional argument "lowest", "highest" or level mask in command /input hotlist_clear.
issue #722 Done Commit core Switch to asciidoctor to build docs and man page.

Version 1.5 ()

Tracker Spec Status Git Plugin Description
issue #406 Done Commit api Add pointer in callbacks used by scripting API.
issue #692 Done Commit core Move bar item "away" to core.
issue #262 Done Commit core Move nick coloring to core.

Version 1.4 ()

Tracker Spec Status Git Plugin Description
- Done Commit irc Add hex dump of IRC messages in raw buffer (when debug is enabled).
issue #8 Done Commit irc Add /cap command.
- Done Commit script Add option script.scripts.download_timeout.
issue #347 Done Commit relay Add option relay.irc.backlog_since_last_message.
issue #182
issue #477
Done Commit irc Add support of "cap-notify" capability.
issue #543 Done Commit core Add option weechat.look.paste_auto_add_newline.
issue #620 Done Commit irc Add support of SNI (Server Name Indication) in SSL connection to IRC server.
issue #629 Done Commit core Add parent name in options (show IRC server option inherited values in /set and /iset).
issue #633 Done Commit core Move option irc.network.alternate_nick into servers (irc.server.xxx.nicks_alternate).

Version 1.3 ()

Tracker Spec Status Git Plugin Description
issue #76
issue #393
Done Commit core Search start position + stop search at point.
issue #463 Done Commit core Add option weechat.look.confirm_upgrade.
issue #452 Done Commit core Allow ctrl-C to exit WeeChat when the passphrase is asked on startup.
- Done Commit core Add support of evaluated sub-strings and current date/time in function string_eval_expression() and command /eval.

Version 1.2 ()

Tracker Spec Status Git Plugin Description
issue #251 Done Commit irc Add SASL mechanism ECDSA-NIST256P-CHALLENGE.
issue #11
issue #246
Done Commit irc Add support of "account-notify" capability.
- Done Commit javascript Add Javascript plugin.
issue #55
task #9459
Done Commit core Add option to customize word boundaries (highlights, input).
issue #318 Done Commit core Display an help/welcome message on first WeeChat run.
issue #281 Done Commit irc Add support of SHA-256 and SHA-512 for SSL fingerprint (SHA-1 is insecure).
issue #403 Done Commit core Add options to customize quoted messages in cursor mode.
issue #114 Done Commit core Add signals "signal_sigterm" and "signal_sigquit".

Version 1.1 ()

Tracker Spec Status Git Plugin Description
task #5419 Done Commit core Understand incomplete commands if unambiguous.
issue #224 Done Commit trigger New regex format for trigger (evaluate and replace regex groups at same time).
issue #234 Done Commit Commit relay Add option to configure SSL priorities and disable SSLv3.
issue #248 Done Commit irc Disable SSLv3 by default in server SSL priorities.
issue #188 Done Commit irc Display own nick changes in server buffer.
issue #143
issue #212
Done Commit irc Add support of "extended-join" capability.
issue #228 Done Commit irc Add support of color codes 16-99 in IRC messages.
issue #244 Done Commit core Add signals for mouse enabled/disabled.
issue #247 Done Commit core Add bar item "mouse_status".
task #12491 Done Commit core Complete commands inside command line (not only at beginning).
task #12204
issue #265
Done Commit Commit irc Add option to stop connection if SASL authentication fails.
issue #216 Done Commit irc Open channel buffers before the JOIN is received from server (autojoin and manual joins).
issue #229 Done Commit irc Add /server reorder (reorder list of servers and therefore the autoconnect to servers).

Version 1.0 ()

Tracker Spec Status Git Plugin Description
- Done Commit trigger Add trigger plugin.
- Done Commit core Bare display mode (for easy text selection and click on URLs).
issue #2 Done Commit relay Add signals on clients connection/disconnection.
- Done Commit exec Add "/exec" plugin.
task #13111 Done Commit irc Add command /allpv.
task #13051 Done Commit core Allow search of text (ctrl-R) in buffers with free content.
issue #12 Done Commit irc Add support of capability "away-notify".
issue #17 Done Commit core Key alt+'-' to toggle filters in current buffer.
- Done Commit core Hidden buffers.
issue #67 Done Commit core Add a command to send text on a specific buffer.
task #10882 Done Commit core Add bar item "buffer_short_name".
issue #104 Done Commit core Add unit tests.
- Done - Pop the champagne!

Version 0.4.3 ()

Tracker Spec Status Git Plugin Description
- Done Commit core Options to customize default text search in buffers.
task #12777 Done Commit irc Configurable default kick reason.
- Done Commit core Add support of italic text (requires ncurses >= 5.9 patch 20130831).
task #12766 Done Commit core Add option to disable auto renumbering of buffers (allow gap in buffer numbers).
bug #26571 Done Commit Commit irc Add option to customize default ban mask.
- Done Commit core Logical and/or for tags in /filter and options with tags.
- Done Commit core Logical and/or for tags in function hook_print.
task #12499 Done Commit irc Add option to smart filter modes messages (all or by mode).
patch #7963 Done Commit xfer Automatically check CRC32 file checksum if it is found in the filename.
patch #7992 Done Commit xfer Support IPv6 xfers.
task #10847 Done Commit core Control stdin of forked process (with hook_process_hashtable).
task #11661 Done Commit core Tab width setting.
- Done Commit core Add command /print.
task #12724 Done Commit irc Add server option "ssl_fingerprint".
task #11477 Done Commit irc Use MONITOR instead of ISON for /notify (when available on server).

Version 0.4.2 ()

Tracker Spec Status Git Plugin Description
- Done Commit core Add infolist and hdata for layout.
patch #8062 Done Commit irc Better hash function for computing nick colors (with option to choose the hash used).
patch #6858 Done Commit core Add support of Enchant lib in aspell plugin (replaces aspell lib).
task #12651 Done Commit core Option for default proxy (used for downloads with Curl).
task #12689 Done Commit relay Add command "ping" in weechat protocol.
task #6745 Done Commit core Add a scroll beyond the end of buffer (/window scroll_beyond_end).
task #9221 Done Commit irc Add support of wildcards in commands (de)op/halfop/voice.
task #7395 Done Commit core Move passwords in a separate config file (sec.conf), with optional encryption.
task #11027 Done Commit core Rename binary and man page from "weechat-curses" to "weechat".
- Done Commit core Emphasize text when searching text in buffer.
- Done Commit core Search regex in buffer.
task #12717 Done Commit core Allow items of root bars to show content for a given buffer.
task #12775 Done Commit core Display day changed message dynamically (do not store it inside buffers).
- Done Commit core Add shared strings to reduce memory usage.

Version 0.4.1 ()

Tracker Spec Status Git Plugin Description
bug #38070 Done Commit irc Add nick colors in output of /names #channel when it is displayed on server buffer (channel not joined).
- Done Commit aspell Optimize internal management of spellers (do not create them for each input analyzed, for example with split of windows), re-introduce local var "aspell_dict" in buffers.
- Done Commit relay WebSocket server support (RFC 6455) (for irc and weechat protocols).
task #12405 Done Commit irc Unmask join if nick speaks some minutes after the join.
- Done Commit relay Allow multiple clients on same port for irc protocol.
task #12393 Done Commit script Add control of autoload for scripts.
- Done Commit relay Send nicklist diff for nicks added/removed/changed instead of whole nicklist (reduce data exchanged with clients).
task #11274 Done Commit core Support of multiple layouts.
task #11924 Done Commit irc Automatic merge of private buffers (by server or all).
task #10895 Done Commit irc New option irc.look.display_join_message to disable some messages after joining a channel.
task #12576 Done Commit irc Add tag for "back on server" messages in queries.
task #9353 Done Commit irc Add support of UHNAMES.
bug #37531 Done Commit core Move nick prefix/suffix options from irc plugin to core (making it dynamic).
patch #8020 Done Commit irc Implement DH-AES SASL encryption method for SASL.

Version 0.4.0 ()

Tracker Spec Status Git Plugin Description
task #12275 Done Commit irc Add option "-noswitch" for command /join.
task #11205 Done Commit core IPv6 preferred, IPv4 as fallback.
task #12270 Done Commit relay Support of IPv6 in relay plugin.
task #12061 Done Commit aspell Add aspell suggestions.
task #12255 Done Commit irc Add support of "server-time" capability.
task #9555 Done Commit core Add color support in prefixes options.
task #12076 Done Commit relay Add backlog for irc protocol in relay plugin.