lib/texinputs/isabelle.sty
author wenzelm
Mon, 21 Aug 2000 18:40:30 +0200
changeset 9669 542fb6c6c9b2
parent 9657 0a187a43ef21
child 9678 97bd508bcb63
permissions -rw-r--r--
added \isastyleminor;
more \isachars;
added \isadigit;
improved \isakeyword;
tuned;
     1 %%
     2 %% $Id$
     3 %%
     4 %% macros for Isabelle generated LaTeX output
     5 %%
     6 
     7 %%% Simple document preparation (based on theory token language)
     8 
     9 % isabelle environments
    10 
    11 \newcommand{\isastyle}{\small\tt\slshape}
    12 \newcommand{\isastyleminor}{\small\tt\slshape}
    13 \newcommand{\isastyletext}{\normalsize\rm}
    14 \newcommand{\isastyletxt}{\rm}
    15 \newcommand{\isastylecmt}{\rm}
    16 
    17 \newdimen\isa@parindent\newdimen\isa@parskip
    18 
    19 \newenvironment{isabelle}{%
    20 \isa@parindent\parindent\parindent0pt%
    21 \isa@parskip\parskip\parskip0pt%
    22 \isastyle}{}
    23 
    24 \newcommand{\isa}[1]{\emph{\isastyleminor #1}}
    25 
    26 \newcommand{\isanewline}{\mbox{}\\\mbox{}}
    27 \newcommand{\isadigit}[1]{#1}
    28 
    29 \chardef\isacharbang=`\!
    30 \chardef\isachardoublequote=`\"
    31 \chardef\isacharhash=`\#
    32 \chardef\isachardollar=`\$
    33 \chardef\isacharpercent=`\%
    34 \chardef\isacharampersand=`\&
    35 \chardef\isacharprime=`\'
    36 \chardef\isacharparenleft=`\(
    37 \chardef\isacharparenright=`\)
    38 \chardef\isacharasterisk=`\*
    39 \chardef\isacharplus=`\+
    40 \chardef\isacharcomma=`\,
    41 \chardef\isacharminus=`\-
    42 \chardef\isachardot=`\.
    43 \chardef\isacharslash=`\/
    44 \chardef\isacharcolon=`\:
    45 \chardef\isacharsemicolon=`\;
    46 \chardef\isacharless=`\<
    47 \chardef\isacharequal=`\=
    48 \chardef\isachargreater=`\>
    49 \chardef\isacharquery=`\?
    50 \chardef\isacharat=`\@
    51 \chardef\isacharbrackleft=`\[
    52 \chardef\isacharbackslash=`\\
    53 \chardef\isacharbrackright=`\]
    54 \chardef\isacharcircum=`\^
    55 \chardef\isacharunderscore=`\_
    56 \chardef\isacharbackquote=`\`
    57 \chardef\isacharbraceleft=`\{
    58 \chardef\isacharbar=`\|
    59 \chardef\isacharbraceright=`\}
    60 \chardef\isachartilde=`\~
    61 
    62 
    63 % keyword and section markup
    64 
    65 \newcommand{\isakeyword}[1]
    66 {\emph{\bf\def\isachardot{.}\def\isacharunderscore{-}%
    67 \def\isacharbraceleft{\{}\def\isacharbraceright{\}}#1}}
    68 \newcommand{\isacommand}[1]{\isakeyword{#1}}
    69 
    70 \newcommand{\isamarkupheader}[1]{\section{#1}}
    71 \newcommand{\isamarkupchapter}[1]{\chapter{#1}}
    72 \newcommand{\isamarkupsection}[1]{\section{#1}}
    73 \newcommand{\isamarkupsubsection}[1]{\subsection{#1}}
    74 \newcommand{\isamarkupsubsubsection}[1]{\subsubsection{#1}}
    75 \newcommand{\isamarkupsect}[1]{\section{#1}}
    76 \newcommand{\isamarkupsubsect}[1]{\subsection{#1}}
    77 \newcommand{\isamarkupsubsubsect}[1]{\subsubsection{#1}}
    78 
    79 \newenvironment{isapar}{\parindent\isa@parindent\parskip\isa@parskip\par\medskip}{\par\smallskip}
    80 \newenvironment{isamarkuptext}{\isastyletext\begin{isapar}}{\end{isapar}}
    81 \newenvironment{isamarkuptxt}{\isastyletxt\begin{isapar}}{\end{isapar}}
    82 \newcommand{\isamarkupcmt}[1]{{\isastylecmt--- #1}}
    83 
    84 
    85 % alternative styles -- default is "tt"
    86 
    87 \newcommand{\isabellestyle}{}
    88 \def\isabellestyle#1{\csname isabellestyle#1\endcsname}
    89 
    90 \newcommand{\isabellestyleit}{%
    91 \renewcommand{\isastyle}{\small\it}%
    92 \renewcommand{\isastyleminor}{\it}%
    93 %\renewcommand{\isadigit}[1]{\emph{$##1$}}
    94 \renewcommand{\isacharbang}{\emph{$!$}}%
    95 \renewcommand{\isachardoublequote}{}%
    96 \renewcommand{\isacharhash}{\emph{$\#$}}%
    97 \renewcommand{\isachardollar}{\emph{$\$$}}%
    98 \renewcommand{\isacharpercent}{\emph{$\%$}}%
    99 \renewcommand{\isacharampersand}{\emph{$\&$}}%
   100 \renewcommand{\isacharprime}{$\mskip2mu{'}\mskip-2mu$}%
   101 \renewcommand{\isacharparenleft}{\emph{$($}}%
   102 \renewcommand{\isacharparenright}{\emph{$)$}}%
   103 \renewcommand{\isacharasterisk}{\emph{$*$}}%
   104 \renewcommand{\isacharplus}{\emph{$+$}}%
   105 \renewcommand{\isacharcomma}{\emph{$\mathord,$}}%
   106 \renewcommand{\isacharminus}{\emph{$-$}}%
   107 \renewcommand{\isachardot}{\emph{$\mathord.$}}%
   108 \renewcommand{\isacharslash}{\emph{$/$}}%
   109 \renewcommand{\isacharcolon}{\emph{$\mathord:$}}%
   110 \renewcommand{\isacharsemicolon}{\emph{$\mathord;$}}%
   111 \renewcommand{\isacharless}{\emph{$<$}}%
   112 \renewcommand{\isacharequal}{\emph{$=$}}%
   113 \renewcommand{\isachargreater}{\emph{$>$}}%
   114 %\renewcommand{\isacharquery}{\emph{$\mathord?$}}%
   115 \renewcommand{\isacharat}{\emph{$@$}}%
   116 \renewcommand{\isacharbrackleft}{\emph{$[$}}%
   117 \renewcommand{\isacharbrackright}{\emph{$]$}}%
   118 \renewcommand{\isacharunderscore}{-}%
   119 \renewcommand{\isacharbraceleft}{\emph{$\{$}}%
   120 \renewcommand{\isacharbar}{\emph{$\mid$}}%
   121 \renewcommand{\isacharbraceright}{\emph{$\}$}}%
   122 }
   123 
   124 \newcommand{\isabellestylesl}{\isabellestyleit\renewcommand{\isastyle}{\small\slshape}}