Hexchat Tips
Hexchat is a popular IRC client for Windows. For more information see https://hexchat.github.io Bitlbee indicates user online status via +v and -v modes. Almost all IRC clients will print this mode change to the channel.
Scripts
Hexchat supports Perl, Python and Lua scripts for customization.
Preventing Hexchat from printing "Bitlbee gives channel half-operator status to $USER"
If you want Hexchat to not print these incessant changes, load the Perl script below in Hexchat. You will probably need the correct version of Perl provided by Hexchat - https://hexchat.github.io/downloads.html Tested with HexChat 2.12.1 and Hexchat provided Perl 5.20.0
# Name: ignore_chan_voices.pl
# Version: 002
# Author: LifeIsPain < idontlikespam (at) orvp [dot] net >
# Date: 2010-04-29
# Description: Ignore voices that are given and removed in specified channels.
# Version History
# 001 2010-02-10 Initial Version for someone in #xchat
# 002 2010-04-29 Also ignore raw modes if only item
# 003 2016-05-23 Update for Hexchat, thanks to LifeIsPain < idontlikespam (at) orvp [dot] net >
# Original at https://github.com/hexchat/hexchat-addons/blob/master/perl/ignore_chan_voices/ignore_chan_voices.pl
use strict;
use warnings;
use HexChat qw (:all);
register('Ignore Chan Voices', '002', 'Ignore voice and devoice on specified channels');
for ('Channel Voice', 'Channel DeVoice') {
hook_print($_, \&ignore_voice);
}
hook_print('Raw Modes', \&ignore_raw_voice);
# specified the channels you wish to ignore in here, same format, lower case channels
my %ignore_list = (
'>alk' => 1,
'&steam' => 1,
);
sub ignore_voice {
my $chan = lc get_info('channel');
return EAT_HEXCHAT if (defined $ignore_list{$chan});
return EAT_NONE;
}
sub ignore_raw_voice {
my $chan = get_info('channel');
return EAT_HEXCHAT if (defined $ignore_list{lc $chan} && $_[0][1] =~ m/^$chan [-+]v /i);
return EAT_NONE;
}This is especially nice for the Steam channel (&steam) as it just shows you contact's online/offline status and they game they are playing.
