summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-09-12 22:40:59 +0000
committerKarl Berry <karl@freefriends.org>2010-09-12 22:40:59 +0000
commitb7a0b0162c49aea864ceea62a3defd130f36660b (patch)
treeb15007802f46bd91a1e579dc65c229aba4aeab0b
parenta3600660f91c0e808336c01cb388e7b357c289f4 (diff)
needspace update (12sep10)
git-svn-id: svn://tug.org/texlive/trunk@19684 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/needspace/README79
-rw-r--r--Master/texmf-dist/doc/latex/needspace/needspace.pdfbin274359 -> 137092 bytes
-rw-r--r--Master/texmf-dist/doc/latex/needspace/needspace.tex89
-rw-r--r--Master/texmf-dist/source/latex/needspace/needspace.ins4
-rw-r--r--Master/texmf-dist/source/latex/needspace/needspace.tex163
-rw-r--r--Master/texmf-dist/tex/latex/needspace/needspace.sty75
6 files changed, 263 insertions, 147 deletions
diff --git a/Master/texmf-dist/doc/latex/needspace/README b/Master/texmf-dist/doc/latex/needspace/README
new file mode 100644
index 00000000000..46c02494ff0
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/needspace/README
@@ -0,0 +1,79 @@
+
+The NEEDSPACE package
+=====================
+
+Provides the \needspace and \Needspace macros for
+requesting a certain amount of space on the current
+page for the following material.
+
+
+INSTALLATION
+------------
+
+Run `pdflatex` on needspace.tex to produce the files
+ needspace.ins and needspace.sty,
+as well as to compile the PDF documentation.
+
+Execute `tex needspace.ins` to produce the files above
+except needspace.ins itself (and the PDF file, obviously).
+
+
+CHANGE HISTORY
+--------------
+
+* v1.3c (2010/09/12):
+ Patch to improve behaviour with commands like `\section` that use
+ `\addvspace`. See [this thread][ctt] on comp.text.tex.
+
+[ctt]: http://groups.google.com/group/comp.text.tex/browse_frm/thread/8d849a1e0be2120e
+
+* v1.3b (2009/09/03):
+ New maintainer (Will Robertson)
+
+* v1.3a (2003/02/18):
+ At the suggestion of Donald Arseneau (private emails) changed guts of
+ \needspace from
+
+ ... \vskip\z@\@plus\dimen@\pagebreak[3]\vskip\z@\@plus-\dimen@\endgroup}
+
+* v1.3 (2003/02/07):
+ Added \Needspace (an extended version of postings by Donald Arseneau
+ to comp.text.tex e.g., in November 1993, August 1995, September 1997, ...)
+
+* v1.2 (2002/09/11):
+ At the suggestion of Robin Fairbairns, added use of \dimen@ to capture
+ the argument so that calc package commands can be used in the argument.
+
+
+COPYRIGHT AND LICENSING
+-----------------------
+
+Authors: Donald Arseneau and Peter Wilson (Herries Press)
+Maintainer: Will Robertson (will dot robertson at latex-project dot org)
+Copyright 1996-2003 Peter Wilson
+Copyright 2010 Will Robertson
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either
+version 1.3c of this license or (at your option) any
+later version: <http://www.latex-project.org/lppl.txt>
+
+This work has the LPPL maintenance status "maintained".
+The Current Maintainer of this work is Will Robertson.
+
+This work consists of the files needspace.tex and the
+derived files needspace.sty and needspace.ins.
+
+
+MAINTENANCE
+-----------
+
+Please report bugs or request features:
+ <http://github.com/wspr/herries-press/issues>
+
+Developmental and historical versions:
+ <http://github.com/wspr/herries-press>
+
+Current release version:
+ <http://ctan.tug.org/pkg/needspace>
+
diff --git a/Master/texmf-dist/doc/latex/needspace/needspace.pdf b/Master/texmf-dist/doc/latex/needspace/needspace.pdf
index 0305e3819c4..6082e146bda 100644
--- a/Master/texmf-dist/doc/latex/needspace/needspace.pdf
+++ b/Master/texmf-dist/doc/latex/needspace/needspace.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/needspace/needspace.tex b/Master/texmf-dist/doc/latex/needspace/needspace.tex
deleted file mode 100644
index 4dce4814d3d..00000000000
--- a/Master/texmf-dist/doc/latex/needspace/needspace.tex
+++ /dev/null
@@ -1,89 +0,0 @@
-\documentclass[pagesize=auto, fontsize=12pt, DIV=11]{scrartcl}
-
-\usepackage{fixltx2e}
-\usepackage{etex}
-\usepackage{xspace}
-\usepackage{lmodern}
-\usepackage[T1]{fontenc}
-\usepackage{textcomp}
-\usepackage{microtype}
-\usepackage{hyperref}
-
-\newcommand*{\mail}[1]{\href{mailto:#1}{\texttt{#1}}}
-\newcommand*{\pkg}[1]{\textsf{#1}}
-\newcommand*{\cs}[1]{\texttt{\textbackslash#1}}
-\makeatletter
-\newcommand*{\cmd}[1]{\cs{\expandafter\@gobble\string#1}}
-\makeatother
-\newcommand*{\meta}[1]{\textlangle\textsl{#1}\textrangle}
-\newcommand*{\marg}[1]{\texttt{\{}\meta{#1}\texttt{\}}}
-
-\addtokomafont{title}{\rmfamily}
-
-\title{The \pkg{needspace} package\thanks{This manual corresponds to \pkg{needspace}~v1.3b, dated~2009/09/03.}}
-\author{Author: Peter Wilson, Herries Press\\Maintainer: Will Robertson\thanks{\mail{will.robertson@latex-project.org}}}
-\date{2009/09/03}
-
-
-\begin{document}
-
-\maketitle
-
-\noindent
-Provides commands to reserve space at the bottom of a page. If there
-is not enough space on the current page (column) a new page (column)
-is started.
-
-\begin{quote}
- \small
- Copyright 1996--2003 Peter Wilson\\
- Released under the \LaTeX\ Project Public License
-\end{quote}
-
-
-\section{Example uses:}
-
-\begin{verbatim}
-... previous text.\par
-\needspace{5\baselineskip} % need next 5 lines on a single page/column
-The next five lines ...
-
-\Needspace*{4\baselineskip} % need 4 lines kept on same page
- The major principles are:
-\begin{itemize}
-\item ...
-\end{verbatim}
-
-The \cmd{\needspace} macro reserves an \emph{approximate} amount of space (depending
-on what penalties are in effect) but is efficient and normally adequate.
-A short page will be ragged bottom even if \cmd{\flushbottom} is in
-effect.
-
-\cmd{\Needspace} is less efficient but reserves the requested space. It
-should only be used between paragraphs. Short pages produced by
-\cmd{\Needspace}\marg{length} will be ragged bottom but short pages produced by
-\cmd{\Needspace*}\marg{length} will be flush bottom if \cmd{\flushbottom} is in effect.
-
-
-\section{Changes:}
-
-\begin{description}
-\item[Changes v1.3b (2009/09/03)]
- New maintainer (Will Robertson)
-
-\item[Changes v1.3a (2003/02/18)]
- At the suggestion of Donald Arseneau (private emails) changed guts of
- \cmd{\needspace} from
- \ldots\verb+\vskip\z@\@plus\dimen@\pagebreak[3]+\allowbreak
- \verb+\vskip\z@\@plus-\dimen@\endgroup}+
-
-\item[Changes v1.3 (2003/02/07)]
- Added \cmd{\Needspace} (an extended version of postings by Donald Arseneau
- to \texttt{comp.text.tex} e.\,g.,\ in November 1993, August 1995, September 1997, \ldots)
-
-\item[Changes v1.2 (2002/09/11)]
- At the suggestion of Robin Fairbairns, added use of \cmd{\dimen@} to capture
- the argument so that \pkg{calc} package commands can be used in the argument.
-\end{description}
-
-\end{document}
diff --git a/Master/texmf-dist/source/latex/needspace/needspace.ins b/Master/texmf-dist/source/latex/needspace/needspace.ins
new file mode 100644
index 00000000000..1d8548d8c23
--- /dev/null
+++ b/Master/texmf-dist/source/latex/needspace/needspace.ins
@@ -0,0 +1,4 @@
+%&latex
+\def\documentationCompile{N}
+\input needspace.tex
+\csname@@end\endcsname
diff --git a/Master/texmf-dist/source/latex/needspace/needspace.tex b/Master/texmf-dist/source/latex/needspace/needspace.tex
new file mode 100644
index 00000000000..365cdcca10f
--- /dev/null
+++ b/Master/texmf-dist/source/latex/needspace/needspace.tex
@@ -0,0 +1,163 @@
+
+%%%%%%%%%1%%%%%%%%%2%%%%%%%%%3%%%%%%%%%4%%%%%%%%%5%%%%%%%%%6
+% Bundled source file for the NEEDSPACE package
+%--------1---------2---------3---------4---------5---------6
+% Please see the accompanying README for author,
+% license, documentation and installation information
+%%%%%%%%%1%%%%%%%%%2%%%%%%%%%3%%%%%%%%%4%%%%%%%%%5%%%%%%%%%6
+
+
+%%%%%%%%%%%%%%%%%%%%
+%% PACKAGE SOURCE %%
+%%%%%%%%%%%%%%%%%%%%
+
+\RequirePackage{filecontents}
+\begin{filecontents}{needspace.sty}
+
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{needspace}[2010/09/12 v1.3c reserve vertical space]
+
+\newcommand{\needspace}[1]{%
+ \begingroup
+ \setlength{\dimen@}{#1}%
+ \vskip\z@\@plus\dimen@
+ \penalty -100\vskip\z@\@plus -\dimen@
+ \vskip\dimen@
+ \penalty 9999%
+ \vskip -\dimen@
+ \vskip\z@skip % hide the previous |\vskip| from |\addvspace|
+ \endgroup
+}
+
+\newcommand{\Needspace}{\@ifstar{\@sneedsp@}{\@needsp@}}
+
+\newcommand{\@sneedsp@}[1]{\par \penalty-100\begingroup
+ \setlength{\dimen@}{#1}%
+ \dimen@ii\pagegoal \advance\dimen@ii-\pagetotal
+ \ifdim \dimen@>\dimen@ii
+ \break
+ \fi\endgroup}
+
+\newcommand{\@needsp@}[1]{\par \penalty-100\begingroup
+ \setlength{\dimen@}{#1}%
+ \dimen@ii\pagegoal \advance\dimen@ii-\pagetotal
+ \ifdim \dimen@>\dimen@ii
+ \ifdim \dimen@ii>\z@
+ \vfil
+ \fi
+ \break
+ \fi\endgroup}
+
+\end{filecontents}
+%%%%%%%%%1%%%%%%%%%2%%%%%%%%%3%%%%%%%%%4%%%%%%%%%5
+
+
+% Conditionally compile the documentation & generate the .ins file:
+\providecommand\documentationCompile{Y}
+\makeatletter
+\if\documentationCompile N
+ \expandafter\@@end
+\fi
+
+
+\begin{filecontents*}{needspace.ins}
+%&latex
+\def\documentationCompile{N}
+\input needspace.tex
+\csname@@end\endcsname
+\end{filecontents*}
+
+
+%%%%%%%%%%%%%%%%%%%
+%% DOCUMENTATION %%
+%%%%%%%%%%%%%%%%%%%
+
+\documentclass{article}
+\usepackage[it,medium]{titlesec}
+\usepackage[T1]{fontenc}
+\usepackage{microtype}
+\usepackage{lmodern}
+\usepackage[sc,osf]{mathpazo}
+\linespread{1.1}
+\frenchspacing
+
+\usepackage[svgnames]{xcolor}
+\usepackage[colorlinks,linktocpage]{hyperref}
+\usepackage{gmdoc}
+\usepackage{gmverb}
+\dekclubs
+\stanzaskip=\bigskipamount
+\CodeSpacesGrey
+\DeclareRobustCommand\pkg{\textsf}
+
+\usepackage{needspace}
+\GetFileInfo{needspace.sty}
+
+\begin{document}
+
+\title{The \pkg{needspace} package}
+\author{%
+ Author: Peter Wilson, Herries Press\\
+ Maintainer: Will Robertson\\
+ \texttt{will dot robertson at latex-project dot org}%
+}
+\date{\fileversion \qquad \filedate}
+
+\maketitle
+
+\section{Documentation}
+
+This packages two commands, \cs{needspace} and \cs{Needspace}, for reserving
+space to keep a certain amount of material from being split over a page break.
+If there is not enough space, a `\newpage' is automatically inserted.
+
+The \cs{needspace}\meta{length} macro reserves an \emph{approximate} amount of space \meta{length} for
+the material following to be kept on the same page. The accuracy of its
+calculations depend on what penalties are in effect, but is efficient and
+normally adequate. A short page will be ragged bottom even if \cs{flushbottom}
+is in effect.
+
+\cs{Needspace}\marg{length} is less efficient but reserves the requested space \meta{length} exactly. It
+should only be used between paragraphs. Short pages that are produced by
+\cs{Needspace} will be ragged bottom but short pages produced by
+\cs{Needspace*}\marg{length} will be flush bottom if \cs{flushbottom} is in
+effect.
+
+\section{Examples}
+
+Here, we request that we need next five lines on a single page/column:
+\begin{verbatim}
+... previous text.
+
+\needspace{5\baselineskip}
+The next five lines ...
+\end{verbatim}
+In this case, the space is reserved more accurately:
+\begin{verbatim}
+... previous text.
+
+\Needspace*{4\baselineskip}
+ The major principles are:
+\begin{itemize}
+\item ...
+\end{verbatim}
+
+
+\section*{Licence and copyright}
+
+This work may be modified and/or distributed under the terms and
+conditions of the \LaTeX\ Project Public License\footnote{\url{http://www.latex-project.org/lppl.txt}}, version~1.3c or later (your choice).
+The current maintainer of this work is Will Robertson.
+
+\bigskip
+ \noindent
+ Copyright Peter Wilson, 1996--2003 \\
+ Copyright Will Robertson, 2010
+
+\clearpage
+\parindent=0pt
+
+\section{Implementation}
+\DocInput{needspace.sty}
+
+\end{document}
diff --git a/Master/texmf-dist/tex/latex/needspace/needspace.sty b/Master/texmf-dist/tex/latex/needspace/needspace.sty
index ee286352e8e..a30aa51a16c 100644
--- a/Master/texmf-dist/tex/latex/needspace/needspace.sty
+++ b/Master/texmf-dist/tex/latex/needspace/needspace.sty
@@ -1,21 +1,22 @@
-% needspace.sty
-%
-% Provides commands to reserve space at the bottom of a page. If there
-% is not enough space on the current page (column) a new page (column)
-% is started.
-%
-% Author: Peter Wilson, Herries Press
-% Maintainer: Will Robertson (will dot robertson at latex-project dot org)
-% Copyright 1996--2003 Peter Wilson
-% Released under the LaTeX Project Public License
-%
-%
+%% LaTeX2e file `needspace.sty'
+%% generated by the `filecontents' environment
+%% from source `needspace' on 2010/09/12.
+%%
+
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{needspace}[2009/09/03 v1.3b reserve vertical space]
+\ProvidesPackage{needspace}[2010/09/12 v1.3c reserve vertical space]
-\newcommand{\needspace}[1]{\begingroup\setlength{\dimen@}{#1}%
- \vskip\z@\@plus\dimen@ \penalty -100\vskip\z@\@plus -\dimen@
- \vskip\dimen@ \penalty 9999\vskip -\dimen@\endgroup}
+\newcommand{\needspace}[1]{%
+ \begingroup
+ \setlength{\dimen@}{#1}%
+ \vskip\z@\@plus\dimen@
+ \penalty -100\vskip\z@\@plus -\dimen@
+ \vskip\dimen@
+ \penalty 9999%
+ \vskip -\dimen@
+ \vskip\z@skip % hide the previous |\vskip| from |\addvspace|
+ \endgroup
+}
\newcommand{\Needspace}{\@ifstar{\@sneedsp@}{\@needsp@}}
@@ -36,45 +37,3 @@
\break
\fi\endgroup}
-\endinput
-
-% Example uses:
-%
-% ... previous text.\par
-% \needspace{5\baselineskip} % need next 5 lines on a single page/column
-% The next five lines ...
-%
-% \Needspace*{4\baselineskip} % need 4 lines kept on same page
-% The major principles are:
-% \begin{itemize}
-% \item ...
-%
-%
-% The \needspace macro reserves an APPROXIMATE amount of space (depending
-% on what penalties are in effect) but is efficient and normally adequate.
-% A short page will be ragged bottom even if \flushbottom is in
-% effect.
-%
-% \Needspace is less efficient but reserves the requested space. It
-% should only be used between paragraphs. Short pages produced by
-% \Needspace{<length>} will be ragged bottom but short pages produced by
-% \Needspace*{<length>} will be flush bottom if \flushbottom is in effect.
-%
-% Changes v1.3b (2009/09/03)
-% New maintainer (Will Robertson)
-%
-% Changes v1.3a (2003/02/18)
-% At the suggestion of Donald Arseneau (private emails) changed guts of
-% \needspace from
-% ... \vskip\z@\@plus\dimen@\pagebreak[3]\vskip\z@\@plus-\dimen@\endgroup}
-%
-% Changes v1.3 (2003/02/07)
-% Added \Needspace (an extended version of postings by Donald Arseneau
-% to comp.text.tex e.g., in November 1993, August 1995, September 1997, ...)
-%
-% Changes v1.2 (2002/09/11)
-% At the suggestion of Robin Fairbairns, added use of \dimen@ to capture
-% the argument so that calc package commands can be used in the argument.
-%
-%
-%