# TXLISP




## Introduction:

TXLisp is an Emacs package which allows a user to combine text-editing and programming and it emerged as a result from a University of Wales Swansea B.Sc. degree final year project. The package is intended to be used with TeX or LATeX and it allows the user to embed Emacs LISP code to documents of those formats.
The approach used in TXLisp mimics the one used with some server-side technologies, such as Java Server Pages, that enable dynamic content creation on web pages. In practice with server-side technologies this normally means that the user has a set of tags, that are used for separating a segment of code from the base HTML document. When the document is requested from the server, the server first processes the segments separated from the base document and the output from the process is a pure HTML document, which is then send to the source requesting the page. The idea behind all this is, that the extra step of processing the segments using a language other than HTML will extend the functionality of HTML, i.e. in this case it allows dynamic content creation among other things.
With TXLisp the base document is either in TeX or LATeX and the segments separated from it are in Emacs LISP. The user runs the compiler provided in the TXLisp package available for download on this page on the document in order to obtain a pure TeX or LATeX document. Then the user can follow the normal steps to produce the final document.
The purpose of this package is to break new ground in TeX document creation. The limits of Emacs LISP are not endless but surely further away than TeX's own programming inteface's. I am not an experienced user of TeX but I have already seen enough to be convinced of the fact that the various configurations of TeX guarantee that being forced to recompile own TeX document on someone else's machine will almost certainly be interrupted by a crucial file or packet being missing. TXLisp could rather easily carry out checks, whether required files are available and download the missing files, if required. Another feature I find very fascinating, is the possibility of user interaction and automatic updating of certain document information like date or user creating the document. This would allow creating certificates in TeX format using templates, where only certain details would need to be changed from time to time.
Both a user manual and the complete dissertation with further details of the software are also available for downloading.



## Author:

I am a 2002 University of Wales Swansea graduate and I obtained my B.Sc. in Computer with German with upper second class honours. I have always been aiming at an international career. So, this degree, which took me to UK for 3 years and to Germany for a year, suited me perfectly. However, travelling, computers and languages are not the all of me. If you are interested in learning more from me, please do visit My Homepage, where you can find more information about me.



#### Documentation:

User Manual - [PS 488K]
User Manual - [PDF 122K]
Complete Dissertation - [PS 3.0M]
Complete Dissertation - [PDF 316K]

#### Software:

TXLISP Compiler - [Source 52K]
TXLISP Compiler - [Compiled 28K]
TXLISP-Overlay extension package - [Source 27K]
TXLISP-Overlay extension package - [Compiled 11K]

#### Examples:

Example1 - Evaluation tags
Example2 - Evaluate and print tags
Example3 - Evaluate and print last tags
Example4 - Conversion tags
Example5 - Reproduction of a conversion segment
Example6 - User Interaction
Example7 - Remote file Accessing

   \noindent / (setq count 1) (setq str "") (while (< count 3) (concat str / Hello World!!!\hfill\break / )) str / \end TXLisp code example with colour distinguished segments and tags   HELLO WORLD!!! HELLO WORLD!!! HELLO WORLD!!! The result after TXLisp and TeX compilation