<\body> senden> Die Anwendung kann als ein ganz spezielles Ausgabe-Format benutzen. Es dient zur Übertragung von -befehlen an . Mit anderen Worten, der Block <\quotation> command:>> sendet den Befehl > an , der dort sofort nach dem Erhalt von ausgeführt wird. Wir erinnern uns, dass derartige Blöcke in gröÿere - Blöcke eingebettet sein können. plugin> Das Beispiel zeigte, wie eine Anwendung -Menüs interaktiv \ ändern kann. Es besteht aus den folgenden Dateien <\verbatim> \ \ \ \ \ \ \ \ \ \ \ \ Der Rumpf der Hauptschleife von besteht aus <\cpp-fragment> char buffer[100]; cin.getline (buffer, 100, '\\n'); cout \\ DATA_BEGIN \\ "verbatim:"; cout \\ DATA_BEGIN \\ "command:(menus-add \\"" \ \ \ \ \ \\ buffer \\ "\\")" \\ DATA_END; cout \\ "Added " \\ buffer \\ " to menu"; cout \\ DATA_END; fflush (stdout); Das -Makro wird in definiert: <\scheme-fragment> (menu-bind menus-menu \ \ ("Hi" (insert-string "Hello world"))) \; (menu-extend texmacs-extra-menu \ \ (if (equal? (get-env "prog language") "menus") \ \ \ \ \ \ (=\ "Menus" (link menus-menu)))) \; (define-macro (menus-add s) \ \ `(menu-extend menus-menu \ \ \ \ \ (,s (insert-string ,s)))) Die Konfiguration von erfolgt wie gewöhnlich: <\scheme-fragment> (plugin-configure menus \ \ (:require (url-exists-in-path? "menus.bin")) \ \ (:launch "menus.bin") \ \ (:session "Menus")) <\initial> <\collection>