# This is the default config for the XMPP client Poezio.
# Comments should be on their own line and NOT at the end
# of a meaningful line.
# Most options are commented in order to not override the
# default value which may have been changed since the time
# the file was copied on setup.

[Poezio]

# Jabber identifier. Specify it only if you want to connect using an existing
# account on a server. This is optional and useful only for some features,
# like room administration, nickname registration.
# The 'server' option will be ignored if you specify a JID (Jabber identifier)
# It should be in the form nickname@server.tld or nickname@server.tld/resource
jid =

# A password is needed only if you specified a jid. It will be ignored otherwise
# If you leave this empty, the password will be asked at each startup
password =

# A command that will be executed if "password" is not set, e.g. a session password
# manager like secret-tool on gnome, or anything you want
eval_password =

# This identifies this client over time with the server, to let it optimise
# offline storage and various other features.
device_id =

# Path to a PEM certificate file to use for certificate authentication
# through SASL External. If set, keyfile MUST be provided as well in
# order to login.
certfile =

# Path to a PEM private key file to use for certificate authentication
# through SASL External. If set, certfile MUST be provided as well in
# order to login.
keyfile =

# the nick you will use when joining a room with no associated nick
# If this is empty, the $USER environment variable will be used
default_nick =

# the rooms you will join automatically on startup, with associated nickname or not
# format : room@server.tld/nickname:room2@server.tld/nickname2
# default_nick will be used if "/nickname" is not specified
rooms =

# a list of words (separated by a colon (:)) that will be
# highlighted if said by someone on a room
highlight_on =

# Colon-separated list of plugins to load on startup
plugins_autoload =

# The server used for anonymous connection.
# Make sure the server you're using accepts anonymous authentication
#server = anon.jeproteste.info

# TLS Certificate fingerprint
# Do not touch this if you don’t know what you are doing
certificate =

# List of ciphers allowed when connecting to the server,
# this list prioritizes forward secrecy and forbids anything
# weaker than 128 bits.
# You should probably leave it as it is
#ciphers = HIGH+kEDH:HIGH+kEECDH:HIGH:!PSK:!SRP:!3DES:!aNULL

# Skip the TLS certificate fingerprint verification
# Should be false in most cases, as you want to check that the server keeps
# the same certificate.
#ignore_certificate = false

# Force TLS on by default
#force_encryption = true

# The interval to send a whitespace keepalive to the server
# 300 should be fine, except for specific services, in that case, change the
# value to the services default.
#whitespace_interval = 300

# Path to the certificate authenticating the Authority
# A server may have several certificates, but if it uses a CA, it will often
# keep the same for obvious reasons, so this is a good option if your server
# does this, rather than skipping all verifications.
# This is not affected by ignore_certificate
ca_cert_path =

# Auto-reconnects you when you get disconnected from the server
#auto_reconnect = true

# The time between the ping sent to the server to check if the connection is alive
#connection_check_interval = 300

# The timeout value of those pings
#connection_timeout_delay = 30

# Send the initial presence
# true, unless you want to be invisible from your contact list
# warning: this disables any presence sending other than chatrooms or directed
# presences via /presence
#send_initial_presence = true

# The status (show) poezio will send when connecting.
# can be: xa,dnd,away,available,chat.
# An empty or invalid value will mean available.
#status =

# The status message you will have upon connection
status_message =

# Save the last used status in this file (in the status and status_message
# options)
#save_status = true

# A custom host that will be used instead of the DNS records for the server
# (anonymous or the jid’s) defined above.
# You should not need this in a "normal" use case.
#custom_host =

# A custom port to use instead of the 5222.
# This option can be combined with custom_host.
# You should not need this in a "normal" use case.
#custom_port =

# the method that poezio will use to store your bookmarks online
# possible values are: privatexml, pep
# You should not have to modify this, but if you have to, please do.
use_bookmarks_method =

# use this option to force the use of local bookmarks
# possible values are: anything/false
#use_remote_bookmarks = true

# Force the retrieval of the remote bookmarks even when the server
# doesn't advertise support for your method
#force_remote_bookmarks = false

# Whether you want all bookmarks, even those without
# autojoin, to be open on startup
#open_all_bookmarks = false

# Will create a bookmark on manual /join, using your preferred
# storage method. Use /leave to remove the bookmark.
#synchronise_open_rooms = true

# What will be put after the name, when using autocompletion at the
# beginning of the input. A space will always be added after that
#after_completion = ,

