view plugins/tcl/signal-test.tcl @ 7724:613b20c69d2c

[gaim-migrate @ 8369] this didn't cause me any problems yesterday, and it compiles, and bug fixing is a good thing. "Some month ago I introduced translatable texts for "gaim --help" and "gaim-remote --help". Unfortunately the output of the translated text is often unreadable. The problem is, that Gaim's *.po files have the UTF-8 locale (because this is the default charset for GTK+ 2.0). But the users may have configured other locales. For instance my SuSE Linux 9.0 system is configured with LANG=de_DE@euro. "euro" is ISO-8859-1 (Western character set, 8 Bit, with the Euro currency symbol). Lots of UTF-8 characters are unreadable if they are displayed in a 8 Bit charset without conversion. Only the 7 Bit chars are displayed right. There are two possible solutions: 1) Make the console texts untranslatable. This isn't very clever. 2) Convert the texts from UTF-8 to user's locale. I choose the second solution. The conversion cannot be made during the translation, because gettext does not allow a mix of different character sets in one po-file. My patch converts the console strings from UTF-8 to users locale. Normally this works right, because most users have a locale which is compatible with their language. The case where a user uses a language (for instance German: LANG=de_DE) with an incompatible character set (for instance the 7Bit charset LC_CTYPE=C) is also handled. The user then sees a warning and the original UTF-8 message. At first I tried to make a new UTF-8 function in src/util.c. But the function is needed 5 times in src/gaim-remote.c and 2 times in src/main.c. gaim-remote is not linked against util.o. Also there are a lot of dependencies from util.o to other files, so I will introduce a lot of trouble to link gaim-remote against util.o. So I only wrote a function in src/gaim-remote.c and used the UTF-8 conversion inline in src/main.c." --Bjoern Voigt committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Wed, 03 Dec 2003 13:21:55 +0000
parents fe9568f4055f
children e280d73ed07f
line wrap: on
line source

gaim::signal connect [gaim::account handle] account-away { account state message } {
	gaim::debug -info "tcl signal" "account-away [gaim::account username $account] \"$state\" \"$message\""
}

gaim::signal connect [gaim::account handle] account-connecting { account } {
	gaim::debug -info "tcl signal" "account-connecting [gaim::account username $account]"
}

gaim::signal connect [gaim::account handle] account-set-info { account info } {
	gaim::debug -info "tcl signal" "account-set-info [gaim::account username $account] $info"
}

gaim::signal connect [gaim::account handle] account-setting-info { account info } {
	gaim::debug -info "tcl signal" "account-set-info [gaim::account username $account] $info"
}

gaim::signal connect [gaim::account handle] account-warned { account who level } {
	gaim::debug -info "tcl signal" "account-warned [gaim::account username $account] $who $level"
}

gaim::signal connect [gaim::buddy handle] buddy-away { buddy } {
	gaim::debug -info "tcl signal" "buddy-away [gaim::account username [lindex $buddy 2]] [lindex $buddy 1]"
}

gaim::signal connect [gaim::buddy handle] buddy-back { buddy } {
	gaim::debug -info "tcl signal" "buddy-back [gaim::account username [lindex $buddy 2]] [lindex $buddy 1]"
}

gaim::signal connect [gaim::buddy handle] buddy-idle { buddy } {
	gaim::debug -info "tcl signal" "buddy-idle [gaim::account username [lindex $buddy 2]] [lindex $buddy 1]"
}

gaim::signal connect [gaim::buddy handle] buddy-unidle { buddy } {
	gaim::debug -info "tcl signal" "buddy-unidle [gaim::account username [lindex $buddy 2]] [lindex $buddy 1]"
}

gaim::signal connect [gaim::buddy handle] buddy-signed-on { buddy } {
	gaim::debug -info "tcl signal" "buddy-signed-on [gaim::account username [lindex $buddy 2]] [lindex $buddy 1]"
}

gaim::signal connect [gaim::buddy handle] buddy-signed-off { buddy } {
	gaim::debug -info "tcl signal" "buddy-signed-off [gaim::account username [lindex $buddy 2]] [lindex $buddy 1]"
}

gaim::signal connect [gaim::core handle] quitting {} {
	gaim::debug -info "tcl signal" "quitting"
}

gaim::signal connect [gaim::conversation handle] received-chat-msg { account who what id } {
	gaim::debug -info "tcl signal" "received-chat-msg [gaim::account username $account] $id $who \"$what\""
	return 0
}

gaim::signal connect [gaim::conversation handle] received-im-msg { account who what flags } {
	gaim::debug -info "tcl signal" "received-im-msg [gaim::account username $account] $flags $who \"$what\""
	return 0
}

gaim::signal connect [gaim::conversation handle] sending-chat-msg { account what id } {
	gaim::debug -info "tcl signal" "sending-chat-msg [gaim::account username $account] $id \"$what\""
	return 0
}

gaim::signal connect [gaim::conversation handle] sending-im-msg { account who what } {
	gaim::debug -info "tcl signal" "sending-im-msg [gaim::account username $account] $who \"$what\""
	return 0
}

gaim::signal connect [gaim::conversation handle] sent-chat-msg { account id what } {
	gaim::debug -info "tcl signal" "sent-chat-msg [gaim::account username $account] $id \"$what\""
}

gaim::signal connect [gaim::conversation handle] sent-im-msg { account who what } {
	gaim::debug -info "tcl signal" "sent-im-msg [gaim::account username $account] $who \"$what\""
}

gaim::signal connect [gaim::connection handle] signed-on { gc } {
	gaim::debug -info "tcl signal" "signed-on [gaim::account username [gaim::connection account $gc]]"
}

gaim::signal connect [gaim::connection handle] signed-off { gc } {
	gaim::debug -info "tcl signal" "signed-off [gaim::account username [gaim::connection account $gc]]"
}

gaim::signal connect [gaim::connection handle] signing-on { gc } {
	gaim::debug -info "tcl signal" "signing-on [gaim::account username [gaim::connection account $gc]]"
}

if { 0 } {
gaim::signal connect signing-off {
	gaim::debug -info "tcl signal" "signing-off [gaim::account username [gaim::connection account $event::gc]]"
}

gaim::signal connect update-idle {
	gaim::debug -info "tcl signal" "update-idle"
}
}

proc plugin_init { } {
	list "Tcl Signal Test" \
             "$gaim::version" \
             "Debugs a ridiculous amount of signal information." \
             "Ethan Blanton <eblanton@cs.purdue.edu>" \
             "http://gaim.sourceforge.net/"
}