Difference between revisions of "Manual:Lua API"

From Mudlet
Jump to navigation Jump to search
m (Fix typo)
 
Line 19: Line 19:
 
|-
 
|-
 
|colspan="2" | matches[n]
 
|colspan="2" | matches[n]
|colspan="4" | This Lua table is being used by Mudlet in the context of triggers that use Perl regular expressions.  
+
|colspan="4" | This Lua table is being used by Mudlet in the context of aliases and triggers that use Perl regular expressions.  
 
matches[1] holds the entire match, matches[2] holds the first capture group, matches[n] holds the nth-1 capture group.
 
matches[1] holds the entire match, matches[2] holds the first capture group, matches[n] holds the nth-1 capture group.
 
If the trigger uses the Perl style /g switch to evaluate all possible matches of the given regex within the current line, matches[n+1] will hold the second entire match, matches[n+2] the first capture group of the second match and matches[n+m]  
 
If the trigger uses the Perl style /g switch to evaluate all possible matches of the given regex within the current line, matches[n+1] will hold the second entire match, matches[n+2] the first capture group of the second match and matches[n+m]  

Latest revision as of 07:43, 16 July 2024

Other languages:
Deutsch • ‎English • ‎Nederlands • ‎Türkçe • ‎français • ‎italiano • ‎polski • ‎suomi • ‎Ελληνικά • ‎русский • ‎العربية • ‎한국어

Lua API


Mudlet defines several global Lua variables that are accessible from anywhere.

Built-in Lua Variables
Variable Name Description
command This variable holds the current user command. This is typically used in alias scripts.
line This variable holds the content of the current line as being processed by the trigger engine. The engine runs all triggers on each line as it arrives from the MUD.
matches[n] This Lua table is being used by Mudlet in the context of aliases and triggers that use Perl regular expressions.

matches[1] holds the entire match, matches[2] holds the first capture group, matches[n] holds the nth-1 capture group. If the trigger uses the Perl style /g switch to evaluate all possible matches of the given regex within the current line, matches[n+1] will hold the second entire match, matches[n+2] the first capture group of the second match and matches[n+m] the m-th capture group of the second match.

multimatches[n][m] This table is being used by Mudlet in the context of multiline triggers that use Perl regular expression. It holds the table matches[n] as described above for each Perl regular expression based condition of the multiline trigger. multimatches[5][4] may hold the 3rd capture group of the 5th regex in the multiline trigger. This way you can examine and process all relevant data within a single script. Have a look at this example.


Useful Lua resources on the Web