Using Legato

The Legato Scripting Language and the IDE are included in all installations of GoFiler Complete. You may also download the Legato Interpreter for free as a standalone package below.

Legato Basic

This package will allow you to run Legato scripts from a command line. Legato is free for development for personal or non-commercial use. By downloading Legato Basic, you agree to the Terms and Conditions of its use.

Revised: July 21, 2020

Legato Release Notes
Version 1.2l (07/21/2020)
GoFiler 5.4a

1.0 Legato Script Language Notes 

1.1 General Changes and Enhancements

–  Added range 300-400 Windows error codes to the translation table for the SDK. Also added the defines from 200-400 for the default Legato SDK.

–  Internal 1MB buffers have been expanded to 2MB. This primarily impacts DataSheet, DataControl and Data View which have had their cell sizes expanded to 2MB.

–  Internal 64KB buffers have been expanded to 1MB. This is part of the overall widening of the text editor and Mapped Text Object. Many functions that relied on the 64KB buffers are upgraded to 1MB.

–  The SGML Object has been upgraded to allow for tags up to 1MB in size. Likewise, tag/css parameter values can be very large.

1.2 Revised API Functions

–  FileOpen has been improved to allow the use of the FO_FORCE_SPOOL flag in the mode flags. The file must be opened with write permissions. Use largely for debug operations, the flag allows various file write functions to flush on every write operation to insure log items or other data is being written.

–  Added data availability testers to the clipboard ‘get’ functions prior to getting data. In the previous version, if an attempt was made to retrieve data without first checking, an internal error would be displayed if the requested format was not available.

–  Added progress window processing during import to the DataSheetImport function. By using the flag DS_IMPORT_USE_PROGRESS, the script engine progress is used to display progress on importing.

–  Adjust the return value on the RunScript function to remove the bias from returned syntax or runtime errors. The previous version returned in internal message ID as a resource ID and therefore had a base message value.

–  Added integer version of the Absolute function.

1.3 New API Functions


–  CSVTableToString — Returns a CSV version of a table array (two-dimensional) with optional flags.

Data View

–  DataViewAddEditAction — Increases the edit change count and refreshes the view.

–  DataViewUndoGetCount — Returns the count of aggregated undo transactions.

–  DataViewUndoSetState — Reads, enables or disables undo transaction tracking.

–  DataViewPreallocate — Preallocates specified data arrays within Data View.