\glossaryentry{3.03> =General:>Fixed some typographical errors that broke the \texttt  {awidthshow} command. Improved the scanner to handle multi-line \cs  {tex} commands. Fixed a bug in the \texttt  {replace} command which would break some legal EPS files.}{3}
\glossaryentry{3.02> =General:>Continued to improve the transformation code to make it more robust to rotations and odd scaling. Improved the range of strings accepted as PSfrag tags.}{3}
\glossaryentry{3.01> =General:>Expanded the PSfrag dictionary for Level 1 printers. Fixed bugs that produce incorrect output for rotated figures. Output should now print properly when combined with page-manipulation programs like \textsf  {psnup}.}{3}
\glossaryentry{3.0> =General:>Major rewrite. Elimination of the preprocessing step, deprecation of the \texttt  {tex} command. I've wiped most of the source-level change entries as a result.}{3}
\glossaryentry{2.0> =General:>Bug fixes}{3}
\glossaryentry{2.0> =General:>Bug fixes. Better support for \LaTeX  \ 2.09 \textsf  {PSfrag}\ files, including both naming schemes. Improved documentation and separated it from this file.}{3}
\glossaryentry{1.99> =General:>Taken over from Craig, completely overhauled for \LaTeXe  . Completely changed the placement code; baseline alignment added. Integrated \texttt  {psfrag} commands into the PostScript file. \textsf  {graphics} package used for portability across multiple DVI-to-PostScript packages. Improved ps2frag.ps file provides improved (correct) support for ashow, widthshow, awidthshow, and kshow.}{3}
\glossaryentry{1.1> =General:>Released version 1.1, adding support for ashow, widthshow, awidthshow, and kshow.}{3}
\glossaryentry{1.0> =General:>Released version 1.0.}{3}
\glossaryentry{3.01> =General:>Added the \cs  {AtBeginDocument} command to save some important global transformation information.}{3}
\glossaryentry{3.02> =General:>Deleted this \cs  {AtBeginDocument} info; see \cs  {pfg@orient}.}{3}
\glossaryentry{3.02>pfg@orient=\verb!*+\pfg@orient+:>Created. Added \textsf  {dvips} and \textsf  {textures} as ``$y$-reversers.''}{3}
\glossaryentry{3.01>Ginclude@eps=\verb!*+\Ginclude@eps+:>Added the \cs  {pfg@hideinit} functionality.}{4}
\glossaryentry{3.02>Ginclude@eps=\verb!*+\Ginclude@eps+:>Removed \cs  {pfg@hideinit}.}{4}
\glossaryentry{3.01>psfrag=\verb!*+\psfrag+:>Now changes every space in the tag text by its octal code. Some DVI to PS drivers were breaking the strings onto multiple lines; this should prevent that from happening.}{5}
\glossaryentry{3.01>psfrag=\verb!*+\psfrag+:>Removed octal code in favour of convert routine in the prologue}{5}
\glossaryentry{3.03>psfrag=\verb!*+\psfrag+:>Added another ``special'' character.}{5}
\glossaryentry{3.01>pfg@place=\verb!*+\pfg@place+:>Added some extra spaces in \cs  {pfg@align@} to encourage more benevlolent line-breaking by DVI to PS drivers.}{6}
\glossaryentry{3.01>pfg@hidestart=\verb!*+\pfg@hidestart+:>Moved the \textsf  {xdvi} stub to \cs  {pfg@hideinit}}{6}
\glossaryentry{3.02>pfg@hidestart=\verb!*+\pfg@hidestart+:>Moved it back.}{6}
\glossaryentry{3.02> =General:>Added code to insure that \texttt  {PSfragLib} and \texttt  {PSfrag} are stored in \texttt  {userdict}. Some cruel DVI to PostScript drivers try and force these into their own dictionary. Also moved \texttt  {PSfragDict} out of \texttt  {PSfragLib}.}{8}
\glossaryentry{3.01>SfragLib=\verb!*+PSfragLib+:>Fixed \texttt  {islev2}.}{8}
\glossaryentry{3.02>SfragLib=\verb!*+PSfragLib+:>Added \texttt  {readonly} to \texttt  {BD} to help insure that this dictionary isn't being trampled on.}{8}
\glossaryentry{3.02>SfragLib=\verb!*+PSfragLib+:>Added some abbreviations.}{8}
\glossaryentry{3.02>SfragLib=\verb!*+PSfragLib+:>Changed the names to be a tiny bit more descriptive, and added a couple.}{8}
\glossaryentry{3.02>SfragLib=\verb!*+PSfragLib+:>Added the \texttt  {readonly} commands.}{8}
\glossaryentry{3.02>egin=\verb!*+Begin+:>\texttt  {PSfragDict} now goes at the \emph  {bottom} of the read-write portion of the dictionary stack, to insure that it does not conflict with dictionary manipulation by the EPS file or the DVI to PS driver.}{9}
\glossaryentry{3.02>egin=\verb!*+Begin+:>Changes to account for transformation rearrangement; see \texttt  {/replace}.}{9}
\glossaryentry{3.02>nd=\verb!*+End+:>Changes to the dictionary placement as discussed in \texttt  {/Begin}.}{9}
\glossaryentry{3.02>lace=\verb!*+Place+:>Changes to account for transformation rearrangement; see \texttt  {/replace}.}{10}
\glossaryentry{3.01>eplace=\verb!*+replace+:>Modified this transformation to put the beginning of the text at the origin, and forced its width to be $\sim 5$ in. Some figures were using coordinate systems that were so ``large'' that they would break PostScript with ``limitcheck'' errors here.}{11}
\glossaryentry{3.01>eplace=\verb!*+replace+:>The added transformation is no longer ``slipped under'' the CTM, but now it is more properly appended. this should allow the replacements to move properly if the entire figure is rotated or transformed. This required changes throughout the code, but primarily here.}{11}
\glossaryentry{3.03>eplace=\verb!*+replace+:>Added a \texttt  {gsave}/\texttt  {grestore} pair around the bounding-box calculations. I thought I was being clever by avoiding it; but it wasn't infallible, so I was wrong.}{11}
\glossaryentry{3.02>eplace=\verb!*+replace+:>Now saves the current CTM here.}{11}
\glossaryentry{3.03>eplace=\verb!*+replace+:>The added transformation is no longer ``slipped under'' the CTM, but now it is more properly appended. this should allow the replacements to move properly if the entire figure is rotated or transformed. This required changes throughout the code, but primarily here.}{12}
\glossaryentry{3.03>aws=\verb!*+raws+:>Corrected typo for \texttt  {raws}.}{12}
\glossaryentry{3.02>ict=\verb!*+Dict+:>Made \texttt  {Dict} read-only to help track down problems.}{13}
\glossaryentry{3.03>ict=\verb!*+Dict+:>Corrected typo in \texttt  {awidthshow}.}{13}
\glossaryentry{3.03>pfg@find=\verb!*+\pfg@find+:>Find strings even if nested inside brace groups}{14}
