%% %% This is file `feynmf.sty', generated %% on <1994/7/28> with the docstrip utility (2.2h). %% %% The original source files were: %% %% feynmf.dtx (with options: `style') %% %% Copyright (C) 1989, 1990, 1992-1994 by Thorsten.Ohl@Physik.TH-Darmstadt.de %% %% This file is NOT the source for feynmf, because almost all comments %% have been stripped from it. It is NOT the preferred form of feynmf %% for making modifications to it. %% %% Therefore you can NOT redistribute and/or modify THIS file. You can %% however redistribute the complete source (feynmf.dtx and feynmf.ins) %% and/or modify it under the terms of the GNU General Public License as %% published by the Free Software Foundation; either version 2, or (at %% your option) any later version. %% %% Feynmf is distributed in the hope that it will be useful, but %% WITHOUT ANY WARRANTY; without even the implied warranty of %% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the %% GNU General Public License for more details. %% %% You should have received a copy of the GNU General Public License %% along with this program; if not, write to the Free Software %% Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% \CheckSum{425} %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \NeedsTeXFormat{LaTeX2e} {\def\RCS#1#2\endRCS{% \ifx$#1% \@RCS $#2 \endRCS \else \@RCS $*: #1#2$ \endRCS \fi}% \def\@RCS $#1: #2,v #3 #4 #5 #6$ \endRCS{% \gdef\filename{#2}% \gdef\fileversion{v#3}% \gdef\filedate{#4}% \gdef\docdate{#4}}% \RCS feynmf.dtx,v 1.5 1994/05/28 12:10:04 ohl Exp \endRCS}% \ProvidesPackage{feynmf}[\filedate\space LaTeX2e package] \typeout{Package: `feynmf' \fileversion\space <\filedate> (tho) PRELIMINARY TEST RELEASE} \wlog{English documentation \@spaces<\docdate> (tho)} \let\mdqrestore\relax \@ifundefined{mdqoff}{}{% \mdqoff \let\mdqrestore\mdqon} \newwrite\@outfmf \def\fmfcmd#1{% \immediate\write\@outfmf{#1}\ignorespaces} {\catcode`\%=11\gdef\p@rcent{%}} \edef\fmf@fileversion{\fileversion} \def\fmffile#1{% \def\thefmffile{#1}% \immediate\openout\@outfmf=\thefmffile.mf\relax \fmfcmd{\p@rcent\space \thefmffile.mf -- do not edit, % generated automatically by \jobname.tex^^J% input feynmf^^J% \p@rcent\space tracingonline:=tracingtitles:=1;^^J% require_RCS_revision "\expandafter\@gobble\fmf@fileversion";}% \batchmode \font\f@ynmf=\thefmffile \errorstopmode \ifx\f@ynmf\nullfont \def\f@ynmf{feynmf character:}% \typeout{% feynmf: File \thefmffile.tfm not found:^^J% feynmf: Process \thefmffile.mf with METAFONT and then % reprocess this file.}% \else \typeout{% feynmf: File \thefmffile.tfm found.^^J% feynmf: Nevertheless, if the picture has changed, % reprocess \thefmffile.mf.^^J% feynmf: If dimension have changed, reprocess \thefmffile.mf % and \jobname.tex.}% \fi \setcounter{fmfchar}{0}} \let\thefmffile\relax \newcounter{fmfchar} \def\endfmffile{% \fmfcmd{\p@rcent\space the end.^^J% end.^^J% endinput;}% \let\thefmffile\relax \immediate\closeout\@outfmf} {\catcode`\#=11\gdef\sh@rp{#}} \let\sharp\sh@rp \def\fmf@char#1#2{% \ifx\thefmffile\relax \errhelp={Outside a fmffile environment, I have no clue as to where^^J% the METAFONT commands should go. I will use fmfdeflt.mf^^J% for this character, but you'd better fix your code!} \errmessage{I detected a fmfchar environment outside of fmffile} \fmffile{fmfdeflt} \fi \stepcounter{fmfchar}% \fmfcmd{beginchar(\thefmfchar, #1*\the\unitlength\sh@rp, % #2*\the\unitlength\sh@rp, 0);^^J% "feynmf: \thefmfchar";}% \fmfcmd{LaTeX_unitlength:=\the\unitlength;}% \fmfinit \fmfpen{thin}} \def\fmfchar(#1,#2){% \fmf@char{#1}{#2}% {\f@ynmf \char\value{fmfchar}}% \ignorespaces} \def\endfmfchar{% \fmfposition \fmfdraw \fmfcmd{endchar;}} \@namedef{fmfchar*}(#1,#2){% \begin{picture}(#1,#2) \fmf@char{#1}{#2}% {\catcode`\%=14\relax \grepfile{% \thefmffile.\thefmfchar}{% \thefmffile.log}{% \thefmffile.t\thefmfchar}}% \put(0,0){{\f@ynmf \char\value{fmfchar}}}% \ignorespaces} \@namedef{endfmfchar*}{% \endfmfchar {\catcode`\%=14\relax \InputIfFileExists{\thefmffile.t\thefmfchar}{}{% \typeout{% feynmf: Label file \thefmffile.t\thefmfchar\space not found:^^J% feynmf: Process \thefmffile.mf with METAFONT and then % reprocess this file.}}}% \end{picture}} \def\fmfframe(#1,#2)(#3,#4)#5{% \leavevmode \hbox{\vbox{\vskip#2\unitlength\par \hbox{\hskip#1\unitlength#5\hskip#3\unitlength}\par \vskip#4\unitlength}}} \def\fmfpen#1{\fmfcmd{pickup pencircle scaled #1;}} \def\grepfile#1#2#3{% \begingroup \edef\pattern{\csname*grep*#1*\endcsname}% \immediate\openin\grep@infile #2\relax \ifeof\grep@infile \else \grep@outopenfalse \endlinechar=-1 \catcode`\\=12\relax \loop \read\grep@infile to \grep@lbuf \ifeof\grep@infile \grep@contfalse \else \grep@conttrue \ifx\grep@lbuf\empty \else \expandafter\grep@aline\grep@lbuf\sentinel \ifx\pattern\grep@tag \ifgrep@outopen \else \immediate\openout\grep@outfile #3\relax \immediate\write\grep@outfile{\p@rcent\space #3 % -- generated automatically from #2}% \immediate\write\grep@outfile{\p@rcent\space Think twice before editing THIS file!}% \grep@outopentrue \fi \immediate\write\grep@outfile{\grep@val}% \fi \fi \fi \ifgrep@cont \repeat \ifgrep@outopen \immediate\closeout\grep@outfile \fi \fi \immediate\closein\grep@infile \endgroup} \newread\grep@infile \newwrite\grep@outfile \newif\ifgrep@cont \newif\ifgrep@outopen \def\grep@aline#1#2\sentinel{% \ifx:#1% \grep@splitlbuf#2\sentinel \else \edef\grep@tag{\csname*grep*\endcsname}% \def\grep@val{}% \fi} \def\grep@splitlbuf#1:#2\sentinel{% \edef\grep@tag{\csname*grep*#1*\endcsname}% \def\grep@val{#2}} \def\fmfinit{\fmfcmd{vinit;}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\fmf#1#2{\fmfcmd{vconnect ("#1", #2);}} \def\fmfforce#1#2{\fmfcmd{vforce ((#1),#2);}} \def\fmfshift#1#2{\fmfcmd{vshift((#1),#2);}} \def\fmflabel#1#2{\fmfcmd{vlabel ("#1", #2);}} \def\fmfv#1#2{\fmfcmd{vvertex ("#1", #2);}} \def\fmfblob#1#2{\fmfcmd{vblob ((#1),#2);}} \def\fmfdot#1{\fmfcmd{vdot (#1);}} \def\fmfincoming#1{\fmfcmd{vincoming(#1);}} \def\fmfoutgoing#1{\fmfcmd{voutgoing(#1);}} \def\fmfsurround#1{\fmfcmd{vsurround(#1);}} \def\fmfincomingn#1#2{\fmfcmd{vincomingn(#1,#2);}} \def\fmfoutgoingn#1#2{\fmfcmd{voutgoingn(#1,#2);}} \def\fmfsurroundn#1#2{\fmfcmd{vsurroundn(#1,#2);}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\fmfposition{\fmfcmd{vposition;}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \def\fmfdraw{\fmfcmd{vdraw;}} \def\fmfL(#1,#2,#3)#4{\put(#1,#2){\makebox(0,0)[#3]{#4}}} \mdqrestore %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput %% %% End of file `feynmf.sty'.