From ab24f793c3253279d39e2f373efe27a2853ce36c Mon Sep 17 00:00:00 2001 From: Lars Djerf Date: Sat, 3 Jan 2015 19:42:44 +0100 Subject: Add slack_emoji.pl A script for converting Slack emoji to smileys. --- scripts/slack_emoji.pl | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 scripts/slack_emoji.pl (limited to 'scripts') diff --git a/scripts/slack_emoji.pl b/scripts/slack_emoji.pl new file mode 100644 index 0000000..e94cec5 --- /dev/null +++ b/scripts/slack_emoji.pl @@ -0,0 +1,50 @@ +# slack_emoji.pl +# This script converts slack emoji to smileys. + +use strict; +use warnings; +use vars qw($VERSION %IRSSI); + +use Irssi; +$VERSION = '0.03'; +%IRSSI = ( + authors=> 'Lars Djerf', + contact=> 'lars.djerf@gmail.com', + name=> 'slack_emoji', + description=> 'This script converts Slack emoji to smileys.', + license=> 'GPLv3', + ); + +my %emoji = ('smile' => ':)', + 'simple_smile' => ':)', + 'smiley' => ':-)', + 'grin' => ':D', + 'wink' => ';)', + 'smirk' => ';)', + 'blush' => ':$', + 'stuck_out_tongue' => ':P', + 'stuck_out_tongue_winking_eye' => ';P', + 'stuck_out_tongue_closed_eyes' => '', + 'disappointed' => ':(', + 'astonished' => ':O', + 'open_mouth' => ':O', + 'heart' => '<3', + 'broken_heart' => ' '*thumbs-up*', + 'thumbsup' => '*thumbs-up*', + 'confused' => ':S'); + +sub event_message ($$$) { + my ($server, $msg, @rest) = @_; + my @matches = ($msg =~ /\:(\w+)\:/g); + foreach (@matches) { + if ($emoji{$_}) { + my $smiley = $emoji{$_}; + $msg =~ s/\:$_\:/$smiley/; + } + } + Irssi::signal_continue($server, $msg, @rest); +} + +Irssi::signal_add_first('message public', 'event_message'); +Irssi::signal_add_first('message private', 'event_message'); -- cgit v1.2.3