4TeX 5.0 for Windows and the 4allTeX CDroms

Wietse Dol
Erik Frambach


Every year many major software distributors launch a new version of their software products. They all tell you that there are fundamental improvements and bug fixes and that you have to upgrade immediately. With the release of edition 5 of 4allTeX one could ask yourself what this new edition offers as compared to e.g. the older versions of 4allTeX and the TeX live CDrom. Below we will give a summary of all the goodies of the new 4allTeX distribution and give you pointers to the internet where you can find more information.


The first question that people ask is why we are always talking about 4TeX and 4allTeX. What's the difference? The answer is perhaps subtle but there is indeed a difference. 4TeX is the user interface that we have built to set up a complete workbench for TeX and its many friends. Using 4TeX you can edit, view, print documents, convert graphics, etc., etc. 4allTeX is the name of the two CDroms and it symbolizes the fact that not only people who use the 4TeX workbench can benefit from the CDroms. Indeed, everybody (that's why we speak of forallTeX) can use the programs, documentation etc. without using 4TeX. Just speaking as a mathematician: 4TeX is a subset of 4allTeX.

The previous versions of 4allTeX all supported the MS-Dos operating system (with emTeX as the TeX `engine'). Now a lot of people are asking for a true Windows implementation. Version 4 of 4TeX had some options to use Windows programs but still was MS-Dos based. Windows 95/98 and NT are all 32-bit operating systems and people asked us to think about a true 32-bit 4TeX workbench. Since the core of 4TeX was written in the 4Dos batch-language a 32-bit 4TeX simply means a complete rewrite of it.

So we started to make a completely new version of 4TeX with no backwards compatibility: the new version will not work on an machines running MS-Dos or Windows 3.x. We didn't throw away everything though: the 4TeX philosophy still applies. The fundamental principle of 4TeX has always been not to force anyone to use any particular program. We simply gave you a tool with programs we use in a production environment that we think are useful to you too. At any time, anywhere within 4TeX you can change or add the programs you prefer to use. This means that 4TeX should be extendable/changeable in almost every respect. This was done in the old version in a file that kept the MS-Dos environment variables settings. We didn't start to write our own editor program and give it certain buttons to add TeX functionality for two reasons. The first one is that there are many splendid editor programs already available and the second reason is that you probably have different ideas about what a good editor program is. So 4TeX should be a program (or to use the buzz word: an agent) that could be an intermediate between editor program, TeX programs, and all other tools that you need to publish documents on paper, the internet, etc.

4TeX version 5 was written in Borland Delphi 4.0 and it uses many ASCII configuration files that can be changed/updated in order to customize 4TeX to your taste. Just one example: the 4TeX menus ``speak'' 9 different languages that can be changed on the fly (English, German, Dutch, French, Polish, Danish, Czech, Slovak, and Russian). Just by copying the screen text file and translating it you can add your own language. If you don't like the text on a button or somewhere else you can change the language dependent screen file and have your own text displayed. This is all done by using any ASCII editor program, no programming experience required. Adding programs, printers, viewers, formats etc. is done by changing a certain ASCII file. Naturally the program works smoothly in a network environment and there is extensive online help available. 4TeX is a true Windows program and acts like most Windows programs: it saves the screen positions, the screen sizes, font sizes, and many other settings that can be changed while running 4TeX.

Making 4TeX for Windows took about 1.5 year and during this time it was tested by many beta testers, whom we can never thank enough. It was used at the faculty of Economics of the University of Groningen as a production tool for articles, books etc. and as the ultimate test was used it to write the 550 pages 4TeX manual. This book is a nightmare in complexity as it stretches TeX and its friends to their limits. It works, and we are now confident that a bigger audience can use it. That's why we are now releasing 4allTeX edition 5. Below you will find a summary of the functionality and features of 4allTeX. We hope that you are convinced that 4TeX is worth trying.

The 4TeX manual

Making 4TeX for Windows we decided not only to completely rewrite the program, but also decided to write a new book. The 160+ page booklet that came with the old 4TeX version wasn't enough we thought. What we would like to write is a book that tells you about the good and bad points of TeX. That tells you how the Windows program 4TeX can be used, how it can be changed to suit your needs. That tells you everything about the Web2C TeX implementation and all its parameter settings. That gives you an overview of the TeX dialects and a detailed introduction into plain TeX, LaTeX, and ConTeXt.

The reason is simple. You only need this book plus the 4allTeX CDroms to have everything you need to start writing your own TeX documents. If you like TeX you will buy more books and become an expert, if you stop using TeX (such people do exist) you didn't waste much money - 15 Euro isn't that much and on the CDroms there are many non-TeX programs that are extremely useful. The book isn't only for novice TeX users. We believe experts can learn from it as well. E.g., this is the first book that describes Web2C in detail. Indeed 4all!

As an appetizer we will present a shortened version of the table of contents of the book so you'll get an idea of what you would get:

Part I: Getting started with TeX
A quick introduction
TeX through the looking glass
Installation of 4TeX
Running TeX
Support for TeX users
Part II: Using 4TeX
The main menu
The output menu
The utilities menu
The options menu
Things to be aware of
Part III: The technical ins and outs
The 4TeX system
The Web2C TeX system
Managing and tuning the installation
Part IV: The many roads to TeX
What we mean by TeX
Plain TeX: Knuth's approach
LaTeX: Lamport's approach
ConTeX t: Hagen's approach
File types
Overview of software
Electronic documents on the CDrom

The 4TeX book is sold separately from the 4allTeX Cdroms. This has a legal reason. There are some (extremely useful) programs the forbid distribution by including CDroms in a book. Selling them separately has some advantages: it means you can buy the CDroms without manual. The 4TeX book is available on the CDrom in PDF format anyway, so you can read it online and decide whether you want to buy it later.

The Setup, 4TeX, 4Spell, and 4Project the programs

The programs 4Project and 4Spell were already discussed in NTG's MAPS 22. These programs are developed in such a way that they can be used stand-alone. In this article we will have a closer look at the Setup program and the 4TeX workbench.

All decent Windows programs come with an installation (and uninstallation) program. This program will copy the files from CDrom to a user specified directory, create the necessary registry settings, make the shortcuts (icons) on the desktop etc. 4TeX has such a clever installation program. If you have not installed 4TeX yet (the Windows registry will tell) then the Setup program will start automatically. Or you want you can start the Setup program manually. The Setup program will display a screen as shown in Figure 1.

Figure 1: The opening screen of the 4TeX setup program

The Setup program offers you two ways of installing 4TeX: a simple and an advanced installation. Basically the simple setup will run completely from CDrom or install everything on your hard disk (see Figure 2). This simple installation can be done in less than a minute if you decide to run 4TeX almost completely from CDrom. It will only create the shortcuts and the 4TEX.INI file (the Windows equivalent of the environment files texuser.set, system.set from the MS-Dos days). The 4TEX.INI file contains all the personal settings for your workbench. This approach is useful to people with limited hard disk space or people who just want to try out TeX and 4TeX. If you don't like 4TeX, uninstalling everything is even simpler than installing.

Figure 2: The Simple installation program

Figure 3: Choose shortcuts and association of .tex files to 4TeX

The advanced installation offers a menu from which you can specify which modules you want to install. Modules are parts of the CDrom that have a certain functionality, see Figure 4. The modules are plain ASCII files and are an easy and flexible way to offer people all kind of user specific TeX installations. It also makes it possible that when people ask for extra installation support (write to 4TeX-support@ntg.nl) we can put extra installation modules on the internet and you can download them and use them. Advanced installation is for people who know about TeX and its friends and want a tailor made TeX system.

Figure 4: The advanced installation program offers you to install modules

Figure 5: The 4TeX workbench

The 4TeX workbench gives you a user friendly interface with a large set of utilities. It has a complete Windows look and feel, but some hard programming was necessary to get all the programs work together. For instance: all the TeX programs are 32-bit console applications that write messages in ``MS-Dos'' style. 4TeX redirects this output to a window and makes it possible to scroll through the output (see Figure 6).

Figure 6: The redirection window

Since the ``DOS-boxes'' are still being used and since we want to give users the possibility to do their own programming, the shareware program 4DOS from JP-Software is still the best alternative for COMMAND.COM or CMD.EXE. So we arranged a deal with JP-Software: the 4allTeX CDroms come with a licensed run-time version of 4DOS and 4NT. The same holds for the MED editor. This means that all the basic functionality that 4TeX offers doesn't require you to register any shareware anymore. Of course we still offer you some extra tools that are not licensed, but those programs aren't essential for the 4TeX workbench.

Almost all the functionality that was available in the older 4TeX versions is still there: block compilation, BibTeX, MakeIndex, MetaPost, Metafont, conversion tools, etc., but we added some extras as well. E.g., you can now convert almost any graphic picture using the ImageMagick software and the graphics conversion menu. Spell-checking is done by 4Spell, and if you need some help you can read many on-line documents or start some wizards.

4TeX could have worked with emTeX or MikTeX but we decided to use fpTeX, the fast, well-known Web2c distribution for Win32. We chose Web2c because it is the most widely used TeX implementation world wide that runs on UNIX, Windows, DOS, VMS, Atari and several other platforms. We could discuss 4TeX for another 200 pages but all of that you can read in the 4TeX book, or find it on the internet: 4TeX.pdf. Just to show you the fun of 4TeX: instead of using the large main menu you can use the small yet fully functional toolbar. Putting it on top of your editor it looks as if the 4TeX buttons have become part of the editor program (see Figure 7).

Figure 7: The 4TeX workbench toolbar as part of the editor

4allTeX CDroms

If you want to see what 4allTeX offers you can find complete file listings on . If you need help you can contact the 4TeX discussion list or write to the 4TeX-support team at 4TeX-support@ntg.nl. If you are looking for updates or a list of Frequently Asked Questions, just visit the internet site. We will conclude this article with a summary of 4allTeX's main features and we hope that you will tell us what you like, what you can contribute to 4TeX and what we need to improve.


Published in NTG's MAPS 23, 1999.

The program 4Project is available for downloading;
the program 4Spell is also available for downloading.