Settings

Config Files

Config files are stored as plaintext files (which shouldn’t be edited by hand). They are located in:

  • Windows: %APPDATA%\HexChat

  • Microsoft Store: %LOCALAPPDATA%\Packages\39215TingPing.HexChat_fqe8h3fzrj50c\LocalCache\Roaming\HexChat

  • Unix: ~/.config/hexchat

  • Flatpak: ~/.var/app/io.github.Hexchat/config/hexchat

  • Snap: ~/snap/hexchat/current/.config/hexchat

Note

Type the path into your file browser to expand them into a full directory.

Custom directories can be set with the -d or –cfgdir command line argument.

On Windows there is a portable mode option which makes HexChat store settings inside of a \config subdir within the main installation folder. Though this option should only be used if you must for a portable drive or if you lack administrative priviliges for installation.

Network List

The network list contains a list of networks, basic user information, and per network settings. It can be accessed in HexChat ‣ Network List or by the keyboard shortcut Control-s.

User Information

This is where basic information is set for the user such as nicknames, these will be used as defaults for networks but can be overridden. The Realname field is entirely optional. The username is often used for options like Server and SASL password.

Networks

HexChat comes with a list of default networks but you can easily add your own or edit existing ones. The sorting and names of networks do matter as some commands reference the network by the name here, e.g. /newserver. The order they are sorted in this list also determines the order of auto-connecting. To edit the order just select one and hit Shift-up or Shift-down.

Servers

Per network you can maintain a list of servers in case of one fails. The syntax for these servers hostname/port. The port is entirely optional and can be prefixed by + to signify SSL. If no port is given the default port used is 6667 and 6697 for SSL.

Your Details

Unticking Use global user information allows unique nicknames or usernames between networks.

Connecting

Ticking Auto connect to this network at startup combined with Favorite channels will allow you to quickly connect and join chats.

The password fields allow you to login to a password protected server or services. They take the syntax username:password or just the password if username has been set as mentioned above.

See also

See the FAQ if you have trouble identifying before join.

Channel Options

Some options can be specific to channels. To access these you can right click on any tab or use the command /chanopt. Any option other than 0 or 1 is considered unset and will use the globally set defaults.

Preferences

Keyboard Shortcuts

There are two types of keyboard shortcuts in HexChat hardcoded ones which can be found by looking around in the menu, e.g. Control-s, and configurable ones in Settings ‣ Keyboard Shortcuts. These have help messages to guide you through setting up custom bindings.

Url Handlers

Url handlers add alternative browsers to you your right click menu on urls (they do not set the default). They take the syntax:

!program %s or !"C:\Program Files\Program\program.exe" %s

Note

If HexChat does not find the executable it will not add it to the menu.

Auto Replace

Located in Settings ‣ Auto Replace this setting allows you to replace text while typing. The Text column is what it is to detect and the Replace with column is what will replace it. This column accepts color codes from Text Events

For Example:

text: –> replace: %C8→%O

This will replace that arrow with a green unicode arrow upon pressing enter or space. The keys that check for replace are defined in Settings ‣ Keyboard Shortcuts. A trick to avoid replacing it Shift-Space since that is not defined by default.

CTCP Replies

Custom CTCP replies can be set in Settings ‣ CTCP Replies and accept the same format as User Commands with the addition of %s for the nick replying to.

Note

To hide the default VERSION reply you must /set irc_hide_version on

Set Command

The set command can be used to change options. The usage is:

/set option_name [number|string]

Togglable options take 1 for on and 0 for off but as an alternative you can type:

/set toggle_option on

If no value is given it will show the current value of a setting. You can also use wildcards to find or show multiple values for example

/set gui_*

Some options such as gui_tray require running this after changing:

/gui apply

This can be avoided by using the preferences window instead, which is recommended, also using the gui will warn if a setting requires restart.

List of Settings

away_auto_unmark

Toggle automatically unmarking away before message send.

away_omit_alerts

Toggle omitting alerts when marked as being away.

away_reason

Default away reason.

away_show_message

Toggle announcing of away messages.

away_show_once

Show identical away messages only once.

away_size_max

How many users can be away in userlist before they are not colored.

away_timeout

How often in seconds to check for max size for colors in userlist.

away_track

Toggle color change for away users in userlist.

completion_amount