# Whether or not to add a space after a completion in the middle of the
# input (not at the start of it)
#add_space_after_completion = true

# The maximum length of the nickname that will be displayed in the
# conversation window.
#max_nick_length = 25

# Show the timestamp of each messages, or not
#show_timestamps = true

# Allow a message to "correct" another message in the display if
# the sender wants it.
#group_corrections = true

# Words that you want to complete on recent words completion,
# separated by a colon (:).
# e.g. words = "anticonstitutionnellement:I protest:I like bananas:"
#words =

# XHTML-IM is an XMPP extension letting users send messages
# containing XHTML and CSS formating. We can use this to make
# colored text for example.
#enable_xhtml_im = true

# If XHTML-IM is enabled, you may want to reject style parsing, to keep
# only semantic elements formatting.
#enable_css_parsing = true

# Stream Management (XEP-0198) is an extension designed to improve
# the reliability of XMPP in unreliable network conditions (such
# as mobile networks). It can however increase bandwidth usage.
#enable_smacks = false

# Set a number for this setting.
# The join OR status-change notices will be
# displayed according to this number.
# -1: the notices will ALWAYS be displayed
#  0: the notices will NEVER be displayed
#  n: On any other number, the notices will only be displayed
#     if the user involved has talked since the last n seconds
# The quit messages will be hidden only if hide_exit_join is 0
# if the value is incorrect, -1 is assumed
# Default settings are :
# - all quit and join notices will be displayed
# - status changes won't be displayed unless
#   the user talked in the last 2 minutes

#hide_exit_join = -1

#hide_status_change = 120


# Some informational messages (error, a contact getting connected, etc)
# are sometimes added to the information buffer. These settings can make
# it grow temporarly so you can read these information when they appear.

# A list of message types that should make the information buffer grow
# Possible values; error, roster, warning, info, help
#information_buffer_popup_on = error roster warning help info

# A list of message types separated by colons (":") that should be filtered out from the
# information buffer.
# Possible values; error, roster, warning, info, help
#information_buffer_type_filter =

# The time the message will be visible. If the message takes more than
# one line, the popup will stay visible two second per additional lines
#popup_time = 4

# Whether to hide the list of user in the MultiUserChat tabs or not. Useful
# for example if you want to copy/paste the content of the buffer, or if you
# want to gain space
#hide_user_list = false

# A list of words (or sentences) separated by colons (":"). All the
# informational messages (described above) containing at least one of those
# values will not be shown.
#filter_info_messages =

# Set to 'true' if you want to automatically rejoin the
# rooms when you're kicked or banned
#autorejoin = false

# Set to the number of seconds before reconnecting when you are kicked
# or banned. No value, 0, or a negative value means you will be reconnected
# instantly. Only effective if autorejoin is set to true.
#autorejoin_delay = 5

# If you want poezio to join
# the room with an alternative nickname when
# your nickname is already in use in the room you
# wanted to join, put a non-empty value.
# Else, poezio won't join the room
# This value will be added to your nickname to
# create the alternative nickname.
# For example, if you set "_", and wanted to use
# the nickname "john", your alternative nickname
# will be "john_"
#alternative_nickname =

# set to 'true' if you want to save logs of all the messages
# in files.
#use_log = true

# The number of lines to preload in a chat buffer when it opens
# (the lines are preloaded from the log files)
# 0 or a negative value disable that option
#load_log = 10

# If log_dir is not set, logs will be saved in $XDG_DATA_HOME/poezio/logs,
# i.e. in ~/.local/share/poezio/logs/. So, you should specify the directory
# you want to use instead. This directory will be created if it doesn't exist
#log_dir =

# Log the errors poezio encounters in log_dir/errors.log
# A false value disables this option.
#log_errors = true

# If plugins_dir is not set, plugins will be loaded from the plugins/ dir in the
# poezio directory, then $XDG_DATA_HOME/poezio/plugins.
# You can specify another directory to use. It will be created if it doesn't exist
#plugins_dir =

# If plugins_conf_dir is not set, plugin configs will be loaded from
# $XDG_CONFIG_HOME/poezio/plugins. You can specify another directory here.
#plugins_conf_dir =

# the full path to the photo (avatar) you want to use
# it should be less than 16Ko
# The avatar is not set by default, because it slows
# poezio's startup a little. Uncomment if you want the default avatar

#photo = ../data/poezio_80.png

# If you want to show all the tabs in the Tab bar, even those
# with no activity, set to true. Else, set to false
#show_inactive_tabs = true

