blob: 3ba1f240e20efcc25af65af71ce1ac8fb7fc1d86 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
% The following package was originally pinched (with permission) from
% similar makros in symbols.tex, written by Scott Pakin <pakin@uiuc.edu>.
% 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 <oberdiek@uni-freiburg.de>
% and
% Rolf Niepraschk <rolf.niepraschk@ptb.de>
% in May 2003. Thank you!
%
% Copyright 2003 Juergen Goebel, <juergen.goebel@sysde.eads.net>
% 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
|