Guida di LibreOffice 25.2
Le librerie ScriptForge aggregano risorse per la scrittura di macro per LibreOffice, da invocare dalle macro in Basic o dagli script in Python. I suoi moduli e le sue classi sono invocati negli script degli utenti come "Servizi" che espongono proprietà, metodi ed eventi.
Quando i metodi dei servizi sono proposti solamente per LibreOffice Basic, la presentazione della loro sintassi coincide con quella delle subroutine, funzioni o proprietà in Basic.
Quando i metodi dei servizi sono proposti per Python e Basic, o solamente per Python, la loro sintassi e i relativi argomenti usano una specifica disposizione testuale.
I caratteri tipografici come parentesi quadre, puntini di sospensione o parentesi grafe indicano argomenti opzionali, ripetitivi od obbligatori:
       FSO.HashFile(FileName As String, _
           Algorithm As String = {MD5|SHA1|SHA224|SHA256|SHA384|SHA512}) As String
       SF_Array.ImportFromCSVFile(FileName As String, _
           [Delimiter = ","], [DateFormat As String]) As Variant
       SF_String.SplitNotQuoted(InputStr As String, _
          [Delimiter As String], [Occurrences As Long], [QuoteChar As String]) As Variant
    Le regole tipografiche seguenti mescolano la notazione UML, l'impaginazione della documentazione delle API e l'interfaccia utente dell'ispettore degli oggetti UNO:
I parametri opzionali sono indicati sia con opt, '=' seguito da un valore predefinito, oppure da parentesi quadre '[ ]'.
gli argomenti sono in minuscolo, al fine di conformarsi alle linee guida PEP 8 di Python, mentre Basic non fa differenza tra minuscole e maiuscole.
Gli argomenti delle raccolte o le sequenze delle API sono indicate usando la molteplicità di UML. Lo stesso si applica anche ai valori restituiti.
I tipi di dati di Basic e le annotazioni di Python sintatticamente sono trasposte come segue:
| LibreOffice | Sintassi | Python | 
|---|---|---|
| Logico (booleano) | bool | bool | 
| Date | datetime | datetime | 
| Double | float | float | 
| Integer | int | int | 
| Long | int | int | 
| Object | obj | |
| Single | float | float | 
| String | str | str | 
| Variant | any | |
| Oggetto UNO | uno | |
| Tipo definito | obj | |
| Servizio ScriptForge | svc | 
svc.Forms( opt form: any ): svc[0..*]
svc.MsgBox( prompt: str, buttons = svc.MB_OK , opt title: str ): opt str
svc.InputBox( prompt: str, default = "", [ title: str ], [ xpostwips: int, ypostwips: int ] ): str