Overview

Deprecation Notice

Important

Zrythm used to offer scripting capabilities using GNU Guile. This functionality has been disabled and is considered deprecated. We will be migrating to a different framework for scripting - likely libpeas-based. Ideas and suggestions are welcome.

This chapter is left as reference of what was possible and will be replaced in the future.

Previous Scripting Capabilities

Zrythm offers a scripting interface implemented using GNU Guile that supports multiple scripting languages. Zrythm currently supports the following scripting languages:

Note

The Guile API is not available on Windows. See this ticket for details.

The API section is a comprehensive list of all available procedures in the API. Each section in the API corresponds to a specific Guile module.

Using Modules

To use the audio position module from Scheme, use the following code:

(use-modules (audio position))
(let* ((pos (position-new 1 1 1 0 0)))
  (position-print pos))

To use it from ECMAScript, use:

var position_module = require ('audio.position');
var position_new = position_module['position-new'];
var pos = position_new (1, 1, 1, 0, 0);
var position_print = position_module['position-print'];
position_print (pos);