1#!/usr/local/bin/perl -w 2 3# /VSAY <text> 4# - same as /say, but removes vowels from text 5# 6# /VME <text> 7# - same as /me, but removes vowels from text 8# 9# /VTOPIC <text> 10# - same as /topic, but removes vowels from text :) 11 12# Written by Jakub Jankowski <shasta@atn.pl> 13# for Irssi 0.7.98.4+ 14 15use strict; 16use vars qw($VERSION %IRSSI); 17 18$VERSION = "1.0"; 19%IRSSI = ( 20 authors => 'Jakub Jankowski', 21 contact => 'shasta@atn.pl', 22 name => 'vowels', 23 description => 'Silly script, removes vowels, idea taken from #linuxnews ;-)', 24 license => 'GNU GPLv2 or later', 25 url => 'http://irssi.atn.pl/', 26); 27 28use Irssi; 29use Irssi::Irc; 30 31# str remove_vowels($string) 32# returns random-coloured string 33sub remove_vowels { 34 my ($string) = @_; 35 $string =~ s/[eyuioa]//gi; 36 return $string; 37} 38 39# void rsay($text, $server, $destination) 40# handles /rsay 41sub rsay { 42 my ($text, $server, $dest) = @_; 43 44 if (!$server || !$server->{connected}) { 45 Irssi::print("Not connected to server"); 46 return; 47 } 48 49 return unless $dest; 50 if ($dest->{type} eq "CHANNEL" || $dest->{type} eq "QUERY") { 51 $dest->command("/msg " . $dest->{name} . " " . remove_vowels($text)); 52 } 53} 54 55# void rme($text, $server, $destination) 56# handles /rme 57sub rme { 58 my ($text, $server, $dest) = @_; 59 60 if (!$server || !$server->{connected}) { 61 Irssi::print("Not connected to server"); 62 return; 63 } 64 65 return unless $dest; 66 if ($dest->{type} eq "CHANNEL" || $dest->{type} eq "QUERY") { 67 $dest->command("/me " . remove_vowels($text)); 68 } 69} 70 71# void rtopic($text, $server, $destination) 72# handles /rtopic 73sub rtopic { 74 my ($text, $server, $dest) = @_; 75 76 if (!$server || !$server->{connected}) { 77 Irssi::print("Not connected to server"); 78 return; 79 } 80 81 return unless $dest; 82 if ($dest->{type} eq "CHANNEL") { 83 $dest->command("/topic " . remove_vowels($text)); 84 } 85} 86 87Irssi::command_bind("vsay", "rsay"); 88Irssi::command_bind("vtopic", "rtopic"); 89Irssi::command_bind("vme", "rme"); 90 91# changes: 92# 93# 07.02.2002: Initial release (v1.0) 94