|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T v
Length: 4944 (0x1350)
Types: TextFile
Names: »verbdisp.tip«
└─⟦52210d11f⟧ Bits:30007239 EUUGD2: TeX 3 1992-12
└─⟦af5ba6c8e⟧ »unix3.0/DVIWARE.tar.Z«
└─⟦ca79c7339⟧
└─⟦this⟧ »DVIware/laser-setters/dvi-to-ps/TeXPS/doc/verbdisp.tip«
% This macro source file is from the four volume series
% "TeX in Practice" by Stephan v. Bechtolsheim, published
% 1990 by the Springer-Verlay, New York.
% Copyright 1990 Stephan v. Bechtolsheim.
% No warranty or liability is assumed.
% This macro may be copied freely if no fees other than
% media cost or shipping charges are charged and as long
% as this copyright and the following source code itself
% is not changed.
%
% Version 1.0
% Date: May 11, 1990
%
% This source code is documented in ?? ?? ??
\InputD{everypar.tip}
\InputD{futpar.tip}
\InputD{parin.tip}
\InputD{verb-bas.tip}
\InputD{testdef.tip}
\InputD{gobble.tip}
\InputD{loadedla.tip}
\newdimen\LeftSkipVerbatim \LeftSkipVerbatim = 0.3in
\def\VerbatimFont{\tt}
\newcount\VerbatimTab \VerbatimTab = 8
\newif\ifVerbLineNum \VerbLineNumtrue
\newskip\VskipVEnv \VskipVEnv = 5pt plus 2pt minus 1pt
\newif\ifCaretTab \CaretTabfalse
\newtoks\VerbatimTokBegin \VerbatimTokBegin = {}
\newtoks\VerbatimTokLine \VerbatimTokLine = {}
\newtoks\VerbatimTokEnd \VerbatimTokEnd = {}
\catcode`\@ = 11
\newdimen\@VerbatimLr
\newif\if@IgnoreFirstNewLine
\ifFormatIsLaTeX
\def\@VerbatimPar{\par\@@par}%
\def\@VerbatimNlf{\tiny}%
\@VerbatimLr = 1.5pt
\else
\def\@VerbatimPar{\par}%
\def\@VerbatimNlf{\tiny}%
\@VerbatimLr = 1.5pt
\fi
\newcount\@VerbatimLineNumber
\newif\if@VerbatimL
\newdimen\Verb@TabSize
\def\@VObeySpaces{%
\MakeActive{\ }%
\@@VObeySpaces
}
{\MakeActive{\ }\gdef\@@VObeySpaces{\def {\Verb@Space}}}
\def\Verb@Space{\ }
\def\@VObeyTabs{%
\MakeTabActive
\@@VObeyTabs
}
{
\MakeTabActive
\gdef\@@VObeyTabs{%
\def^^I{\Verb@Tab}%
}
}
\def\Verb@Tab{%
\leavevmode
\egroup
\dimen0 = \wd0
\divide\dimen0 by \Verb@TabSize
\multiply\dimen0 by \Verb@TabSize
\advance\dimen0 by \Verb@TabSize
\wd0 = \dimen0
\box0
\setbox 0 = \hbox\bgroup
}
\def\@VObeyEol{%
\MakeEolActive %
\@@VObeyEol
}
{
\MakeEolActive %
\gdef\@@VObeyEol{%
\let^^M = \Verb@Eol%
}%
}
\def\Verb@Eol{%
\if@IgnoreFirstNewLine
\else
\leavevmode
\egroup
\box 0
\endgraf
\penalty 1000 % Discourage page breaks in verbatim listings.
\fi
\@IgnoreFirstNewLinefalse
}
\def\@CaretToPrint{\char`\^}
\def\@VCaret{%
\MakeActive{\^}%
\@@VCaret
}
{
\MakeActive{\^}%
\gdef\@@VCaret{%
\def^{%
\futurelet\@VSymbol\@@VCaretTwo
}%
\def\@@VCaretTwo{%
\ifx\@VSymbol^\relax
\let\@VerbNext = \@@VCaretThree
\else
\@CaretToPrint
\let\@VerbNext = \relax
\fi
\@VerbNext
}%
\def\@@VCaretThree^{%
\futurelet\@VSymbol\@@VCaretFour
}%
\def\@@VCaretFour{%
\ifx\@VSymbol I\relax
\Verb@Tab
\else
\@CaretToPrint\@CaretToPrint\@VSymbol
\fi
\GobbleOne
}%
}%
}
\def\@StartVerbatim #1{%
\begingroup
\@VerbatimPar
\vskip\VskipVEnv
\setbox0 = \hbox{\VerbatimFont X}
\Verb@TabSize = \wd0
\multiply\Verb@TabSize by \VerbatimTab
\parskip = 0pt
\parindent = 0pt
\leftskip = \LeftSkipVerbatim
\rightskip = 0pt
\parfillskip = 0pt plus 1fil
\VerbatimFont
\if@VerbatimL \else
\global\@VerbatimLineNumber = 0
\fi
\global\@VerbatimLfalse
\ifnum #1=0
\@IgnoreFirstNewLinetrue
\else
\@IgnoreFirstNewLinefalse
\fi
\ifFormatIsLaTeX
\everypar = {\EveryParZ}%
\fi
\def\EveryParZ{%
\the\VerbatimTokLine
\global\advance\@VerbatimLineNumber by 1
\ifVerbLineNum
\raise \@VerbatimLr \hbox to 0pt{%
\hss
\@VerbatimNlf % Verbatim line number font.
\the\@VerbatimLineNumber
\hskip 10pt
}%
\fi
\setbox 0 = \hbox\bgroup
}%
\@MkOthers
\@VObeySpaces
\@VObeyTabs
\@VObeyEol
\ifCaretTab
\@VCaret
\fi
}
\def\@DoneVerbatim{%
\wlog{\string\@DoneVerbatim: it's being executed.}%
\endgroup
\vskip\VskipVEnv
\wlog{\string\IsParNext / @DoneVerbatim now.}%
\IsParNext
{\wlog{ABC-@}\SuppressNextParagraphIndentation}%
{\wlog{DEF-@}}%
}
\def\BeginVerbatim{%
\@StartVerbatim{0}%
\@BeginVerbatim
}
{
\catcode `| = 0 % | becomes escape character.
\catcode`\\ =12 % \ becomes regular character.
|gdef|@BeginVerbatim #1\EndVerbatim{%
#1%
|@DoneVerbatim
}
}
\def\BVerB{%
\@StartVerbatim{0}%
\@BVerB
}
{
\catcode `| = 0 % | becomes escape character.
\catcode`\\ =12 % \ becomes regular character.
|gdef|@BVerB #1\EVerB{%
#1%
|@DoneVerbatim
}
}
\def\AppendVerbatimL #1{%
\global\@VerbatimLtrue
\global\advance\@VerbatimLineNumber by #1
}
\def\StartVerbatimL #1{%
\global\@VerbatimLtrue
\global\@VerbatimLineNumber = #1
}
\newcount\@SaveVerbatimLineNumber
\def\PushVerbatimL{%
\global\@SaveVerbatimLineNumber = \@VerbatimLineNumber
\global\VerbLineNumfalse
}
\def\PopVerbatimL{%
\global \@VerbatimLineNumber = \@SaveVerbatimLineNumber
\global\VerbLineNumtrue
}
\catcode`\@ = 12