From 01bcc21ef0b9d24777341435c9cd374b8bec277c Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 16 Oct 2006 22:41:24 +0000 Subject: add begriff to tpm-ctan-check, update it git-svn-id: svn://tug.org/texlive/trunk@2336 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/begriff/begriff.sty | 64 ++++++++++++++++++++----- 1 file changed, 52 insertions(+), 12 deletions(-) (limited to 'Master/texmf-dist/tex/latex/begriff') diff --git a/Master/texmf-dist/tex/latex/begriff/begriff.sty b/Master/texmf-dist/tex/latex/begriff/begriff.sty index 537907d088a..db4b0c036a9 100644 --- a/Master/texmf-dist/tex/latex/begriff/begriff.sty +++ b/Master/texmf-dist/tex/latex/begriff/begriff.sty @@ -1,4 +1,4 @@ -% begriff.sty - a LaTeX2e package for typesetting begriffsschrift +% begriffHeck.sty - a LaTeX2e package for typesetting begriffsschrift % Copyright (C) 2003 by Josh Parsons % @@ -17,31 +17,42 @@ % Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, % USA. +% Changes made in October 2004 by Richard Heck +% Purpose of changes: To make the format of the formulae closer to how +% they are set in Frege's published works. +% +% Minor changes by Josh Parsons to fix problem with linespacing (May 2005) + %%% identification \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{begriff} %%% initial code +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % thickness of lines \newlength{\BGthickness} \setlength{\BGthickness}{0.4pt} % additional length after a quantifier, conditional, negation, or assertion \newlength{\BGafterlen} -\setlength{\BGafterlen}{7pt} +\setlength{\BGafterlen}{2pt} % additional length before a quantifier, conditional, or negation \newlength{\BGbeforelen} -\setlength{\BGbeforelen}{5pt} +\setlength{\BGbeforelen}{2pt} % space inserted before a formula \newlength{\BGspace} \setlength{\BGspace}{3pt} % total width of diagram +% Heck (10/2004): Due to changes below, this is the total width of the DIAGRAM +% and does not include the width of the terminal formulae. In previous versions, +% it did include them. \newlength{\BGlinewidth} \setlength{\BGlinewidth}{\linewidth} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% options %\DeclareOption{nothanks}{ @@ -53,8 +64,9 @@ %%% package dependencies %%% main code -\typeout{Begriffsschrift: 15 Nov 2003} +\typeout{Begriffsschrift: 20 May 2005} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % variable-sized parenthesis \newcommand{\BGbracket}[1]{% \setbox0=\hbox{\ensuremath{#1}}% @@ -63,6 +75,7 @@ \left(\vbox to \dp0 {\vskip.5\baselineskip\box0\vss}\right)% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % generate a terminal node with fill-line to the left \newcommand{\BGterm}[1]{\unskip% \setbox0=\hbox{% @@ -71,13 +84,18 @@ \vrule height \BGthickness width \BGafterlen depth 0pt% \ensuremath{\hskip\BGspace #1}% }% -\addtolength{\BGlinewidth}{-\wd0}% +% Heck (10/2004): Removed the following line, so that the terminal formulae will +% be left-aligned, as in Frege's published works. +%\addtolength{\BGlinewidth}{-\wd0}% \vrule height \BGthickness width \BGlinewidth depth 0pt% \box0% \setlength{\BGlinewidth}{0pt}% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % box up some maths and subtract its width from linewidth +% Heck (10/2004): Because of the changes above, this should no longer be needed. +% It remains for compatibility with previous versions. \newcommand{\BGstem}[1]{\unskip% \setbox0=\hbox{% \setlength{\BGlinewidth}{0pt}% @@ -88,12 +106,13 @@ \hskip\BGspace% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % generate a conditional \BGconditional{antecedent}{consequent} \newcommand{\BGconditional}[2]{\unskip% \addtolength{\BGlinewidth}{-\BGbeforelen}% \setbox0=\hbox{% \addtolength{\BGlinewidth}{-\BGafterlen}% -\vrule height \baselineskip depth 0pt width 0pt% strut +\vrule height \baselineskip depth 3pt width 0pt% strut \vrule height \BGthickness width \BGafterlen depth 0pt% \ensuremath{\hskip\BGspace #1}% }% @@ -115,6 +134,7 @@ }% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % generate an assertion sign \newcommand{\BGassert}[0]{% \addtolength{\BGlinewidth}{-\BGafterlen}% @@ -124,6 +144,7 @@ \hskip \BGspace% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % generate a content stroke \newcommand{\BGcontent}[0]{% \addtolength{\BGlinewidth}{-\BGafterlen}% @@ -131,33 +152,52 @@ \hskip \BGspace% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % generate a negation \newcommand{\BGnot}[0]{\unskip% \addtolength{\BGlinewidth}{-\BGbeforelen}% \addtolength{\BGlinewidth}{-\BGafterlen}% \vrule width \BGbeforelen height \BGthickness depth 0pt% \kern-\BGthickness% -\vrule width \BGthickness height \BGthickness depth 5pt% +\vrule width \BGthickness height \BGthickness depth 3pt% \vrule depth 0pt height \BGthickness width \BGafterlen% \hskip \BGspace% } +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % generate a universal quantifier \newcommand{\BGquant}[1]{\unskip% \addtolength{\BGlinewidth}{-\BGbeforelen}% -\addtolength{\BGlinewidth}{-10pt}% +\addtolength{\BGlinewidth}{-8pt}% \addtolength{\BGlinewidth}{-\BGafterlen}% \hbox{% \vrule width \BGbeforelen height \BGthickness depth 0pt% \setlength{\unitlength}{1pt}% \kern-\BGthickness% -\begin{picture}(10,0)(0,0)% +\begin{picture}(8,0)(0,0)% \linethickness{\BGthickness}% -\qbezier(0,0)(5,-5)(10,0)% +\qbezier(0,0)(4,-4)(8,0)% \end{picture}% -\kern-10pt% -\vbox{\hbox to 10pt {\hskip1pt\hskip\BGthickness\hss$_{#1}$\hss}\vskip1pt}% +\kern-8pt% +% Heck (10/2004): Added "\mathfrak", since variables are always fraktur over quantifiers +\vbox{\hbox to 8pt {\hskip1pt\hskip\BGthickness\hss$_{\mathfrak{#1}}$\hss}\vskip1pt}% \vrule width \BGafterlen height \BGthickness depth 0pt% }% \hskip\BGspace% } + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Heck (10/2004): Convenience functions +% Heck: What I'd like to do is add another (optional) argument to +% \BGif, so that if it is p, the premise is treated as \BGterm; +% if it is c, the conculsion is; if it is d, both are. But this will +% do for now. +\newcommand{\BGif}[2]{\BGconditional{#1}{#2}} +% Treat premise as a terminal node +\newcommand{\BGifp}[2]{\BGconditional{\BGterm{#1}}{#2}} +% Treat conclusion as a terminal node +\newcommand{\BGifc}[2]{\BGconditional{#1}{\BGterm{#2}}} +% Treat both as terminal nodes +\newcommand{\BGifb}[2]{\BGconditional{\BGterm{#1}}{\BGterm{#2}}} +\newcommand{\BGneg}[0]{\BGnot} +\newcommand{\BGall}[1]{\BGquant{#1}} -- cgit v1.2.3