X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=apps%2Firssi%2Fdocs%2Fperl.txt;fp=apps%2Firssi%2Fdocs%2Fperl.txt;h=732b73afae0254b524a507cd4244c29a477187be;hb=18d69a0a1fec438e241bb4f431506ed59a34066b;hp=611af9fb0bee54283b881681db82a8105a63e276;hpb=f7be6adec0248118cddde9b04522c13cd90568cd;p=silc.git diff --git a/apps/irssi/docs/perl.txt b/apps/irssi/docs/perl.txt index 611af9fb..732b73af 100644 --- a/apps/irssi/docs/perl.txt +++ b/apps/irssi/docs/perl.txt @@ -16,7 +16,7 @@ scripts. Scripts should be placed to ~/.irssi/scripts/ or /usr/local/lib/irssi/scripts/ (or depending on where irssi was installed) directories. After that /RUN script_name should work, you -don't need to add the .pl prefix. +don't need to add the .pl suffix. Irssi's signals @@ -265,6 +265,9 @@ settings_remove(key) signal_emit(signal, ...) Send signal `signal'. You can give 6 parameters at maximum. +signal_continue(...) + Continue currently emitted signal with different parameters. + signal_add(signal, func) Bind `signal' to function `func'. @@ -283,15 +286,27 @@ signal_stop() signal_stop_by_name(signal) Stop the signal with name `signal' that's currently being emitted. +signal_register(hash) + Register parameter types for one or more signals. + `hash' must map one or more signal names to references to arrays + containing 0 to 6 type names. Some recognized type names include + int for integers, intptr for references to integers and string for + strings. For all standard signals see src/perl/perl-signals-list.h + in the source code (this is generated by src/perl/get-signals.pl). + + Any signals that were already registered are unaffected. + + Registration is required to get any parameters to signals written in + Perl and to emit and continue signals from Perl. - *** timeouts / IO listener + *** timeouts / IO listener / pidwait timeout_add(msecs, func, data) Call `func' every `msecs' milliseconds (1000 = 1 second) with parameter `data'. Returns tag which can be used to stop the timeout. timeout_add_once(msecs, func, data); - Call 'func' once after `msecs' milliseconds (1000 = 1 second) + Call `func' once after `msecs' milliseconds (1000 = 1 second) with parameter `data'. Returns tag which can be used to stop the timeout. timeout_remove(tag) @@ -306,6 +321,16 @@ input_add(source, condition, func, data) input_remove(tag) Remove listener with tag. +pidwait_add(pid) + Adds `pid' to the list of processes to wait for. The pid must identify + a child process of the irssi process. When the process terminates, a + "pidwait" signal will be sent with the pid and the status from + waitpid(). This is useful to avoid zombies if your script forks. + +pidwait_remove(pid) + Removes `pid' from the list of processes to wait for. Terminated + processes are removed automatically, so it is usually not necessary + to call this function. *** Message levels @@ -330,7 +355,7 @@ command_bind(cmd, func[, category]) Bind command `cmd' to call function `func'. `category' is the category where the command is displayed in /HELP. -command_runsub(cms, data, server, item) +command_runsub(cmd, data, server, item) Run subcommands for `cmd'. First word in `data' is parsed as subcommand. `server' is Irssi::Server rec for current Irssi::Windowitem `item'. @@ -339,7 +364,21 @@ command_runsub(cms, data, server, item) with command_bind("`cmd' `subcmd'", subcmdfunc[, category]); command_unbind(cmd, func) - Unbind command `cmd' from function 'func. + Unbind command `cmd' from function `func'. + +command_set_options(cmd, data) + Set options for command `cmd' to `data'. `data' is a string of + space separated words which specify the options. Each word can be + optionally prefixed with one of the following character: + + '-': optional argument + '+': argument required + '@': optional numeric argument + +command_parse_options(cmd, data) + Parse options for command `cmd' in `data'. It returns a reference to + an hash table with the options and a string with the remaining part + of `data'. On error it returns the undefined value. *** Windows @@ -909,6 +948,22 @@ Server::ignore_check(nick, host, channel, text, level) Return 1 if ignoring matched. + *** /EXEC processes + +Process->{} + id - ID for the process + name - Name for the process (if given) + args - The command that is being executed + + pid - PID for the executed command + target - send text with /msg ... + target_win - print text to this window + + shell - start the program via /bin/sh + notice - send text with /notice, not /msg if target is set + silent - don't print "process exited with level xx" + + *** *** IRC specific functions. All objects below this are prefixed with Irc:: *** @@ -960,7 +1015,7 @@ Server::isupport(name) script. If the item is not present returns undef, if the item has no value then "" is returned use defined $server->isupport("name") if you need to check whether a property is present. - See http://www.ietf.org/internet-drafts/draft-brocklesby-irc-isupport-01.txt + See http://tools.ietf.org/id/draft-brocklesby-irc-isupport-03.txt for more information on the ISUPPORT numeric. *** IRC channels @@ -1118,18 +1173,15 @@ Server::notifylist_ison_server(nick) Notifylist::ircnets_match(ircnet) Returns 1 if notify is checked in `ircnet'. - - *** /EXEC processes - -Process->{} - id - ID for the process - name - Name for the process (if given) - args - The command that is being executed - - pid - PID for the executed command - target - send text with /msg ... - target_win - print text to this window - - shell - start the program via /bin/sh - notice - send text with /notice, not /msg if target is set - silent - don't print "process exited with level xx" + *** Proxy clients + +Client->{} + nick - nick of the client + host - host of the client + proxy_address - address of the proxy server + server - Irc::Server for which we proxy to this client + pass_sent - whether the client already send a PASS command + user_sent - whether the client already send a USER command + connected - whether the client is connected and ready + want_ctcp - whether the client wants to receive CTCPs + ircnet - network tag of the network we proxy