Intégration de votre système dans TeXmacs

Supposons que vous avez réussi à écrire votre première interface avec TeXmacs à l'aide des explications de la section précédente. Il est temps maintenant d'inclure la gestion de votre système dans la distribution standard de TeXmacs distribution, après quoi vous pourrez l'améliorer.

Depuis la sortie de la version 1.0.1.5, il est devenu très facile d'adapter une interface de façon à ce qu'elle puisse être directement intégrée dans TeXmacs. Il suffit de créer un répertoire :

    $TEXMACS_HOME_PATH/plugins/myplugin

myplugin est le nom de votre plugin. Nous vous rappelons que $TEXMACS_HOME_PATH est assimilé à ~/.TeXmacs par défaut. Vous trouverez dans le répertoire $TEXMACS_PATH/plugins tous les plugins standards qui sont livrés avec TeXmacs. Servez-vous en de base pour construire les vôtres.

Le répertoire myplugin devra contenir une structure de répertoire similaire à la structure du répertoire $TEXMACS_PATH, quoique vous puissiez omettre les sous-répertoires dont vous ne vous servez pas. Néanmoins, il vous faudra créer un fichier progs/init-myplugin.scm qui décrira l'initialisation de votre plugin. En général, ce fichier contient juste une instruction Scheme de la forme suivante :

    (plugin-configure myplugin

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

(:launch "shell-cmd")

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

(:session "Myplugin"))

La première instruction est un prédicat qui teste si votre plugin peut être utilisé sur un système donné. En général, il vérifie qu'un programme donné est accessible via votre PATH. Les autres instructions ne sont exécutées que si ce premier point est vérifié. L'instruction :launch spécifie que votre plugin sera lancé avec shell-cmd. La commande shell-cmd est généralement de la forme myplugin –texmacs. L'instruction :format spécifie les formats d'entrée et de sortie à utiliser. En général, input-format correspond à verbatim et output-format à generic. Les autres formats possibles sont : scheme, latex, html et ps. L'instruction :session rend les sessions shell disponible pour votre plugin à partir du menu TexteSessionMyplugin.

Si tout fonctionne correctement et que vous souhaitez faire profiter les autres de votre système dans la version officielle de TeXmacs distribution, contactez-moi à 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".