Adding Mathematica fonts to Hummingbird Exceed

Written by Eran Tromer with help fom Ariel Elbaz. Last update: 2004-04-01.

Using Mathematica via the Exceed X server requires installation of fonts on the PC running Exceed. In the spirit of Windows, it's impossible to write a simple script that achieves this and the only (documented) procedure involves manually navigating numerous obscure dialog boxes. The following instructions describe the full installation procedure.

The instructions apply to Mathematica 4 and Matehematica 5, and Exceed 7.0 (for Exceed 8.0, try Hummingbird's instructions or the alternative below). The paths used reflect the standard installation of Exceed 7.0 at the Faculty of Mathematics and Computer Science at the Weizmann Institute of Science, so obvious changes may be needed for other installations.

  1. First check whether the fonts are already installed, by running Mathematica (at Weizmann, run "Mathematica" on the host math01-lx). It will issue a warning if the fonts are missing. Quit Mathematica.
  2. Download one of the following and extract it to C:\TEMP\MATH (e.g., using WinZip):
  3. Create the directory "C:\Program Files\Hummingbird\Connectivity\7.00\exceed\font\Mathematica\"
  4. Run Exceed's Xconfig from "Start | Programs | Hummingbird Connectivity 7.00 | Exceed | Xconfig" or "Start | Programs | Exceed | Xconfig"
    1. Double-click on Font.
    2. Choose Compile Fonts...
    3. In "Directories", choose C:\TEMP\MATH\PCF
    4. In "List Files of Type", choose "PCF Files" or BDF Files", depending on the version you downloaded at step 2.
    5. Click "Select All"
    6. In "Output Font Directory", choose C:\Program Files\Hummingbird\Connectivity\7.00\exceed\font\Mathematica\
    7. Click Compile
    8. Click Done
    9. When asked whether to add the directory to the font database, choose Yes
    10. In the "File Name (*.fdb)" edit box, enter "Mathematica".
    11. Change the Status radio box from Load to Keep.
    12. Click OK to close the "Add Font Directory " dialog box
    13. Click Close to close the "Compile Fonts" dialog box
    14. Choose "Font Database"
    15. Disable "Automatic Font Substitution " (if it is enabled)
    16. Click OK
    17. Click Close to close the "Font Settigns" dialog box
    18. Close Xconfig
  5. Delete C:\TEMP\MATH
  6. Make sure Mathematica is not running.
  7. If Exceed is running, right-click on the Exceed icon in the taskbar and from the pop-up menu choose File | Reload Database | Font.

Alternative solution: forget Exceed, use free software

Cygwin/X is a Windows version of the famous XFree86 X server, which is the standard for Linux systems. As such, it supports various extensions (e.g., "XRENDER") that improve the functionality of many modern programs written primarily for Linux. Installation of fonts is easily scriptable (in contrast with the monstrosity above!). And best of all, Cygwin/X is open source software.

One-time installation procedure (does not affect your existing Exceed installation):

  1. Install Cygwin by downloading and running its setup program. Make sure to choose the X11, Archive and Net categories, and the wget package in the Web category.
  2. Download the batch file cygx.bat onto your desktop (or some other convenient place). This batch file starts Cygwin/X and opens an xterm window running a bash shell on your local machine. If you installed Cygwin to a non-default location, change the "set CYGWIN_ROOT=..." line in cygx.bat accordingly.
  3. To install the Mathematica fonts, run cygx.bat and paste the following command (as one long line) into the shell window:
    export http_proxy=; (set -xe; cd /usr/X11R6/lib/X11/fonts/misc/; for TYPE in PCF BDF; do wget -O /tmp/$$; unzip -j -n /tmp/$; rm /tmp/$; done; mkfontdir.exe; xset fp rehash; echo Success)
    (Alter or remove the "http_proxy=..." at the beginning to reflect your proxy configuration.)
  4. Make sure the above said Success.

That's it. To run Mathemaica:

  1. Run cygx.bat.
  2. Use ssh or telnet to log into your Unix server and run Mathematica as usual.

Please inform me of any errors in the above and of relevant updates.