Opzioni di configurazione per i plugin

Come spiegato in precedenza, il file Scheme di configurazione mioplugin/progs/init-mioplugin.scm, relativo a un plugin con nome mioplugin, contiene istruzioni del tipo

(plugin-configure mioplugin

configuration-options)

Di seguito sono elencate le opzioni possibili per configuration-options:

(:require condition)
questa opzione serve per specificare una condizione che deve essere soddisfatta per garantire il funzionamento corretto del plugin. Tipicamente si va a verificare se nel sistema sono presenti alcuni file binari o alcune librerie necessarie per il funzionamento. Se questa condizione fallisce TeXmacs continuerà a lavorare come se il plugin non esistesse. In questo caso la parte di configurazione successiva del plugin non verrà letta. Per questa ragione l'opzione :require viene di norma scritta per prima nella lista delle opzioni di configurazione;
(:version version-cmd)
questa opzione serve per specificare un'espressione Scheme version-cmd che valuta la versione del plugin;
(:setup cmd)
questo comando viene eseguito solo quando la versione del plugin cambia da una esecuzione di TeXmacs all'altra. Ciò capita principalmente quando viene installata una nuova versione di TeXmacs o viene aggiunta qualche altra applicazione accessoria;
(:initialize cmd)
questa espressione esegue l'espressione Scheme cmd. Tipicamente viene inserita subito dopo l'opzione :require in modo che il plugin venga configurato solamente una volta appurata la sua esistenza. Per plugin che richiedono numerose istruzioni per essere programmati è importante che il file mioplugin/progs/init-mioplugin.scm sia piccolo in quanto esso viene eseguito ad ogni avvio di TeXmacs. Per ridurre il tempo di caricamento di TeXmacs la maggior parte dei comandi Scheme possono essere inseriti in moduli separati, alcuni dei quali possono essere caricati attraverso comandi di inizializzazione;
(:launch shell-cmd)
questa opzione specifica che il plugin riesce a valutare espressioni su una pipe; ciò avviene utilizzando un'applicazione accessoria lanciata da riga di comando con il comando shell-cmd;
(:link lib-name export-struct options)
questa opzione è simile a :launch, salvo che ora l'applicazione esterna viene collegata dinamicamente. Per ulteriori informazioni si rimanda alla sezione relativa ai link dinamici;
(:session menu-nome)
questa opzione indica che il plugin supporta una valutazione per sessioni interattive da shell. Un oggetto de tipo menu-oggetto verrà inserito nel menu TestoSessione per lanciare questo tipo di sessioni;
(:serializer ,fun-nome)
se il plugin si può utilizzare in modalità di valutazione allora questa opzione specifica la funzione Scheme fun-nome utilizzata per trasformare gli alberi TeXmacs in stringhe;
(:commander ,fun-nome)
questo comando è simile all'opzione :serializer con la differenza che esso viene usato per trasformare comandi speciali in stringhe;
(:tab-completion ,flag)
questo comando indica se il plugin supporta o meno i completamenti tramite tabulatore.
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".