From 9f5934e03ecee92af99a835dbc6249e0c18d83c6 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 13 Jan 2006 00:05:59 +0000 Subject: savesym git-svn-id: svn://tug.org/texlive/trunk@1294 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/savesym/savesym.sty | 43 +++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/savesym/savesym.sty (limited to 'Master/texmf-dist/tex/latex/savesym') diff --git a/Master/texmf-dist/tex/latex/savesym/savesym.sty b/Master/texmf-dist/tex/latex/savesym/savesym.sty new file mode 100644 index 00000000000..3ba1f240e20 --- /dev/null +++ b/Master/texmf-dist/tex/latex/savesym/savesym.sty @@ -0,0 +1,43 @@ +% The following package was originally pinched (with permission) from +% similar makros in symbols.tex, written by Scott Pakin . +% The following explanation was also taken from symbols.tex. +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% There are a number of symbols (e.g., \Square) that are defined by % +% multiple packages. In order to typeset all the variants in this % +% document, we have to give glyph a unique name. To do that, we define % +% \savesymbol{XXX}, which renames a symbol from \XXX to \origXXX, and % +% \restoresymbols{yyy}{XXX}, which renames \origXXX back to \XXX and % +% defines a new command, \yyyXXX, which corresponds to the most recently % +% loaded version of \XXX. % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% The implementation of \savesymbol and \restoresymbol was changed by +% Heiko Oberdiek +% and +% Rolf Niepraschk +% in May 2003. Thank you! +% +% Copyright 2003 Juergen Goebel, +% distributable under the LPPL + +\NeedsTeXFormat{LaTeX2e} \ProvidesPackage{savesymbol}[2003/06/01 +v1.1 Saves and restores symbols] + +% Save a symbol that we know is going to get redefined. +\newcommand*\savesymbol[1]{% + \expandafter\let\csname orig#1\expandafter\endcsname\csname#1\endcsname + \expandafter\let\csname #1\endcsname\relax +} + +% Restore a previously saved symbol, and rename the current one. +\newcommand*\restoresymbol[2]{% + \expandafter\global\expandafter\let\csname#1#2\expandafter\endcsname% + \csname#2\endcsname + \expandafter\global\expandafter\let\csname#2\expandafter\endcsname% + \csname orig#2\endcsname +} + +\endinput + +% EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF EOF -- cgit v1.2.3