# If you want to highlight tabs where the contact is typing
# possible values:
# - direct: one-to-one chats
# - private: private chats in chatrooms
# - conversation: chats with contacts or other JIDs
# - muc: chatrooms
# - true: all chat tabs
# - false or anything else: no highlighting
#show_composing_tabs = direct

# Ignore private messages received in chatrooms
#ignore_private = false

# If you want to show the tab names in the bottom tab bar, set this to true
#show_tab_names = false

# If you want to disable the numbers in the bottom tab bar, set this to false
# If show_tab_names and show_tab_numbers are both false, the numbers will be
# shown
#show_tab_numbers = true

# Use the contact name, the nick in the chatroom instead of the full JID to
# display the tab if set to true.
#use_tab_nicks = true

# If set to false, poezio will first display the bookmark name, or if empty the
# user part of the JID (before the @) when displaying the chatroom tab name.
#show_muc_jid = false

# If this option is set to false, the contact list will not show the contact
# JIDs when that is possible.
# e.g. instead of: toto (toto@example.org) (2)
# poezio will only show: toto (2)
#show_roster_jids = true

# Show JIDs in conversation tabs
#show_jid_in_conversations = true

# show s2s errors in the contact list
#show_s2s_errors = true

# If set to true, the contact list will display offline contacts too
#roster_show_offline = false

# How to sort the contacts inside the contact list groups.
# They are used sequentially, (from left to right)
# Available sorting methods are:
#   - reverse: reverse the sorting
#   - jid: sort by JID (alphabetical order)
#   - show: sort by show (available/away/xa/…)
#   - name: sort by name (if no name, then the bare jid is used)
#   - sname: case-sensitive name sorting (uppercase first)
#   - resource: sort by resource number
#   - online: sort by online presence (online or not)
# You can arrange them however you like, and you have to separate them with
# colons (":"). Keep in mind that if there are more than 3 or 4 your
# sorting is most likely inefficient.
#roster_sort = jid:show

# How to sort the contact list groups.
# The principles are the same as roster_sort.
# Available methods are:
#   - reverse: reverse the sorting
#   - name: sort by group name (alphabetical order)
#   - sname: case-sensitive name sorting (uppercase first)
#   - fold: sort unfolded/folded
#   - connected: sort by number of connected contacts
#   - size: sort by group size
#   - none: put the "none" group (if any) at the end of the list
#roster_group_sort = name

# The terminal can beep on various event. Put the event you want in a list
# (separated by spaces).
# The events can be
# - highlight (when you are highlighted in a chatroom)
# - private (when a new private message is received, from your contacts or
#            someone from a chatroiom)
# - message (any message from a chatroom)
# - invite (when you receive an invitation for joining a chatroom)
#beep_on = highlight private invite disconnect

# Theme

# If themes_dir is not set, logs will searched for in $XDG_DATA_HOME/poezio/themes,
# i.e. in ~/.local/share/poezio/themes/. So you should specify the directory you
# want to use instead. This directory will be created at startup if it doesn't
# exist
#themes_dir =

# The name of the theme file that will be used. The file should be located
# in the theme_dir directory.
# If the file is not found (or no filename is specified) the default
# theme will be used instead
#theme = default

# Whether to create gaps when moving or closing a tab
# (a gap means that the number of your tabs does not depend of the previous tabs
# but only of the creation order)
#create_gaps = false

# If Alt-x is pressed and you are already on the tab numbered "x",
# you will go on the previous tab if that option is true
#go_to_previous_tab_on_alt_number = false

# If true, a vertical list of tabs, with their name, is displayed on the left
# of the screen.  Otherwise, it is a horizontal bar with just the tab numbers
# above the input bar.
#enable_vertical_tab_list = true

# Horizontal size of the vertical tab list
#vertical_tab_list_size = 20

# If set to desc, the tabs will be displayed from top to bottom in the list,
# if set to asc, they will be displayed from bottom to top.
#vertical_tab_list_sort = desc

# Show the user list at the bottom when in a chatroom
# (useful when you want to look at the bottom of the screen only)
# possible values: desc, asc
#user_list_sort = desc

# If the chatroom nicks should receive a fixed color based on their text or not
#deterministic_nick_colors = true

# If _nick, nick_, _nick_, nick__ etc. should have the same color as nick
#nick_color_aliases = true

# The nick of people who join, part, change their status, etc. in a chatroom
# will be displayed using their nick color if true.
#display_user_color_in_join_part = true

# Display user tune notifications as information messages or not
#display_tune_notifications = false

