- Running Perl scripts
- --------------------
+ Installation problems
+ ---------------------
-First you'll need to have Perl support on. By default irssi compiles
-Perl as a module, so /LOAD perl probably helps. If you want to do this
-automatically at startup put the "/LOAD perl" to ~/.irssi/startup file.
-After that you can run scripts with /RUN script (you don't need to give
-the .pl extension). If /RUN complains about "unknown command", you
-don't have Perl module loaded, or maybe Perl support wasn't compiled at
-all.
+You'll need to have perl support compiled with irssi. If "/LOAD"
+doesn't show perl in list of loaded modules, you have a problem. See
+INSTALL file for information about perl problems.
-Place new scripts to ~/.irssi/scripts/ or /usr/local/lib/irssi/scripts/
-directory. Scripts in ~/.irssi/scripts/autorun/ directory are
-automatically run at startup.
-Using /PERLFLUSH closes and reopens the perl interpreter removing all
-Perl scripts from memory. There's currently no way to unload a single
-Perl script (/SCRIPT REMOVE will probably work soon). You can however
-run same script multiple times, and irssi will remove the old version
-from memory before running the new version.
+ Running scripts
+ ---------------
+
+Scripts are run with /SCRIPT LOAD command, or the default /RUN alias.
+"/SCRIPT" shows list of running script, and /SCRIPT UNLOAD can unload
+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.
Irssi's signals
Server::command(cmd)
Window::command(cmd)
Windowitem::command(cmd)
- Send a command `cmd' (in current channel). This will work just as if you
- had typed `cmd' in command line, so you'll need to use /COMMANDS or the
- text will be sent to the channel.
-
- Just like above, except different calling method.
+ Send a command `cmd' (in current channel). The '/' char isn't needed.
*** Themes
Server::get_nick_flags()
Returns nick flag characters in order: op, voice, halfop ("@+%" in IRC).
-Server::send_message(target, msg)
- Sends a message to nick/channel.
+Server::send_message(target, msg, target_type)
+ Sends a message to nick/channel. target_type 0 = channel, 1 = nick
*** Server reconnections
Remove nick from nicklist.
Nick
-Channel::nick_find(mask)
+Channel::nick_find(nick)
Find nick from nicklist.
+Nick
+Channel::nick_find_mask(mask)
+ Find nick mask from nicklist, wildcards allowed.
+
Channel::nicks(channel)
Return a list of all nicks in channel.
Channel::bans()
Return a list of bans in channel.
-Channel::ebans()
- Return a list of ban exceptions in channel.
-
-Channel::invites()
- Return invite list (+I) of channel.
-
Channel::ban_get_mask(nick)
Get ban mask for `nick'.
Channel::banlist_remove(ban)
Remove a ban from channel.
-Channel::banlist_exception_add(ban, nick, time)
- Add a new ban exception to channel.
-
-Channel::banlist_exception_remove(ban)
- Remove a ban exception from channel.
-
-Channel::invitelist_add(mask)
- Add a new invite mask to channel.
-
-Channel::invitelist_remove(mask)
- Remove invite mask from channel.
-
-modes_join(old, mode, channel)
- Add `mode' to `old' - return newly allocated mode. If `channel' is 1,
- we're parsing channel mode and we should try to join mode arguments too.
-
*** DCC