Further customization of the interface

Having written a working interface between your system and TeXmacs, you may want to improve it further. Below, we will discuss a few directions for possible improvement.

First of all, you may want to customize the keyboard behavior inside a myplugin-session and add appropriate menus. The mechanisms for doing that are described in the chapter about the Guile/Scheme extension language and you may add such support to the file init-myplugin.scm. We again recommend you to take a look at the plugins which are shipped with TeXmacs inside the directory $TEXMACS_HOME_PATH/plugins.

Certain output from your system might require a special markup. For instance, assume that you want to associate an invisible type to each subexpression in the output. Then you may create a macro exprtype with two arguments in myplugin.ts and send LaTeX expressions like \exprtype{1}{Integer} to TeXmacs during the output.

In the case when you connected your system to TeXmacs using pipes, you may directly execute TeXmacs commands during the output from your system by incorporating pieces of code of the form:

    [DATA_BEGIN]command:scheme-program[DATA_END]

in your output. Inversily, when the cursor is inside a session of your system, you may use the Scheme command:

    (extern-exec plugin-command)

in order to execute a command of your system.

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