[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: icq2000 client for console



On 19-Nov-2001, Mon, 01:18:24, Evgeny Kazanov <evgeny@tts.lt> wrote:

> > > кстати, кто нить пользовал gaim ?
> > > тоже клиент 2000-й
> > 
> > Сегодня ковырял, в общем понравилась ;-) Только не понятно как сделать 
> > перекодировку koi8-r <> cp1251 (виндовые клиенты получают все в koi8-r).
> > Еще говорят - в моих письмах теги какие-то присутствуют :)
> > 
> > Вот блин - оторван теперь от возможности использования ICQ :(
> 
> Господа, я тут наклепал небольшой перловый скриптик, перекодирующий
> сообщения в cp1251 и обратно в koi8
> URL: http://visaginas.is.lt/linux/sw/recoder_koi_win.pl
> Он использует пакет "recode"
> Его нужно положить в директорию $HOME/.gaim

Попробывал воспользоватся, почему-то плодит окошко содержащее сообрения
присланные мною, причем сообщения в окне пустые.

Исправил скрипт, что-бы он не пользовался внешней программой. (см. attach)

> http://visaginas.is.lt/~evgeny
-- 
With Best,                      | http://www.excom.spb.su/~andrey
     Andrey Chernomyrdin        | mailto:andrey@excom.spb.su 
#!/usr/bin/perl
# Copyright Evgeny Kazanov 2001
# You can use this plagin under terms and conditions of GPL

#
#	my $koi='ЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮёйцукенгшщзхъфывапролджэячсмитьбю';
#	my $win='╗ижсйемцьыгузтшбюопнкдфщъвялхрэач╦ИЖСЙЕМЦЬЫГУЗТШБЮОПНКДФЩЪВЯЛХРЭАЧ';
#
#
# This plug-in uses "recode" package 

GAIM::register("Recoder KOI - Win", "0.0.1", "goodbye", "");

GAIM::add_event_handler("event_im_recv", "on_im_receiving");
GAIM::add_event_handler("event_im_send", "on_im_send");

sub goodbye {
}

sub on_im_receiving {
  $conn_ind = @_[0];
  $who_uin = @_[1];
  $msg = @_[2];
  $translated = win_koi( $msg );
  GAIM::write_to_conv($who_uin,1,"$translated","$who_uin");
  return(1);
}

sub on_im_send {
  $conn_ind = @_[0];
  $who_uin = @_[1];
  $msg = @_[2];
  $translated = koi_win( $msg );
  GAIM::serv_send_im($conn_ind, $who_uin, $translated, 0);
  GAIM::write_to_conv($who_uin,0,"$msg","$who_uin");
  return(1);
}

sub koi_win {
	local $_ = shift;
	tr/ЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮёйцукенгшщзхъфывапролджэячсмитьбю/╗ижсйемцьыгузтшбюопнкдфщъвялхрэач╦ИЖСЙЕМЦЬЫГУЗТШБЮОПНКДФЩЪВЯЛХРЭАЧ/
		if( defined( $_ ) );
	return $_;
}
sub win_koi {
	local $_ = shift;
	tr/╗ижсйемцьыгузтшбюопнкдфщъвялхрэач╦ИЖСЙЕМЦЬЫГУЗТШБЮОПНКДФЩЪВЯЛХРЭАЧ/ЁЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮёйцукенгшщзхъфывапролджэячсмитьбю/
		if( defined( $_ ) );
	return $_;
}



Reply to: