Version 2.13 Added Features/Bug Fixes

  1. Add multi-page functionality. Two modes are supported, namely, the STACK mode and the TILED mode. When in the TILED mode, an X default, TiledPageScaling, is used to specify a scale used when the drawing is printed. Since most PostScript printers do not use the full page as the drawing area, setting this value to 1.0 may get truncated output. The recommanded (default) value is 0.9.

  2. Add file attributes (can be manipulated through the Special Menu).

  3. Add the ability to execute a few internal commands using the same mechanism as the ``travel'' and ``launch'' operations. Two demo files can be ftped from the /pub/samples_tgif directory from ( The 'latex' example shows how to specify a latex equation as an attribute and what additional attributes are needed so that when it is <Shift><Btn2> clicked, it will run LaTeX using a template file, run dvips to generate a PS file, run pstoepsi to generate a preview bitmap for the PS file, and finally import the EPS file to be part of an object. The 'spin' example shows how to specify a 30 frames spinning globe. When the globe is <Shift><Btn2> clicked, it starts to spin. Any subsequent button click or key click causes it to stop spinning. If this file is used as a tgif icon, when tgif is iconified, the icon spins. The file attribute icon_init_exec_obj= is used to specify that the globe should be executed.

  4. Add a few #ifdefs so that tgif can compile under linux (linux does not have SIG_BUS).

  5. Add a few #ifdefs so that tgif can compile under Omron Luna 88k. Thanks to Jim Blandy <> for the patch.

  6. Add -DXAPPLOADDIR_DEF and -DUSE_XT_INITIALIZE compile flags in the Imakefile. If -DXAPPLOADDIR_DEF is specified, $(XAPPLOADDIR)/Tgif is used as the resource file to be used in conjunction with the -DUSE_XAPPLRESDIR compile flag. If -DUSE_XT_INITIALIZE is specified (and -DUSE_XAPPLRESDIR is not specified), XtInitialize() is used to initialize the display. (These are hacks since tgif is Xlib based, while XAPPLOADDIR and XtInitialize() are Xt specific.) Thanks to Dave Yearke <> for the patch.
  7. Add a function, CenterAnEndPoint() to move an endpoint of a polyline object to the center of another object. The function is only accessible from the Arrange Menu.

  8. Add a compile option -DINVERT_CTM_BUG to accommodate certain PostScript utilities which fails when trying to invert non-invertible CTM (e.g., from Thanks to Danny Thomas <> for the suggestion.

  9. Add a shortcut command ToggleNamedAttrShown() for toggling the showing the name of an attribute. The syntax for such a shortcut is a bit different from the usual ones. Please see the SHORTCUT section in the man pages for details.

  10. Add X defaults, TGIFPATH and TGIFICON, to be used if the TGIFPATH and/or the TGIFICON environment variables are not set.

Return to Home Page Release Notes Index
William Chia-Wei Cheng (