summaryrefslogtreecommitdiff
path: root/web/matlabweb/swebbind.sty
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /web/matlabweb/swebbind.sty
Initial commit
Diffstat (limited to 'web/matlabweb/swebbind.sty')
-rw-r--r--web/matlabweb/swebbind.sty246
1 files changed, 246 insertions, 0 deletions
diff --git a/web/matlabweb/swebbind.sty b/web/matlabweb/swebbind.sty
new file mode 100644
index 0000000000..2ec16f246c
--- /dev/null
+++ b/web/matlabweb/swebbind.sty
@@ -0,0 +1,246 @@
+%%
+%% This is file `swebbind.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% webfiles.dtx (with options: `spider')
+%% Package for inclusion of CWEB and Spidery WEB programs in
+%% LaTeX Documents.
+%%
+%% $Id: webfiles.dtx,v 1.39 1999/05/26 12:40:06 potse Exp $
+%%
+\catcode`\@=11
+\chardef\xwebCatUsCode=\catcode`\_ % top level macro file!
+\catcode`\_=11 % Catcode letter
+\chardef\xwebCatEscape=0
+\chardef\xwebCatOpen=1
+\chardef\xwebCatClose=2
+\chardef\xwebCatIgnore=9
+\chardef\xwebCatLetter=11
+\chardef\xwebCatOther=12
+\chardef\xwebCatActive=13
+\catcode`\_=\xwebCatLetter
+\catcode`\@=\xwebCatLetter
+\let\amp\& % ampersand
+\let\SS\S % section sign
+\let\PP\P % paragraph sign
+\def\N#1.#2.{%
+ \ifon\end{xwebModule}\fi % webfiles
+ \global\xwebGroupLevel 0% default value for group level
+ \xweb_headcheck#2\xweb_headcheck % spider: get group level and title
+ {\let\*=\empty%
+ \xdef\xweb_secno{#1}% webfiles: get the section number
+ }%
+ \message \expandafter{*\xweb_secno}%
+ \xweb_PrepareSection{#1}%
+ \ifon\begin{xwebModule}{\bf\xweb_ModTitle.}%
+ % \xweb_ModTitle is generated by \xweb_headcheck.
+ %\hskip 1em plus.1em minus.1em%
+ \xweb_SpiderLopEntry{\xwebGroupLevel}%
+}
+\def\xweb_SpiderLopEntry#1{%
+ \ifnum\c@xwebLopDepth > \xwebGroupLevel
+ \addcontentsline{lop}{starred}{%
+ \protect\global\xwebGroupLevel #1 \thexwebModule.~\xweb_ModTitle}%
+ { \let\protect\@unexpandable@protect
+ \edef\next{\write\xweb_cont{%
+ \ZZ{\xweb_ModTitle}{\the\xwebGroupLevel}%
+ {\xweb_secno}{\noexpand\thepage}}}%
+ \next
+ }% write "\ZZ{title}{depth}{sec}{page}" to .con file
+ \fi
+ \ifnum\c@xwebOutlineDepth > \xwebGroupLevel
+ \xwebPDFOutline{\xweb_secno}{\xweb_ModTitle}% args: nr, title
+ \fi}
+\newif\ifxweb_cancel\xweb_canceltrue
+\def\xweb_ifnextchar#1#2#3{\let\@tempe=#1\def\@tempa{#2}\def\@tempb{#3}%
+ \xweb_ifnch}
+\def\xweb_ifnch{%
+ \ifx \@tempc \@tempe\let\@tempd\@tempa
+ \else\let\@tempd\@tempb\fi
+ \@tempd}
+\def\xweb_makethechar#1{\let\@tempc=#1}
+
+\def\xweb_headcheck#1#2\xweb_headcheck{%
+ \xweb_makethechar{#1}%
+ \def\theskipper{\vskip 3pt}%
+ % extra skip before new starred module
+ \def\xweb_ModTitle{{#2}}%
+ \xweb_ifnextchar={% % @*= title.
+ \global\xwebGroupLevel 0% webfiles
+ \ifnum \xwebGroupLevel<\c@xwebSecNoEject
+ \def\theskipper{\xwebMainSecSkip}%
+ \fi
+ \xweb_canceltrue
+ }{\xweb_ifnextchar1{% % @*1 title.
+ \global\xwebGroupLevel 1% webfiles
+ \xweb_cancelfalse
+ \ifnum \xwebGroupLevel<\c@xwebSecNoEject
+ \def\theskipper{\xwebMainSecSkip}%
+ \fi
+ }{\xweb_ifnextchar2{% % @*2 title.
+ \global\xwebGroupLevel 2% webfiles
+ \xweb_cancelfalse
+ }{\xweb_ifnextchar3{% % @*3 title.
+ \global\xwebGroupLevel 3% webfiles
+ \xweb_cancelfalse
+ \ifnum \xwebGroupLevel<\c@xwebSecNoEject
+ \def\theskipper{\xwebMainSecSkip}%
+ \fi
+ }{\xweb_ifnextchar4{% % @*4 title.
+ \global\xwebGroupLevel 4% webfiles
+ \xweb_cancelfalse
+ }{% else % @* title.
+ \global\xwebGroupLevel 0% webfiles
+ \ifxweb_cancel\else
+ \ifnum \xwebGroupLevel<\c@xwebSecNoEject
+ \def\theskipper{\xwebMainSecSkip}%
+ \fi
+ \fi
+ \xweb_cancelfalse
+ \def\xweb_ModTitle{#1{#2}}%
+ }}}}}%
+ \theskipper
+}
+\def\CD#1\DC{#1}
+\def\P{\B}
+\def\xweb_CweaveBindings{%
+ \ifx \xweb_UserBindings\relax
+ \xweb_rebind
+ % indentation and paragraph layout
+ \xweb_break \0% % SPIDER
+ \xweb_IncrIndent \1%
+ \xweb_DecrIndent \2%
+ \xweb_ExprBreak \3%
+ \xweb_backup \4%
+ \xweb_OptBreak \5%
+ \xweb_break \6%
+ \xweb_BigBreak \7%
+ \xweb_noindent \8%
+ % C/C++ tokens
+ \xwebRel \?%
+ \xwebAddress \AND
+ \xwebComplement \CM
+ \xwebScope \DC
+ \xwebEquiv \S % SPIDER
+ \xwebGe \G
+ \xwebRightShift \GG
+ \xwebNe \I
+ \xwebAssign \K
+ \xwebLeftShift \LL
+ \xwebMod \MOD
+ \xwebNull \NULL
+ \xwebNot \R
+ \xwebBinOr \OR
+ \xwebMemberRef \PA
+ \xwebThis \this
+ \xwebOr \V
+ \xwebAnd \W
+ \xwebXor \XOR
+ \xwebLE \L % SPIDER
+ \xwebPointer \MG
+ \xwebPointerMemberRef \MGA
+ \xwebDecr \MM
+ \xwebIncr \PP
+ % more tokens
+ \xwebId \\%
+ \xwebIdLetter \|%
+ \xwebRes \&%
+ \xwebString \.% %% ( ...Emacs...
+ \xwebStringBreak \)%
+ \xwebNumber \O % SPIDER
+ \xwebCombinedOp \MRL
+ % goes to TeX state
+ \xwebComment \C
+ \xwebCxxComment \SHC
+ \xwebRefName \X
+ \xwebSpiderOutputFileName \XF
+ % CWEB tokens
+ \xwebMacrosHere \ATH
+ \xwebDefine \D
+ \xwebFormat \F
+ \xwebIdCat \J
+ \xwebVerbString \= % SPIDER
+ % cross reference tags
+ \xwebChangeFlag \*%
+ \xwebCRAlso \A
+ \xwebCRsAlso \As
+ \xwebCRCite \Q
+ \xwebCRsCite \Qs
+ \xwebCRUse \U
+ \xwebCRsUse \Us
+ \xwebCREt \ET
+ \xwebCRsEt \ETs
+ % finish the list
+ \stop\stop
+ \def\xweb_UserBindings{%
+ \xweb_RestoreBindings
+ \let\xweb_UserBindings\relax
+ }%
+ \fi
+ }
+\def\M#1.{%
+ \ifon\end{xwebModule}\fi
+ \xweb_PrepareSection{#1}%
+ \ifon\begin{xwebModule}
+ \ifnum\c@xwebLopDepth>9
+ \addcontentsline{lop}{xwebsection}{%
+ \protect\global\xwebGroupLevel 4 \thexwebModule.}%
+ \edef\next{\write\xweb_cont{\ZZ{}{4}{\xweb_secno}%
+ {\thepage}}}\next % \ZZ{title}{depth}{sec}{page}%
+ { \let\protect\@unexpandable@protect
+ \edef\next{\write\xweb_cont{%
+ \ZZ{}{4}{\xweb_secno}{\thepage}}}%
+ \next
+ }% write "\ZZ{title}{depth}{sec}{page}" to .con file
+ \fi
+ }
+\def\inx{
+ \ifxwebIndex
+ \xweb_SetupIndex
+ \def\:{\I}
+ \else
+ \def\:##1.{} % gobble \:\\{foo} 1, 2, 3.
+ \fi
+}
+\def\fin{
+ \ifxwebIndex
+ \xweb_FinishIndex
+ \fi
+ \ifxwebRef
+ \xweb_SetupReflist
+ \def\:{\I}
+ \else
+ \def\:{}
+ \def\XF##1\XF{}
+ \def\X##1\X{}
+ \def\U##1.{}
+ \fi
+}
+\def\con{
+ \ifxwebRef
+ \endgroup
+ \fi
+}
+\def\xwebComment#1{%
+ \5% % 0.5em will be discarded on line break
+ \hskip 1.5em
+ \commentbegin%
+ {\xweb_tex
+ \xwebCommentHook
+ #1%
+ }%
+ \commentend%
+ }
+\let\xwebCommentHook\relax
+\let\xwebCxxComment\xwebComment
+\def\xwebDefine{\xweb_macro{define}}
+\def\xwebFormat\\#1\\#2\par{\ifxwebHideFormats\else
+ \4\xweb_macro{format}\\{#1} \\{#2}\par\fi}
+\def\xwebSpiderOutputFileName#1:#2\XF{\xwebRefName{#1}:\.{#2}\X}
+\catcode`\_=\xwebCatUsCode
+\catcode`\@=\xwebCatOther
+\endinput
+%%
+%% End of file `swebbind.sty'.