How may nicks starting with input there should be before all are shown in text box. (E.g. if you have ‘k’ and completion_amount is set to 6, and there are 6 more people beginning with ‘k’ in the userlist, then all of the nicks starting with that are shown in the text box. To always cycle nicks, set to 123456 (or any other high number).

completion_auto

Toggle automatic nick completion.

completion_sort

Toggle nick completion sorting in “last talk” order.

completion_suffix

Suffix to be appended to nicks after completion.

dcc_auto_chat

Toggle auto accept for DCC chats.

dcc_auto_recv

How to accept DCC transfers.

  • 0=Ask for confirmation

  • 1=Ask for download folder

  • 2=Save without interaction

dcc_auto_resume

Toggle auto resume of DCC transfers.

dcc_blocksize

The blocksize for DCC transfers.

dcc_completed_dir

Directory to move completed files to.

dcc_dir

Directory to download files to from DCC.

dcc_fast_send

Toggle speed up of DCC transfers by not waiting to heard if last part was received before sending next (currently disabled on Win32).

dcc_global_max_get_cps

Max file transfer speed for all downloads combined in bytes per second.

dcc_global_max_send_cps

Max file transfer speed for all uploads combined in bytes per second.

dcc_ip

DCC IP address to bind to.

dcc_ip_from_server

Get address from IRC server.

dcc_max_get_cps

Max file transfer speed for one download in bytes per second.

dcc_max_send_cps

Max file transfer speed for one upload in bytes per second.

dcc_permissions

What permissions to set on received files. (It’s a CHMOD value in decimal, e.g. to CHMOD a file to 644, which is octal, you need to set dcc_permissions to 420, which is it’s decimal equivalent)

dcc_port_first

First DCC port in range (leave ports at 0 for full range).

dcc_port_last

Last DCC port in range (leave ports at 0 for full range).

dcc_remove

Toggle automatic removal of finished/failed DCCs.

dcc_save_nick

Toggle saving of nicks in filenames.

dcc_send_fillspaces

Replace spaces in filenames with underscores.

dcc_stall_timeout

Time in seconds to wait before timing out during a DCC send.

dcc_timeout

Time in seconds to wait before timing out a DCC transfer waiting to be accepted.

flood_ctcp_num

Number of CTCPs within flood_ctcp_time to be considered a flood.

flood_ctcp_time

Time in seconds for use with flood_ctcp_num.

flood_msg_num

Number of messages within flood_msg_time to be considered a flood.

flood_msg_time

Time in seconds for use with flood_msg_num.

gui_autoopen_chat

Toggle auto opening of Direct Chat Window on DCC Chat.

gui_autoopen_dialog

Toggle auto opening of dialog windows.

gui_autoopen_recv

Toggle auto opening of transfer window on DCC Recv.

gui_autoopen_send

Toggle auto opening of transfer window on DCC Send.

gui_chanlist_maxusers

Maximum number of users in channels to be listed in List of Channels.

gui_chanlist_minusers

Minimum number of users in channels to be listed in List of Channels.

gui_compact

Toggle compact mode (more or less spacing between user list/channel tree rows).

gui_dialog_height

New dialog height in pixels.

gui_dialog_left

The X co-ordinance of dialogs when opened.

gui_dialog_top

The Y co-ordinance of dialogs when opened.

gui_dialog_width

New dialog width in pixels.

gui_hide_menu

Hide or unhide menu bar.

gui_input_icon

Toggle user mode icon in the nick box.

gui_input_nick

Toggle the nick box in the input box.

gui_input_spell

Enable or disable spell checking.

gui_input_style

Toggle use of text box colors and fonts in input box.

gui_join_dialog

Toggle join dialog after connect.

gui_lagometer

Toggle types of Lag-O-Meters.

  • 0=Off

  • 1=Graph

  • 2=Text

  • 3=Both

gui_lang

Set GUI language. Possible values are from 0 to 50 (Win32 only).

gui_mode_buttons

Toggle mode buttons.

gui_pane_left_size

Change size left pane.

gui_pane_right_size

Change size right pane.

gui_pane_divider_position

Saves position of divider when channel switcher and user list are on the same side.

gui_pane_right_size_min

FIXME

gui_quit_dialog

Toggle quit dialog.

gui_slist_fav

Toggle showing favorites only in network list.

gui_slist_select

The number of the server to select by default in the server list starting at 0. (E.g. to select the 67th server, set it to 66)

gui_slist_skip

Toggle server list on startup.

gui_tab_chans

Open channels in tabs instead of windows.

gui_tab_dialogs

Open dialogs in tabs instead of windows.

gui_tab_dots

Toggle dotted lines in the channel tree.

gui_tab_icons

Toggle channel tree icons.

gui_tab_layout

Use treeview or tabs.

  • 0=Tabs

  • 2=Treeview

gui_tab_newtofront

When to focus new tabs.

  • 0=Never

  • 1=Always

  • 2=Only on requested tabs

gui_tab_pos

Set position of tabs.

  • 1=Left-Upper

  • 2=Left

  • 3=Right-Upper

  • 4=Right

  • 5=Top

  • 6=Bottom

  • 7=Hidden

gui_tab_server

Open an extra tab for server messages.

gui_tab_small

Set small tabs.

  • 0=Off

  • 1=Small tabs

  • 2=Extra small tabs

gui_tab_sort

Toggle alphabetical sorting of tabs.

gui_tab_trunc

Number or letters to shorten tab names to.

gui_tab_utils

Open utils in tabs instead of windows.

gui_throttlemeter

Toggle types of throttle meters.

  • 0=Off

  • 1=Graph

  • 2=Text

  • 3=Both

gui_topicbar

Toggle topic bar.

gui_tray

Enable system tray icon.

gui_tray_away

Automatically mark away/back when the tray is toggled.

gui_tray_blink

Toggle tray icon blinking or using static images.

gui_tray_close

Close to tray.

gui_tray_minimize

Minimize to tray.

gui_tray_quiet

Only show tray balloons when hidden or iconified.

gui_ulist_buttons

Toggle userlist buttons.

gui_ulist_count

Toggle displaying user count on top of the user list.

gui_ulist_doubleclick

Command to run upon double click of user in userlist.

gui_ulist_hide

Hides userlist.

gui_ulist_icons

Toggle use of icons instead of text symbols in user list.

gui_ulist_pos

Set userlist position.

  • 1=Left-Upper

  • 2=Left-Lower

  • 3=Right-Upper

  • 4=Right-Lower

gui_ulist_resizable

Toggle resizable userlist.

gui_ulist_show_hosts

Toggle user’s hosts displaying in userlist. (requires irc_who_join)

gui_ulist_sort

How to sort users in the userlist.

  • 0=A-Z with Ops first

  • 1=A-Z

  • 2=A-Z with Ops last

  • 3=Z-A

  • 4=Unsorted

gui_ulist_style

Toggle use of text box colors and fonts in userlist.

gui_url_mod

How to handle URLs when clicked. (And what to hold.)

  • 0=Left Click Only

  • 1=Shift

  • 2=Caps Lock

  • 4=CTRL

  • 8=ALT

gui_usermenu

Toggle editable usermenu.

gui_win_height

Main window height in pixels.

gui_win_left

The X co-ordinance of main window when opened.

gui_win_modes

Show channel modes in title bar.

gui_win_save

Toggles saving of state on exit.

gui_win_state

Default state of the main window.

  • 0=Not Maximized

  • 1=Maximized

gui_win_swap

Swap the middle and left panes (allows side-by-side userlist/tree).

gui_win_top

The Y co-ordinance of main window when opened.

gui_win_ucount

Show number of users in title bar.

gui_win_width

Main window width in pixels.

identd

Toggle internal IDENTD (Win32 only).

input_balloon_chans

Show tray balloons on channel messages.

input_balloon_hilight

Show tray balloons on highlighted messages.

input_balloon_priv

Show tray balloons on private messages.

input_balloon_time

How long balloon messages should be displayed. (2.8.8+)

input_beep_chans

Toggle beep on channel messages.

input_beep_hilight

Toggle beep on highlighted messages.

input_beep_priv

Toggle beep on private messages.

input_command_char

Character used to execute commands. (E.g. if set to ‘[’ then you would use commands like ‘[me jumps around’)

input_filter_beep

Toggle filtering of beeps sent by others.

input_flash_chans

Toggle whether or not to flash taskbar on channel messages.

input_flash_hilight

Toggle whether or not to flash taskbar on highlighted messages.

input_flash_priv

Toggle whether or not to flash taskbar on private messages.

input_perc_ascii

Toggle interpreting of %nnn as ASCII value.

input_perc_color

Toggle interpreting of %C, %B as color, bold, etc.

input_tray_chans

Blink tray icon on channel messages.

input_tray_hilight

Blink tray icon on highlighted messages.

input_tray_priv

Blink tray icon on private messages.

irc_auto_rejoin

Toggle auto rejoining when kicked.

irc_reconnect_rejoin

Toggle auto rejoining on auto reconnect.

irc_ban_type

The default ban type to use for all bans. (requres irc_who_join)

  • 0=*!*@*.host

  • 1=*!*@domain

  • 2=*!*user@*.host

  • 3=*!*user@domain

irc_conf_mode

Toggle hiding of join, part and quit messages. (More info)

  • 0=Show join/part/quits

  • 1=Hide join/part/quits

irc_extra_hilight

Extra words to highlight on.

irc_hide_version

Toggle hiding of VERSION reply.

irc_id_ntext

$4 in the channel message, channel message hilight and private message events if unidentified.

irc_id_ytext

$4 in the channel message, channel message hilight and private message events if identified.

irc_invisible

Toggle invisible mode (+i).

irc_join_delay

How long to delay auto-joining a channel after connect.

irc_logging

Toggle logging.

irc_logmask

Mask used to create log filenames (strftime details: Windows Unix).

irc_nick1

First choice nick.

irc_nick2

Second choice nick.

irc_nick3

Third choice nick.

irc_nick_hilight

What nicks to highlight when they talk.

irc_notice_pos

Placement of Notices:

  • 0 = Automatic

  • 1 = Open extra (notices) tab

  • 2 = Always place in front tab

irc_no_hilight

Nicks not to highlight on.

irc_part_reason

Default reason when leaving channel.

irc_quit_reason

Default quit reason.

irc_raw_modes

Toggle RAW channel modes.

irc_real_name

Real name to be sent to server.

irc_servernotice

Toggle receiving of server notices.

irc_skip_motd

Toggle skipping of server MOTD.

irc_user_name

Username to be sent to server.

irc_wallops

Toggle receiving wallops.

irc_who_join

Toggle running WHO after joining channel.

irc_whois_front

Toggle whois results being sent to currently active tab.

net_auto_reconnect

Toggle auto reconnect to server.

net_auto_reconnectonfail

Toggle auto reconnect upon failed connection. (Unix only command, not available on Windows)

net_bind_host

Network address to bind HexChat to.

net_ping_timeout

How long server ping has to be to timeout.

net_proxy_auth

Toggle proxy authentication.

net_proxy_host

Proxy host to use.

net_proxy_pass

Password to use if proxy authentication is turned on.

net_proxy_port

Port to use for proxy host.

net_proxy_type

Type of proxy to use.

  • 0=Disabled

  • 1=Wingate

  • 2=Socks4

  • 3=Socks5

  • 4=HTTP

  • 5=MS Proxy (ISA)

net_proxy_use

What to use proxies for (if set).

  • 0=All

  • 1=IRC Only

  • 2=DCC Only

net_proxy_user

Username to use if proxy authentication is turned on.

net_reconnect_delay

How many seconds to wait before reconnection.

net_throttle

Toggle flood protection (to keep from getting kicked).

notify_timeout

How often in seconds to check for users in your notify list.

notify_whois_online

Toggle performing WHOIS on users on your notify list when they come online.

perl_warnings

Toggle perl warnings.

sound_dir

Directory where sounds are located.

stamp_log

Toggle timestamps in logs.

stamp_log_format

Format to use for log timestamps (strftime details: Windows Unix).

stamp_text

Toggle timestamps in text box.

stamp_text_format

Format to use for timestamps in textbox (strftime details: Windows Unix).

text_autocopy_color

Toggle automatic copying of color information.

text_autocopy_stamp

Toggle automatic copying of time stamps.

text_autocopy_text

Toggle automatic copying of selected text.

text_background

Sets the background image for text box.

text_color_nicks

Toggle colored nicks.

text_font

All fonts to be used (main and alternative fonts combined, shouldn’t be edited manually).

text_font_main

Primary font to be used.

text_font_alternative

Alternative fonts to be used for glyphs not supported by the primary font.

text_indent

Toggle text indentation.

text_max_indent

Max pixels to indent text with.

text_max_lines

Max number or scrollback lines.

text_replay

Reloads conversation buffers on next startup.

text_search_case_match

Toggle performing a case-sensitive search.

text_search_backward

Toggle searching from newest text line to the oldest.

text_search_highlight_all

Toggle highlighting all occurences and underlining of the current occurence.

text_search_follow

Toggle search for newly arriving messages.

text_search_regexp

Toggle regarding search string as a regular expression.

text_show_marker

Toggle red marker line feature.

text_show_sep

Toggle separator line.

text_spell_langs

List of languages to have spelling for, by language codes, separated by commas.

text_stripcolor_msg

Toggle stripping colors from messages.

text_stripcolor_replay

Toggle stripping colors from scrollback.

text_stripcolor_topic

Toggle stripping colors from topic.

text_thin_sep

Use thin separator line instead of thick line.

text_transparent

Toggle transparent background.

text_wordwrap

Toggle wordwrap.

url_grabber

Toggle URL grabber.

url_grabber_limit

Limit the number of URLs handled by the url grabber.

url_logging

Toggle logging URLs to <config>/url.log.