Un esempio di plugin in C++

Il plugin minimal

Consideriamo l'esempio del plugin minimal nella directory

    $TEXMACS_PATH/examples/plugins

Il plugin è costituito dai seguenti file:

    minimal/Makefile
    minimal/progs/init-minimal.scm
    minimal/src/minimal.cpp

Per testare il plugin è necessario copiare ricorsivamente la directory

    $TEXMACS_PATH/examples/plugins/minimal

in $TEXMACS_PATH/progs o in $TEXMACS_HOME_PATH/progs. Quindi si esegue Makefile utilizzando

    make

in modo da compilare il file minimal.cpp e creare il file binario

    minimal/bin/minimal.bin

Dopo aver rilanciato TeXmacs il plugin dovrebbe essere automaticamente riconosciuto.

Come funziona

Il plugin minimal è un esempio di interfaccia minimale tra TeXmacs e un programma esterno; il programma esterno minimal.cpp viene spiegato in dettaglio nel capitolo relativo alla scrittura di interfacce. Il file di inizializzazione init-minimal.scm contiene essenzialmente il seguente codice:

(plugin-configure minimal

(:require (url-exists-in-path? "minimal.bin"))

(:launch "minimal.bin")

(:session "Minimal"))

L'opzione :require controlla se minimal.bin esiste nel path, percui fallirà se si dimentica di eseguire Makefile. L'opzione :launch specifica come lanciare il programma esterno. L'opzione :session indica che sarà possibile creare una sessione per il plugin minimal utilizzando il menu TestoSessioneMinimal.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".