summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/syllogism
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 /macros/latex/contrib/syllogism
Initial commit
Diffstat (limited to 'macros/latex/contrib/syllogism')
-rw-r--r--macros/latex/contrib/syllogism/Examples.pdfbin0 -> 130736 bytes
-rw-r--r--macros/latex/contrib/syllogism/Examples.tex49
-rw-r--r--macros/latex/contrib/syllogism/README7
-rw-r--r--macros/latex/contrib/syllogism/syllogism.pdfbin0 -> 236203 bytes
-rw-r--r--macros/latex/contrib/syllogism/syllogism.sty321
-rw-r--r--macros/latex/contrib/syllogism/syllogism.tex238
6 files changed, 615 insertions, 0 deletions
diff --git a/macros/latex/contrib/syllogism/Examples.pdf b/macros/latex/contrib/syllogism/Examples.pdf
new file mode 100644
index 0000000000..70b3ab0f7f
--- /dev/null
+++ b/macros/latex/contrib/syllogism/Examples.pdf
Binary files differ
diff --git a/macros/latex/contrib/syllogism/Examples.tex b/macros/latex/contrib/syllogism/Examples.tex
new file mode 100644
index 0000000000..d9443cadcb
--- /dev/null
+++ b/macros/latex/contrib/syllogism/Examples.tex
@@ -0,0 +1,49 @@
+\documentclass[letterpaper,
+ 10pt,
+ ]{article}
+
+
+\usepackage[T1]{fontenc}
+\usepackage[english]{babel}
+\usepackage{xcolor}
+
+\usepackage{syllogism}
+
+% . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
+\colorlet{sred}{red!60!black}
+\newcommand{\syllp}{\texttt{\color{sred}syllogism}\xspace}
+\colorlet{comcol}{green!45!black}
+\newcommand{\comm}[1]{\texttt{\color{comcol}\textbackslash{}#1}\xspace} % commands
+
+% . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
+
+\title{Examples for the \syllp package}
+\author{(c) 2007--2008 \textsc{Nicolas Vaughan}\\ \\
+ Report bugs and submit questions to:\\
+ \texttt{nivaca@gmail.com}
+ }
+\date{Oct. 10, 2008}
+
+
+\begin{document}% =============================================================
+\setlength{\parindent}{0em}
+\maketitle
+
+\def\preA{All men except Socrates are able to laugh}
+\def\preB{Socrates is a man}
+\def\Conc{Socrates is not able to laugh}
+
+
+\comm{syllog} example:
+\syllog{\preA}{\preB}{\Conc}
+
+\comm{syllogC} example:
+\syllogC{\preA}{\preB}{\Conc}
+
+\comm{syllogTA} example:
+\syllogTA{\preA}{\preB}{\Conc}
+
+\comm{syllogTAC} example:
+\syllogTAC{\preA}{\preB}{\Conc}
+
+\end{document}% ============================================================= \ No newline at end of file
diff --git a/macros/latex/contrib/syllogism/README b/macros/latex/contrib/syllogism/README
new file mode 100644
index 0000000000..e99f0ecdf2
--- /dev/null
+++ b/macros/latex/contrib/syllogism/README
@@ -0,0 +1,7 @@
+This package provides a simple way for neatly typesetting syllogisms and
+syllogistic-like arguments, composed of two premisses and a conclusion.
+It is fully configurable, allowing the user to tweak the various distances,
+line widths, and other options.
+
+Author: Nicolas Vaughan
+License: LaTeX Project Public License
diff --git a/macros/latex/contrib/syllogism/syllogism.pdf b/macros/latex/contrib/syllogism/syllogism.pdf
new file mode 100644
index 0000000000..90bad3b9a4
--- /dev/null
+++ b/macros/latex/contrib/syllogism/syllogism.pdf
Binary files differ
diff --git a/macros/latex/contrib/syllogism/syllogism.sty b/macros/latex/contrib/syllogism/syllogism.sty
new file mode 100644
index 0000000000..f12928789e
--- /dev/null
+++ b/macros/latex/contrib/syllogism/syllogism.sty
@@ -0,0 +1,321 @@
+%% Copyright 2008 by Nicolas Vaughan
+%% This program can be redistributed and/or modified under the terms
+%% of the LaTeX Project Public License Distributed from CTAN
+%% archives in directory macros/latex/base/lppl.txt; either
+%% version 1 of the License, or any later version.
+%% Author: Nicolas Vaughan
+%% e-mail: nivaca@gmail.com
+%% status: supported
+%% filedate 25/10/2008
+%
+\NeedsTeXFormat{LaTeX2e}
+\def\filedate{25/10/2008}
+\def\fileversion{v1.2}
+\typeout{Package syllogism \fileversion\space<\filedate>.}
+%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{syllogism}[\filedate\space\fileversion]
+\RequirePackage{calc}
+\RequirePackage{amssymb}
+\RequirePackage{ifthen}
+\RequirePackage{xspace}
+%
+\newlength{\SY@LenPA} % Length of longest premiss
+\newlength{\SY@LenPB} % Length of shortest premiss
+\newlength{\SY@LenC} % Length of the conclusion
+\newlength{\SY@LenLab} % Length of the label
+\newlength{\SY@LenRule} % Length of rule
+\newlength{\SY@HiRule} % `Height' of rule
+%
+\newlength{\SY@LenAdjRule} % Adjust rule separation
+\newlength{\SY@LenSepA} % Separation above syllogism
+\newlength{\SY@LenSepB} % Separation below syllogism
+%
+\newlength{\SY@DeltaC} % Added to rule in case the longest it the conclusion
+\newlength{\SY@SpLabel} % Hspace between label and syllogism
+\newlength{\SY@SpConEG} % Hspace between conclusion and Ergo-Sign
+\newlength{\SY@Pre} % Hspace between left margin and label
+\newlength{\SY@LenBefSyl} % Stores the total length before the premisses
+\newlength{\SY@availSpace} % Stores the available width for premisses
+\newlength{\SY@maxPLen} % Length of widest premiss or conclusion
+\newlength{\SY@tempindent}
+\newif\if@SYParam\@SYParamfalse % Boolean for optional argument
+\newif\if@SYpCtooW\@SYpCtooWfalse % If the conclusion is too wide
+%
+%%%%%%%%%%%%%%%%%%%%%%%% Defaults %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\setlength{\SY@LenPA}{\z@}% Used to store the length of 1st premiss
+\setlength{\SY@LenPB}{\z@}% Used to store the length of 2nd premiss
+\setlength{\SY@LenC}{\z@}% Used to store the length of conclusion
+\setlength{\SY@maxPLen}{\z@} % Used to store the available length
+\setlength{\SY@LenSepA}{\baselineskip}% V-space before syllogism
+\setlength{\SY@LenSepB}{\baselineskip}% V-space after syllogism
+\setlength{\SY@HiRule}{.3pt}% `Height' of the rule
+%
+\setlength{\SY@LenAdjRule}{-1ex}% Adjust height of rule
+%
+\setlength{\SY@DeltaC}{1ex}
+\setlength{\SY@SpLabel}{1em}
+\setlength{\SY@Pre}{2em}
+\setlength{\SY@SpConEG}{2em}
+%
+\def\SY@PuncPA{;} % Punctuation after first premiss
+\def\SY@PuncPB{.} % Punctuation after first premiss
+\def\SY@PuncC{.} % Punctuation after conclusion
+\def\SY@ErgoSign{$\therefore$} % three-dot sign after conclusion (needs amssymb)
+%
+\newcounter{c:syl} % Counter of syllogisms, if required
+\setcounter{c:syl}{1}
+\newcommand{\syl}{(S\arabic{c:syl})\xspace}
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%% Package Options %%%%%%%%%%%%%%%%%%%%%%%%%%
+\DeclareOption{spanish}{%
+ \def\SY@Sed{pero\ } % Syncategorema before second premiss
+ \def\SY@Ergo{Por lo tanto,\ } % Syncategorema before conclusion
+ }
+\DeclareOption{english}{%
+ \def\SY@Sed{but\ } % Syncategorema before second premiss
+ \def\SY@Ergo{Therefore\ } % Syncategorema before conclusion
+ }
+\DeclareOption{latin1}{%
+ \def\SY@Sed{sed\ } % Syncategorema before second premiss
+ \def\SY@Ergo{Ergo\ } % Syncategorema before conclusion
+ }
+\DeclareOption{latin2}{%
+ \def\SY@Sed{sed\ } % Syncategorema before second premiss
+ \def\SY@Ergo{Igitur\ } % Syncategorema before conclusion
+ }
+\ExecuteOptions{english}% Default
+\ProcessOptions*
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Macros %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\setpresyl}% Command for changing h-space before the label
+ [1]{\setlength{\SY@Pre}{#1}}
+%
+\newcommand{\setsyllabel}% Command for changing h-space after the label
+ [1]{\setlength{\SY@SpLabel}{#1}}
+%
+\newcommand{\setsylrh}% Command for changing the `height' the the rule
+ [1]{\setlength{\SY@HiRule}{#1}}
+%
+\newcommand{\setsylsepa}% Command for changing v-space before the syl.
+ [1]{\setlength{\SY@LenSepA}{#1}}
+%
+\newcommand{\setsylsepb}% Command changing v-space after the syl.
+ [1]{\setlength{\SY@LenSepB}{#1}}
+%
+\newcommand{\setsylsep}% Command for changing BOTH \SY@LenSepA and \SY@LenSepB
+ [1]{\setlength{\SY@LenSepA}{#1}%
+ \setlength{\SY@LenSepB}{#1}}
+%
+%
+\newcommand{\setsylergo}%
+ [1]{\def\SY@Ergo{#1\ }}
+%
+\newcommand{\setsylsed}%
+ [1]{\def\SY@Sed{#1\ }}
+%
+\newcommand{\setsylpuncpa}%
+ [1]{\def\SY@PuncPA{#1}}
+%
+\newcommand{\setsylpuncpb}%
+ [1]{\def\SY@PuncPB{#1}}
+%
+\newcommand{\setsylpuncc}%
+ [1]{\def\SY@PuncC{#1}}
+%
+\newcommand{\setsylergosign}%
+ [1]{\def\SY@ErgoSign{#1}}
+%
+\newcommand{\@SYRestoreBooleans}{%
+ \@SYParamfalse
+ \@SYpCtooWfalse
+ }
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Basic syllogism %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def\syllog{%
+ \@ifnextchar[%]
+ {\@SYParamtrue\@syllog}
+ {\@syllog[]}}
+\def\@syllog[#1]#2#3#4{%
+ \setlength{\SY@tempindent}{\parindent}%
+ \parindent\z@%
+ %
+ \settowidth{\SY@LenPA}{#2}
+ \settowidth{\SY@LenPB}{#3}
+ \settowidth{\SY@LenC}{#4}
+ \addtolength{\SY@LenC}{\widthof{\SY@ErgoSign}}%
+ \addtolength{\SY@LenC}{\SY@SpConEG}%
+ %
+ \if@SYParam% If optional parameter is provided...
+ \setlength{\SY@LenLab}{\widthof{#1}}%
+ \setlength{\SY@LenBefSyl}{\SY@Pre}%
+ \addtolength{\SY@LenBefSyl}{\SY@LenLab}%
+ \addtolength{\SY@LenBefSyl}{\SY@SpLabel}%
+ \else%
+ \setlength{\SY@LenBefSyl}{\SY@Pre}%
+ \fi%
+ %
+ \setlength{\SY@availSpace}{\textwidth-\SY@LenBefSyl}
+ %
+ % Algorithm to check longest proposition -----------------------------
+ \ifdim\SY@LenPA>\SY@availSpace%
+ \setlength{\SY@LenPA}{\textwidth-\SY@LenBefSyl}%
+ \fi
+ \ifdim\SY@LenPB>\SY@availSpace%
+ \setlength{\SY@LenPB}{\textwidth-\SY@LenBefSyl}%
+ \fi%
+ \ifdim\SY@LenC>\SY@availSpace%
+ \setlength{\SY@LenC}{\textwidth-\SY@LenBefSyl}%
+ \fi%
+ %
+ % Define the propositions -----------------------------------------------
+ \def\@SYLpropA{#2}%
+ \def\@SYLpropB{#3\SY@PuncPB}%
+ \def\@SYLpropC{#4\hspace{\SY@SpConEG}\SY@ErgoSign}%
+ %
+ \if@SYpCtooW
+ \relax
+ \else
+ \addtolength{\SY@LenC}{\SY@DeltaC}
+ \fi
+ % Set the rule's length ----------------------------------------------
+ \setlength{\SY@LenRule}{%
+ \maxof{\maxof{\maxof{\SY@LenPA}{\SY@LenPB}}{\maxof{\SY@LenPA}{\SY@LenC}}}%
+ {\maxof{\SY@LenPB}{\SY@LenC}}%
+ }%
+ %
+ % Construction of the Syllogism ----------------------------------------
+ \par\vspace{\SY@LenSepA}% V-space before the syllogism
+ \if@SYParam% Conditional H-space before syllogism
+ \hspace{\SY@Pre}#1\hspace{\SY@SpLabel}%
+ \else%
+ \hspace{\SY@Pre}%
+ \fi%
+ %
+ \begin{minipage}{\SY@LenRule}
+ \begin{list}{}
+ {%
+ \setlength{\parsep}{\z@}
+ \setlength{\itemsep}{\z@}
+ \addtolength{\leftmargin}{-1.5em}
+ \setlength{\itemindent}{-1ex}
+ \setlength{\listparindent}{\itemindent}
+ }
+ \item \@SYLpropA
+ \item \@SYLpropB%
+ \vspace*{\SY@LenAdjRule}
+ \item \rule{\SY@LenRule}{\SY@HiRule}
+ \item \@SYLpropC
+ \end{list}
+ \end{minipage}
+ \par\vspace{\SY@LenSepB}% V-space after the syllogism
+ %
+ \setlength{\parindent}{\SY@tempindent}% Restore default indent
+ \@SYRestoreBooleans% Restore booleans
+ }%
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%% Basic syllogism with counter %%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\syllogC}[3]{%
+ \syllog[\syl]{#1}{#2}{#3}
+ \stepcounter{c:syl}%
+ }%
+
+%%%%%%%%%%%%%%%%%%%%%%%%% Syllogism with text added %%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\def\syllogTA{%
+ \@ifnextchar[%]
+ {\@SYParamtrue\@syllogTA}
+ {\@syllogTA[]}}
+\def\@syllogTA[#1]#2#3#4{%
+ \setlength{\SY@tempindent}{\parindent}%
+ \parindent\z@%
+ %
+ \settowidth{\SY@LenPA}{#2}
+ \addtolength{\SY@LenPA}{\widthof{\SY@PuncPA}}
+ \settowidth{\SY@LenPB}{#3}
+ \addtolength{\SY@LenPB}{\widthof{\SY@Sed}}
+ \addtolength{\SY@LenPB}{\widthof{\SY@PuncPB}}
+ \settowidth{\SY@LenC}{#4}
+ \addtolength{\SY@LenC}{\widthof{\SY@Ergo}}
+ \addtolength{\SY@LenC}{\widthof{\SY@PuncC}}
+ \addtolength{\SY@LenC}{\widthof{\SY@ErgoSign}}
+ \addtolength{\SY@LenC}{\SY@SpConEG}
+ %
+ \if@SYParam% If optional parameter is provided...
+ \setlength{\SY@LenLab}{\widthof{#1}}%
+ \setlength{\SY@LenBefSyl}{\SY@Pre}%
+ \addtolength{\SY@LenBefSyl}{\SY@LenLab}%
+ \addtolength{\SY@LenBefSyl}{\SY@SpLabel}%
+ \else%
+ \setlength{\SY@LenBefSyl}{\SY@Pre}%
+ \fi%
+ %
+ %
+ \setlength{\SY@availSpace}{\textwidth}
+ \advance\SY@availSpace -\SY@LenBefSyl
+ \advance\SY@availSpace -1.3ex
+ %
+ % Algorithm to check longest proposition -----------------------------
+ \ifdim\SY@LenPA>\SY@availSpace
+ \setlength{\SY@LenPA}{\textwidth - \SY@LenBefSyl}
+ \fi
+ \ifdim\SY@LenPB>\SY@availSpace
+ \setlength{\SY@LenPB}{\textwidth - \SY@LenBefSyl}
+ \fi
+ % Is the conclusion too wide? -----------------------------------------
+ \ifdim\SY@LenC>\SY@availSpace
+ \setlength{\SY@LenC}{\SY@availSpace}
+ \@SYpCtooWtrue
+ \else
+ \@SYpCtooWfalse
+ \fi%
+ % Define the propositions -----------------------------------------------
+ \def\@SYLpropA{#2\SY@PuncPA}
+ \def\@SYLpropB{\SY@Sed#3\SY@PuncPB}
+ \def\@SYLpropC{\SY@Ergo#4\SY@PuncC\hspace{\SY@SpConEG}\SY@ErgoSign}
+ %
+ \if@SYpCtooW
+ \relax
+ \else
+ \addtolength{\SY@LenC}{\SY@DeltaC}
+ \fi
+ %
+ % Set the rule's length ----------------------------------------------
+ \setlength{\SY@LenRule}{%
+ \maxof{\maxof{\maxof{\SY@LenPA}{\SY@LenPB}}{\maxof{\SY@LenPA}{\SY@LenC}}}%
+ {\maxof{\SY@LenPB}{\SY@LenC}}%
+ }%
+ %
+ % Construction of the Syllogism ----------------------------------------
+ \par\vspace{\SY@LenSepA}% V-space before the syllogism
+ \if@SYParam% Conditional H-space before syllogism
+ \hspace{\SY@Pre}#1\hspace{\SY@SpLabel}%
+ \else%
+ \hspace{\SY@Pre}%
+ \fi%
+ %
+ \begin{minipage}{\SY@LenRule}
+ \begin{list}{}
+ {%
+ \setlength{\parsep}{\z@}
+ \setlength{\itemsep}{\z@}
+ \addtolength{\leftmargin}{-1.5em}
+ \setlength{\itemindent}{-1ex}
+ \setlength{\listparindent}{\itemindent}
+ }
+ \item \@SYLpropA%
+ \item \@SYLpropB%
+ \vspace*{\SY@LenAdjRule}%
+ \item \rule{\SY@LenRule}{\SY@HiRule}%
+ \item \@SYLpropC%
+ \end{list}
+ \end{minipage}
+ \par\vspace{\SY@LenSepB}% V-space after the syllogism
+ %
+ \setlength{\parindent}{\SY@tempindent}% Restore default indent
+ \@SYRestoreBooleans% Restore booleans
+}%
+
+%%%%%%%%%%%%%%%%%%%% Syllogism with text added and counter %%%%%%%%%%%%%%%%%%%%%
+\newcommand{\syllogTAC}[3]{%
+ \syllogTA[\syl]{#1}{#2}{#3}
+ \stepcounter{c:syl}%
+ }%
diff --git a/macros/latex/contrib/syllogism/syllogism.tex b/macros/latex/contrib/syllogism/syllogism.tex
new file mode 100644
index 0000000000..8ae9055a08
--- /dev/null
+++ b/macros/latex/contrib/syllogism/syllogism.tex
@@ -0,0 +1,238 @@
+% Manual for the syllogism package
+% (c) Nicolas Vaughan 2008 (nivaca@gmail.com)
+% 25/10/2008
+
+\documentclass[letterpaper,
+ 10pt,
+ ]{article}
+
+\usepackage[T1]{fontenc}
+\usepackage[english]{babel}
+
+\usepackage[
+ colorlinks%
+ ,plainpages=false% This forces a unique identification of pages.
+ ,hypertexnames=true% This is necessary to have exact link on Index page.
+ ,naturalnames
+ ,hyperindex
+]{hyperref}
+
+%--------------------------------------------------------------------------------
+\usepackage[sc,osf]{mathpazo} % Palatino font
+\usepackage[tracking=true,%
+ final,%
+ babel=true,%
+ verbose=true,
+ tracking=smallcaps]{microtype}
+%----------------------------------------------------------------------------------
+
+\usepackage{makeidx}
+\usepackage{url}
+\usepackage{xspace}
+\usepackage{xcolor}
+\usepackage{syllogism}
+
+% . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
+
+\newcommand{\syllversion}{release 1.2}
+\newcommand{\syllp}{\texttt{\color{sred}syllogism}\xspace}
+\colorlet{sblue}{blue!60!black}
+\colorlet{sred}{red!60!black}
+\colorlet{comcol}{green!45!black}
+\newcommand{\comm}[1]{\texttt{\color{comcol}\textbackslash{}#1}\xspace} % commands
+\newcommand{\commnb}[1]{\texttt{\color{comcol}#1}\xspace} % command without backslash
+\newcommand\maincind[1]{\index{main commands!#1@\texttt{$\protect\backslash$#1}|}}
+ % main commands index
+\newcommand\addcind[1]{\index{additional commands!#1@\texttt{$\protect\backslash$#1}|}}
+ % additional commands index
+\newcommand\optind[1]{\index{package options!#1@\texttt{$\protect\backslash$#1}|}}
+ % package options index
+% . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
+
+\title{\vspace*{-1cm}%
+ \textsc{The} \syllp \textsc{package} \\%
+ {\large\syllversion}%
+ }
+\author{(c) 2007--2008 \textsc{Nicolas Vaughan}\\ \\
+ Report bugs and submit questions to:\\
+ \texttt{nivaca@gmail.com}
+ }
+\date{Oct. 29, 2008}
+
+\makeindex
+\begin{document}% =============================================================
+\setlength{\parindent}{0em}
+\maketitle
+\tableofcontents
+
+\section{Introduction}
+The \syllp package provides a simple way for neatly typesetting syllogisms and syllogistic-like arguments, composed of two premisses and a conclusion. It is fully configurable, allowing the user to tweak the various distances, line widths, and other options.
+
+\section{Changelog}
+\begin{description}
+ \item[v.\,1.2 (25/10/2008)] Changed the typesetting engine of \comm{syllog}.
+ \item[] Fixed a problem with \comm{syllogTAC}. (Thanks to Carlos Cortissoz for noticing this.)
+ \item[v.\,1.1 (02/06/2008)] Added a syllogism counter (\comm{c:syl}) and two new commands, \comm{syllogC} and \comm{syllogTAC}.
+\end{description}
+
+\section{How to use it~\label{S:howto}}
+You must set
+\comm{usepackage[\emph{options}]\{syllogism\}} before the
+\comm{begin\{document\}} command. The available options
+are described in section~\S \ref{S:options}.
+
+To install \syllp, just place it anywhere \LaTeX can find it (e.g., \url{/texmf-local/tex/latex/syllogism}).
+
+\subsection{\comm{syllog}~\label{SS:syllog}~\maincind{syllog}~\index{main commands}}
+The main command provided by the package is \comm{syllog}, whose syntax is:
+
+\bigskip
+
+ \comm{syllog[\emph{pre-text}]\{\emph{first premiss}\}\{\emph{second premiss}\}\{\emph{conclusion}\},
+ }
+
+\bigskip
+
+in which the optional parameter \emph{pre-text} is the text typeset to the left of the syllogism; \emph{first premiss}, \emph{second premiss} and \emph{conclusion} correspond respectively to the the text of the first and second premisses and the conclusion.
+
+For example, the following command
+
+\begin{quote}
+ \comm{syllog\{Every man except Socrates is musician\}}\%\\
+ \quad\commnb{\{Socrates is a man\}}\%\\
+ \quad\commnb{\{Socrates is not a musician\}},
+\end{quote}
+
+will produce this output:
+
+\syllog{Every man except Socrates is musician}{Socrates is a man}{Socrates is not a musician}
+
+If you choose to use the optional parameter, as in:
+
+\begin{quote}
+ \comm{syllog[(S1)]\{Every man except Socrates is musician\}}\%\\
+ \quad\commnb{\{Socrates is a man\}}\%\\
+ \quad\commnb{\{Socrates is not a musician\}},
+\end{quote}
+
+you should get the following result:
+
+\syllog[(S1)]{Every man except Socrates is musician}{Socrates is a man}{Socrates is not a musician}
+
+\subsection{\comm{syllogC}~\label{SS:syllogC}~\maincind{syllogC}}
+The package also provides the command \comm{syllogC} which includes an automatic numeration~\index{automatic numeration} feature. The syntax for this command is similar to the previous one, but does not take the optional parameter.%
+ \footnote{The~\label{N:slabel}~\index{automatic numeration!redefining the label} label for \comm{syllogC} is defined internally through the following instruction: \texttt{\textbackslash{}newcommand\{\textbackslash{}syl\}\{(S\textbackslash{}arabic\{c:syl\})\textbackslash{}xspace\}}. It may be thus redefined as usual in \LaTeX. For example, to remove the `S' in the label, use the following: \texttt{\textbackslash{}renewcommand\{\textbackslash{}syl\}\{(\textbackslash{}arabic\{c:syl\})\textbackslash{}xspace\}}.
+ } %
+
+\bigskip
+
+ \comm{syllogC\{\emph{first premiss}\}\{\emph{second premiss}\}\{\emph{conclusion}\},
+ }
+
+\bigskip
+
+For example, the following code
+
+\begin{quote}
+ \comm{syllogC\{Every man except Socrates is musician\}}\%\\
+ \quad\commnb{\{Socrates is a man\}}\%\\
+ \quad\commnb{\{Socrates is not a musician\}},
+\end{quote}
+
+will produce this output (provided that it has not been called elsewhere before):
+
+\syllogC{Every man except Socrates is musician}{Socrates is a man}{Socrates is not a musician}
+
+The counter associated with \comm{syllogC} is \comm{c:syl}, which may be reset or stepped with in the usual ways.
+
+\subsection{\comm{syllogTA}~\label{SS:syllogTA}~\maincind{syllogTA}}
+The command \comm{syllogTA} works almost exactly as \comm{syllog}, the only difference being that it adds some text to the second premiss and the conclusion. Its syntax is:
+
+\bigskip
+
+ \comm{syllogTA[\emph{pre-text}]\{\emph{first premiss}\}\{\emph{second premiss}\}\{\emph{conclusion}\},
+ }
+
+\bigskip
+
+As for today, \syllp supports three languages for this task: English, Spanish and Latin. The default language is English. (The language may be changed through a package option, see \S \ref{S:options} below). The added text for each language is shown in Table \ref{T:languages}, below.
+
+\begin{table}[h]
+ \begin{center}
+ \begin{tabular}{lcc}
+ & \textsc{second premiss} & \textsc{conclusion} \\
+ \textsc{english} & \emph{but} & \emph{Therefore} \\
+ \textsc{spanish} & \emph{pero} & \emph{Por lo tanto,} \\
+ \textsc{latin1} & \emph{sed} & \emph{Ergo} \\
+ \textsc{latin1} & \emph{sed} & \emph{Igitur} \\
+ \end{tabular}
+ \caption{Language variants}\label{T:languages}%
+ \end{center}
+\end{table}
+
+For example, the following code:
+
+\begin{quote}
+ \comm{syllogTA\{Every man except Socrates is musician\}}\%\\
+ \quad\comm{\{Socrates is a man\}}\%\\
+ \quad\comm{\{Socrates is not a musician\}},
+\end{quote}
+
+will be typeset thus:
+
+\syllogTA{Every man except Socrates is musician}{Socrates is a man}{Socrates is not a musician}
+
+Please note that the text may be defined through several commands provided also by \syllp (see below \S \ref{SS:Tcomm}).
+
+\subsection{\comm{syllogTAC}~\label{SS:syllogTAC}~\maincind{syllogTAC}}
+The command \comm{syllogTAC}, which adds an automatic counter to \comm{syllogTA}~\maincind{syllogTA}.%
+ \footnote{See note \ref{N:slabel}, above.
+ } %
+Its syntax is:
+
+\bigskip
+
+ \comm{syllogTAC\{\emph{first premiss}\}\{\emph{second premiss}\}\{\emph{conclusion}\},
+ }
+
+
+\section{Package options~\label{S:options}}
+The package options~\index{package options} for \syllp are four, corresponding the language of the added text (used only with the commands \comm{syllogTA} and \comm{syllogTAC}):
+
+\begin{description}
+ \item{\texttt{english}}~\optind{english}
+ \item{\texttt{spanish}}~\optind{spanish}
+ \item{\texttt{latin1}}~\optind{latin1}
+ \item{\texttt{latin2}}~\optind{latin2}
+\end{description}
+
+The option \texttt{english} is the default one. As stated previously, the text content selected by these options may be changed by one or more of several commands provided in the package (see below \S \ref{SS:Tcomm}).
+
+\section{Additional commands~\label{S:addcomm}~\index{additional commands}}
+\subsection{Length-related commands~\label{SS:Lcomm}}
+\begin{description}
+ \item[\comm{setpresyl}] Command~\addcind{setpresyl} for changing the horizontal space to the right of the syllogism (def=2em).
+ \item[\comm{setsyllabel}] Command~\addcind{setsyllabel} for changing the horizonal space between the label and the syllogism (def=1em).
+ \item[\comm{setsylrh}] Command~\addcind{setsylrh} for changing the `width' of the rule (def=.3pt).
+ \item[\comm{setsylsepa}] Command~\addcind{setsylsepa} for changing the vertical space before the syllogism (def=\texttt{\textbackslash{}baselineskip}).
+ \item[\comm{setsylsepb}] Command~\addcind{setsylsepb} for changing the vertical space after the syllogism (def=\texttt{\textbackslash{}baselineskip}).
+ \item[\comm{setsylsep}] Command~\addcind{setsylsep} for changing the vertical space \emph{both} before \emph{and} after the syllogism to the same value.
+\end{description}
+
+\subsection{Text-related commands~\label{SS:Tcomm}}
+These commands change the default text used with \comm{syllogTA} and \comm{syllogTAC}. The defaults are set by the package options (see above \S \ref{S:options}).
+
+\begin{description}
+ \item[\comm{setsylsed}] Command~\addcind{setsylsed} for changing the text that begins the second premiss.
+ \item[\comm{setsylergo}] Command~\addcind{setsylergo} for changing the text that begins the conclusion.
+ \item[\comm{setsylpuncpa}] Command~\addcind{setsylpuncpa} for changing the punctuation after the first premiss (def=;).
+ \item[\comm{setsylpuncpb}] Command~\addcind{setsylpuncpb} for changing the punctuation after the second premiss (def=.).
+ \item[\comm{setsylpuncc}] Command~\addcind{setsylpuncc} for changing the punctuation after the conclusion (def=.).
+ \item[\comm{setsylergosign}] Command~\addcind{setsylergosign} for changing the sign that goes after the conclusion text (def=$\therefore$).
+\end{description}
+
+\section{Future features~\label{S:ffeatures}}
+Future features depend on user feedback and requests. However, support for more languages and automatic language selection (through \texttt{babel}) is envisaged.
+\clearpage
+\printindex
+\end{document}% ============================================================= \ No newline at end of file