To create new wiki account, please join us on #znc at Libera.Chat and ask admins to create a wiki account for you. You can say thanks to spambots for this inconvenience.

Modtcl: Difference between revisions

From ZNC
Jump to navigation Jump to search
No edit summary
KindOne (talk | contribs)
No longer in znc-extra. update it to match 1.0
Line 6: Line 6:
'''No, your eggdrop scripts will not work'''. Only few very basic ones will, if you use modtcl.tcl like explained below.
'''No, your eggdrop scripts will not work'''. Only few very basic ones will, if you use modtcl.tcl like explained below.


== Install ==
== Compiling ==
modtcl should be installed via [[ZNC-Extra]]. Since this module has an external dependency, you have to pass both, <code>--enable-extra</code> and <code>--enable-tcl</code> to configure to enable it.
First, you need to use ./configure with option --enable-tcl.


== Usage ==
== Usage ==

Revision as of 23:01, 24 April 2013


modtcl allows you to run tcl scripts in ZNC.

No, your eggdrop scripts will not work. Only few very basic ones will, if you use modtcl.tcl like explained below.

Compiling

First, you need to use ./configure with option --enable-tcl.

Usage

Arguments

This user module takes one optional arguments. The argument is the absolute path to a tcl script file.

Read loading modules to learn more about loading modules.

modtcl allows you to run any tcl code via:

/msg *modtcl tcl-code
/msg *modtcl format [string repe "%c" 10] 90 78 67 32 114 111 99 107 115 33

If you have modtcl.tcl loaded you can rehash your loaded scripts with:

/msg *modtcl rehash

modtcl.tcl and binds.tcl

modtcl comes with modtcl.tcl and binds.tcl (they help emulate an eggdrop) To load these files set the module argument to the absolute path of the file:

LoadModule = modtcl /path/to/modtcl.tcl

or load it from irc:

/msg *status loadmod modtcl /path/to/modtcl.tcl

By default modtcl.tcl loads binds.tcl aswell and you can add your own script files to be loaded under the "load other script files" section near the end of modtcl.tcl.

After you load them you can use some eggdrop commands:

/msg *modtcl putquick "privmsg #znc :testing"
/msg *modtcl bind pub - !ping pubPing; proc pubPing {nick uhost handle chan arg} {putquick "privmsg $chan :$nick: pong"}