Supporting your system TeXmacs

Supponiamo che, seguendo quanto spiegato nella sezione precedente, siate riusciti a scrivere una prima interfaccia per TeXmacs di un certo programma applicativo. Allora è giunto il momento di includere un primo supporto per il vostro sistema in una distribuzione standard di TeXmacs, dopodichè sarà possibile migliorarne le prestazioni.

Dalla versione 1.0.1.5 in poi, è diventato semplice adattare una generica interfaccia in modo da poterla integrare direttamente in TeXmacs. L'idea è di creare una directory:

    $TEXMACS_HOME_PATH/plugins/myplugin

dove myplugin è il nome del corrispondente plugin. Ricordiamo che $TEXMACS_HOME_PATH è assimilato per defult a ~/.TeXmacs. Nella directory $TEXMACS_PATH/plugins potete trovare tutti i plugin standard disponibili nella distribuzione di TeXmacs che state usando. I plugin già implementati rappresentano altrettanti buoni esempi da cui prendere spunto.

La directory myplugin dovrebbe contenere una struttura di sottodirectory analoga a quella di $TEXMACS_PATH, anche se è possibile omettere le directory che non vengono direttamente utilizzate. In ogni caso deve essere fornito un file progs/init-myplugin.scm che descriva come inizializzare il vostro plugin. Tipicamente questo file contiene solo una istruzione in Scheme, con una forma del genere:

    (plugin-configure myplugin

(:require (file-in-path "myplugin"))

(:launch "shell-cmd")

(:format "input-format" "output-format")

(:session "Myplugin"))

La prima istruzione è un predicato che stabilisce se il vostro plugin può essere utilizzato o meno su un dato sistema. Normalmente si verifica se il programma cui fa riferimento il plugin è disponibile nel path. Le istruzioni seguenti vengono eseguite solo se la richiesta precedente è soddisfatta. L'istruzione :launch specifica che il plugin viene lanciato utilizzando shell-cmd. Il comando shell-cmd normalmente ha la forma myplugin –texmacs. L'istruzione :format specifica quali sono i formati utilizzati in input e in output. Tipicamente input-format è verbatim e output-format è generic. Altri formati disponibili sono scheme, latex, html e ps. L'istruzione :session rende disponibili le sessioni da shell del plugin dal menu TestoSessioneMyplugin.

Se tutto funziona e desiderate rendere possibile ad altri l'utilizzo del plugin inserendolo in una distribuzione ufficiale di TeXmacs contattate Joris van der Hoeven all'indirizzo internet vdhoeven@texmacs.org.

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".