far.MacroExecute

LuaFAR 3

far.MacroExecute


result = far.MacroExecute (SequenceText, Flags, ...)

Parameters:
  SequenceText: string
  Flags:        flags (optional)
  ...:          arguments for passing to script (optional)

Returns:
  result: table (array of elements returned by the script), or nil

Description:
  Execute a script in the context of LuaMacro plugin.

Notes:
  1. Arguments being passed to the script may be of the following Lua types:
     string, boolean, number, nil, "int64", or "binary".

  2. The returned table contains field "n" - number of elements in the array.
     Use it instead of #result, since there can be elements with nil value.

     To properly unpack the table, do:
         unpack(result, 1, result.n)

Definitions:
  "int64"
    Type of userdata, produced by bit64 library.
  "binary"
    By convention, it is a string enclosed in a table as its first element.
    The string is intended to be passed to and from without conversions UTF-8 <-> UTF-16LE.

Far API used:
  MacroControl(MCTL_EXECSTRING)