# Change the tab state when receiving chatroom messages.
# useful if you are connected to a high-volume chatroom and do not
# want it to appear in your tab bar as active. Highlights are still
# shown.
#notify_messages = true

# Enable Message Carbons (XEP-0280) to deliver message copies from and to
# other resources with carbons enabled.
#enable_carbons = true

# Acknowledge message delivery receipts (XEP-0184)
#ack_message_receipts = true

# Ask for message delivery receipts (XEP-0184)
#request_message_receipts = true

# Display your contacts’ avatar in the roster if true.
#enable_avatars = true

# Use Unicode half-block (▄) instead of full-block (█) to display images.
# This doubles the vertical resolution and gives square pixels, but may
# cause issues in some terminals.
#image_use_half_blocks = false

# Extract base64 images received in XHTML-IM messages
# if true.
#extract_inline_images = true

# The directory where the images will be saved; if unset,
# defaults to $XDG_CACHE_HOME/poezio/images.
#tmp_image_dir =

# Receive the tune notifications or not (in order to display information
# in the contact list).
# If this is set to false, then the display_tune_notifications
# option will be ignored.
#enable_user_tune = true

# Display user gaming notifications as information messages or not
#display_gaming_notifications = false

# Receive the gaming notifications or not (in order to display information
# in the contact list).
# If this is set to false, then the display_gaming_notifications
# option will be ignored.
#enable_user_gaming = true

# Display user mood notifications as information messages or not
#display_mood_notifications = false

# Receive the mood notifications or not (in order to display information
# in the contact list).
# If this is set to false, then the display_mood_notifications
# option will be ignored.
#enable_user_mood = true

# Display user activity notifications as information messages or not
#display_activity_notifications = false

# Receive the activity notifications or not (in order to display information
# in the contact list).
# If this is set to false, then the display_activity_notifications
# option will be ignored.
#enable_user_activity = true

# If set to true, use the nickname broadcasted by the user if none has been
# set manually.
#enable_user_nick = true

# if true, chat states will be sent to the people you are talking to.
# Chat states are, for example, messages informing that you are composing
# a message or that you closed the tab, etc
# Set to false if you don't want people to know these information
# Note that you won’t receive the chat states of your contacts
# if you don't send yours.
#send_chat_states = true

# if true, information about the software (name and version)
# will be sent if requested by anyone
# Set to false if you don't want people to know these information
#send_poezio_info = true

# if true, information about the Operation System you're using
# will be sent when requested by anyone
# Set to false if you don't want people to know these information
# Note that this information will not be sent if send_poezio_info is False
#send_os_info = true

# if true, your current time will be sent if asked
# Set to false if you don't want people to know that information
#send_time = true

# If true, the history of the similar inputs won't be shared between
# different tabs (as in weechat).
#separate_history = false

# The language you specify using.
# This *may* be used by an automated entity to send you tailored replies
# If you don't understand, leave en.
#lang = en

# Configure the number of maximum lines and messages (for each tab) that
# can be kept in memory. If poezio consumes too much memory, lower these
# values
#max_messages_in_memory = 2048
#max_lines_in_memory = 2048

# Show the separator at the bottom of the text buffer, even if no one
# spoke
#show_useless_separator = true

# Set this to true if you want the commands to be executed remotely
# (with ssh & the daemon), see the documentation of the /link plugin
# for details
#exec_remote = false

# Path of the FIFO in which the remote commands will be sent.
# The "poezio.fifo" file will be created in this directory
# Used with exec_remote set to true, see the documentation of /link for details
# Defaults to ./
#remote_fifo_path = ./

# Defines if all tabs are resized at the same time (if set to false)
# or if they are really resized only when needed (if set to true).
# “true” should be the most comfortable value
#lazy_resize = true

# If set to true and if show_tab_names is set, the info bar will only show
# the unique prefix of each tab name instead of the full name. This saves a
# lot of space if many tabs exist or are active.
# Best used with the `/wup` command or the `_go_to_room_name` action to select
# a tab based on the prefix.
#unique_prefix_tab_names = false

[bindings]
# Bindings are keyboard shortcut aliases. You can use them
# to define your own keys and bind them with some functions
# The syntax is
#    key = bind
# where ^x means Control + x
# and M-x means Alt + x
# The example turns Alt + i into a tab key
M-i = ^I

[var]
# You should not edit this section, it is just used by poezio
# to save various data across restarts
folded_roster_groups =
info_win_height = 2

[muc_colors]
# Set color for a nick, under the form
# nick = color
