LinuxCommandLibrary

weechat

Connect and chat on IRC networks

TLDR

Start WeeChat

$ weechat
copy

Do not load any plugin(s) on startup
$ weechat --no-plugin
copy

Do not load any script(s) on startup
$ weechat --no-script
copy

Do not connect to servers automatically
$ weechat --no-connect
copy

Write default terminal colors to stdout
$ weechat --colors
copy

SYNOPSIS

weechat [options] [server:port]
weechat [options] -d | --dir path
weechat [options] -c | --config path
weechat [options] -h | --help
weechat [options] -v | --version

PARAMETERS

-d, --dir path
    Use an alternate data directory for WeeChat files (e.g., configurations, logs, scripts).

-c, --config path
    Use an alternate configuration file instead of the default one in the data directory.

-t, --no-plugin
    Start WeeChat without loading any plugins, useful for troubleshooting.

-q, --no-script
    Start WeeChat without loading any scripts.

-r, --run-script path
    Run a specific script on startup.

-s, --server server:port
    Connect to a specific IRC server (and optionally port) on startup.

-p, --password password
    Provide a password for the server specified with -s.

-h, --help
    Display a help message and exit.

-v, --version
    Display WeeChat's version information and exit.

DESCRIPTION

WeeChat is a free, fast, light, and extensible chat client designed for command-line environments. It boasts a highly customizable text-based user interface (TUI), making it ideal for remote access via SSH or for users who prefer a minimalist interface. While primarily known for its robust IRC capabilities, WeeChat's functionality can be significantly extended through a powerful plugin architecture, enabling support for other protocols like Matrix, XMPP, and more. A key strength of WeeChat lies in its extensive scripting support, allowing users to write scripts in various languages such as Python, Perl, Ruby, Lua, Tcl, Scheme, and JavaScript to automate tasks, add new features, and tailor the client precisely to their needs. Features include nick completion, smart filtering, and a comprehensive script management system, making it a powerful and flexible choice for both casual and advanced chat users.

CAVEATS

WeeChat's text-based user interface (TUI) can have a steep learning curve for users unfamiliar with terminal applications or complex keyboard shortcuts. Its extensive configuration options, while powerful, may also be overwhelming for beginners. Managing and troubleshooting plugins and scripts requires some technical understanding.

SCRIPTING SUPPORT

WeeChat supports scripting in multiple languages, including Python, Perl, Ruby, Lua, Tcl, Scheme, and JavaScript. This allows users to extend functionality, automate tasks, and customize behavior extensively.

PLUGIN SYSTEM

The core functionality of WeeChat can be extended through a powerful plugin system. Plugins enable support for various chat protocols beyond IRC (e.g., Matrix, XMPP via dedicated plugins), integration with external services, and additional features.

CLIENT-SERVER MODE

WeeChat can run in a detached client-server mode, allowing multiple clients (e.g., different SSH sessions) to connect to the same running WeeChat instance, enabling persistent sessions even when the original terminal is closed (often used with tools like tmux or screen).

HISTORY

WeeChat was initially started by Sébastien Helleu (FlashCode) in 2003, with the first stable version released in 2004. It began as a rewrite of an earlier IRC client, aiming for a more modern, lightweight, and extensible design. Over the years, it has undergone significant development, adding robust plugin support, comprehensive scripting capabilities, and a modular architecture. Its focus has consistently been on providing a highly customizable and efficient chat experience for advanced users, particularly within terminal environments.

SEE ALSO

irssi(1), tmux(1), screen(1), ssh(1)

Copied to clipboard