Programming the Prolog/GNU Emacs Interface

This section describes how the user can program the Quintus Prolog/GNU Emacs interface. In order to make effective use of the interface, the user must be very familiar with GNU Emacs's extension language, Emacs-Lisp. We do not provide support for users' Emacs-Lisp code.

Before deciding to use Emacs-Lisp code in your applications, you should be aware of two potential problems. First, we does not support the GNU Emacs editor interface and as such reserves the right to change the editor environment at any time. This could render your non-Prolog code inoperative or irrelevant. Second, Runtime Systems, which is the usual way of packaging Prolog applications for end users, do not support the GNU Emacs environment. Thus they will not run your Emacs-Lisp code.

With these cautions in mind, if you decide to use Emacs-Lisp code in your applications, these notes should have all of the information that you need to proceed. If your application is very complex, you may also find that you need to understand in some detail how the GNU Emacs interface is built. We supply with the distribution the Emacs-Lisp source code for the interface. You are free to go ahead and change any part of the interface to suit your needs but please be careful to follow the guidelines set by the Free Software Foundation as to how this should be done. These guidelines may be found in any standard distribution of the GNU Emacs editor. You will find the files help.el, commands.el, and qprocess.el especially useful, although depending upon what you are trying to do you may need information from any of the Emacs-Lisp source files.