X-Git-Url: http://gitweb.michael.orlitzky.com/?a=blobdiff_plain;f=mjo-proof_by_cases.tex;h=daf08a8ec22006892de0b4a81d2d2a365ef8c3a2;hb=303483ff6a3d8cba2ec705af56e4fe3d797a9b22;hp=f86c9d0e64c7740e1b05dd7ffe39b5d1a02c6594;hpb=3c2517bef26d15843949fa23055eafe09f1619ac;p=mjotex.git diff --git a/mjo-proof_by_cases.tex b/mjo-proof_by_cases.tex index f86c9d0..daf08a8 100644 --- a/mjo-proof_by_cases.tex +++ b/mjo-proof_by_cases.tex @@ -12,6 +12,27 @@ % Used below to define pcases. \usepackage{enumitem} +% Needed to perform division in the definition of \singleblskip. +\usepackage{calc} + +% A \baselineskip without the \baselinestretch scaling factor. Even +% though \baselinestretch defaults to 1.0, it doesn't really have that +% value. Thus to avoid division by zero, we need to do the ``is this +% thing empty?'' hack. +% +% If we use \baselineskip instead of \singleblskip in our list, things +% get real ugly when the text is e.g. double-spaced. +% +\newlength{\singleblskip} +\setlength{\singleblskip}{ + \baselineskip / \real{ + \if\relax\detokenize{\baselinestretch}\relax + \baselinestretch% + \else + 1% + \fi} +} + % Using the enumitem package, we define a new type of list, called % ``pcases'' (proof by cases). Each case has a label with an arabic % numeral (the case number), but also a \thiscase identifier. The @@ -20,10 +41,13 @@ % another. \newlist{pcases}{enumerate}{1} \setlist[pcases]{ - label=\textbf{Case~\arabic*}~(\protect\thiscase)\textbf{:}, + label=\textbf{Case~\arabic*}:~\protect\thiscase\textbf{.}, ref=\arabic*, align=left, - leftmargin=\parindent} + leftmargin=0pt, + listparindent=\parindent, + parsep=\parskip, + itemsep=\singleblskip} % The optional argument here gets stuffed into the \thiscase macro, to % be called by pcases when it creates this list item. The \hfill is a @@ -32,5 +56,5 @@ % so we consume the rest of the line instead. \newcommand{\case}[1][]{ \def\thiscase{#1}% - \item \hfill\par + \item \hfill\par\vspace{\singleblskip} }