Plugins

Starting from the 0.7.5 version, poezio supports plugins. Here is a quick howto and a plugin index.

Setting up plugins

Poezio seeks the plugins in the ~/.local/share/poezio/plugins/ dir (more generally, the $XDG_DATA_HOME/poezio/plugins/ dir), but that can be changed by setting the plugins_dir option to the directory where you want to put your plugins.

By default, poezio will also seek the plugins in ../plugins, in the source directory, in order to always load the latest versions. You should put a plugin in $XDG_DATA_HOME/poezio/plugins only if you have a custom version (that will override the one in ../plugins), or if it is a plugin you made.

Plugin autoload

Use the plugins_autoload optionto select which plugins should be loaded on startup. The value is a list of plugin names separated by colons, e.g.

plugins_autoload = gpg:tell:exec

Manual plugin load

Plugins can of course be loaded with the command /load and unloaded with the command /unload.

Plugin configuration

Most plugins will manage their configuration internally, and you do not (and should not) have to edit it, but some (e.g. mpd_client or gpg) require manual editing (the /set command can be used, but it is not pleasant to set multiple values with it).

The plugin configuration directory is located in ~/.config/poezio/plugins/ (or $XDG_CONFIG_HOME/poezio/plugins/) and the file related to a specific plugin is named plugin_name.cfg. The configuration options should usually be inside a section named after the plugin (sections are delimited with []).

[plugin_name]
key = value
other_key = other_value

Plugin index

Admin

Documentation

Creates convenient aliases for MUC administration.

Alias

Documentation

Allows you to create your own aliases.

Amsg

Documentation

Allows a message to be broadcasted on all the rooms your are in. Caution: do not overuse.

Autocorrect

Documentation

Add new ways to correct messages.

Close all

Documentation

Close all tabs except MUCs and the roster.

Cyber

Documentation

Add a cybertouch to your messages.

Day Change

Documentation

Logs the day change inside the buffers, to keep track of the days when backlogging.

Display corrections

Documentation

Lists old versions of a corrected message.

Double

Documentation

Double the first word of each sentence.

Exec

Documentation

Runs a system command an optionally sends the output as a message.

Figlet

Documentation

Ascii-art writing (requires the figlet package on your system).

GPG

Documentation

Allows encrypted exchanges and presence signing using GnuPG.

IQ Show

Documentation

Shows the received IQs, for debugging purposes.

IRC

Documentation

Manage IRC gateways with biboumi more easily

Documentation

Opens links in a web browser, locally or remotely using a FIFO and SSH.

MPD Client

Documentation

Sends the current song (and optionally the progress inside the song) to the current (chat) tab.

OTR

Documentation

Allows encrypted and deniable exchanges using OTR.

PacoKick

Documentation

Kicks a random user in the room.

Ping

Documentation

Sends a ping probe to an entity (XEP-0199)

Pipe Command

Documentation

Send commands to poezio through a named pipe.

PointPoint

Documention

Insert dots in your messages.

Quote

Documentation

Adds a /quote command to quote a message at HH:MM:SS and put it in the input (to prevent painful copy/pastes).

Rainbow

Documentation

Sends your messages in rainbow colors using XHTML-IM.

Regex Admin

Documentation

Add regex-based kick and ban commands.

Reminder

Documentation

Reminds you to do something every now and then.

Reorder

Documentation

Reorder the tabs according to a static layout.

Replace

Documentation

Replace some patterns in your messages.

Revstr

Documentation

Reverse everything you say.

Screen Detach

Documentation

Changes your status to away if the screen (or tmux) poezio is in gets detached.

Send Delayed

Documentation

Program the sending of futur messages.

Shuffle

Documentation

Shuffle everything you say.

Simple notify

Documentation

Sends a notification with a command of your choice on (non-MUC) messages.

Spam

Documentation

Adds a subtle little advertising in your messages.

Status

Documentation

Adds convenient aliases to /status (/away, etc).

Tell

Documentation

Tells a message to a nick when he connects to a MUC.

Time Marker

Documentation

Display the time between two messages.

Title change

Documentation

Change the title of the terminal according to the name of the current tab.

Uptime

Documentation

Gets the uptime of a XMPP server or a component.