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

https://www.novaworkssoftware.com/legato/current/legatobasic.zip

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: January 24, 2023

Legato Integrated Development Environment (IDE)

https://www.novaworkssoftware.com/legato/current/legatoide.zip

This package will allow you to write, debug and run Legato scripts from an IDE. Legato is free for development for personal or non-commercial use. By downloading Legato IDE, you agree to the Terms and Conditions of its use.

Revised: January 24, 2023

Legato Release Notes
Version 1.3r (01/23/2022)
GoFiler 5.17b

1.0 Legato Script Language Notes 

1.1  Function Improvements and Changes

General

–  Changed the expected parameter behavior for the FormatString function such that the function requires at least two parameters. Previously this function returned the first parameter, which was the format string as is, if there were no other parameters. This was prone to error. If a programmer forgot to add the data parameter to the format string, no run time error or warning would be generated. Since the function is meant to format data, data parameters must now be present.

–  Added parameter checks for the following functions to make sure the first parameter is a dimensional variable:

ArrayAddKeyName

ArrayAddKeyNames

ArrayClear

ArrayGetAxisDepth

ArrayGetAxisSize 

ArrayGetKeyName

ArrayHasKeyName

ArrayIsKeyName

    The previous version of Legato would operate in an undefined manner if a non-dimensional parameter was added.

–  Corrected an issue with certain Data Sheet functions that used the edge as the range for the sheet. For example, the DataSheetSetCellText function would attempt to set data in a cell referenced as 2 on the edge of a 2x2 sheet, which is of course out of range in a zero-based index system

–  Added option to the ScriptGetComments function to default to the current script name as the target to extract pragma based comments.

1.2  New API Functions

Data Sheet

–  DataSheetEnumerateSheets — Returns an index to the named sheets and properties in a workbook.

Data View

–  DataViewGetList — Get a named table/list item from a view.

–  DataViewSetList — Sets a table into a named item.

Dialog Functions

–  DialogEnumerateControls — Enumerates all the controls on the current or specified dialog page.

Menu Functions

–  MenuEnumerateFunctions — Returns a table of all of properties for all functions.

XBRL Model

–  XBRLAddConcept — Adds a concept to the concept table.

–  XBRLAddContext — Adds a context to the context table.

–  XBRLAddFact — Adds a fact to the fact table.

–  XBRLAddUnit — Adds a unit to the unit table.

–  XBRLCreateObject — Creates an empty XBRL Instance Model.

–  XBRLExportXML — Writes one or more segments of XBRL data as XML code.†

–  XBRLGetConceptByID — Returns a concept via its specified ID.

–  XBRLImportTaxonomy — Imports a taxonomy/schema.

 

† Partial implementation.