From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 22A9F1382C5 for ; Sat, 22 May 2021 06:36:57 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 7CDE0E0864; Sat, 22 May 2021 06:36:56 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 595D4E0864 for ; Sat, 22 May 2021 06:36:56 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id CF950335CE9 for ; Sat, 22 May 2021 06:36:54 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 8D0555C4 for ; Sat, 22 May 2021 06:36:53 +0000 (UTC) From: "Ulrich Müller" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" Message-ID: <1621572159.3e558f678cf36228c51eaf36d59a48577c3e25e3.ulm@gentoo> Subject: [gentoo-commits] proj/pms:eapi-8 commit in: / X-VCS-Repository: proj/pms X-VCS-Files: commands.tex dependencies.tex ebuild-env-invariancy.tex ebuild-env-vars.tex ebuild-functions.tex ebuild-vars.tex pkg-mgr-commands.tex pms.cls tree-layout.tex X-VCS-Directories: / X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: 3e558f678cf36228c51eaf36d59a48577c3e25e3 X-VCS-Branch: eapi-8 Date: Sat, 22 May 2021 06:36:53 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: a3abfeae-fc1c-411f-957f-91471af010ac X-Archives-Hash: 3c55aa8169e7203a162ed00b8b5d0e10 commit: 3e558f678cf36228c51eaf36d59a48577c3e25e3 Author: Ulrich Müller gentoo org> AuthorDate: Tue May 18 19:43:12 2021 +0000 Commit: Ulrich Müller gentoo org> CommitDate: Fri May 21 04:42:39 2021 +0000 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=3e558f67 Fix bad page breaks before lists Taken from https://tex.stackexchange.com/a/2645. Signed-off-by: Ulrich Müller gentoo.org> commands.tex | 1 + dependencies.tex | 4 ++-- ebuild-env-invariancy.tex | 4 ++-- ebuild-env-vars.tex | 2 +- ebuild-functions.tex | 2 +- ebuild-vars.tex | 8 ++++---- pkg-mgr-commands.tex | 3 ++- pms.cls | 3 +++ tree-layout.tex | 4 +++- 9 files changed, 19 insertions(+), 12 deletions(-) diff --git a/commands.tex b/commands.tex index 1733ebd..799a20c 100644 --- a/commands.tex +++ b/commands.tex @@ -21,6 +21,7 @@ dependencies must be used to ensure their presence. \label{sec:guaranteed-system-commands} The following commands must always be available in the ebuild environment: +\nobreakpar \begin{compactitem} \item All builtin commands in GNU bash, version as listed in table~\ref{tab:bash-version}. \item \t{sed} must be available, and must support all forms of invocations valid for GNU sed diff --git a/dependencies.tex b/dependencies.tex index 557ddce..67855f5 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -330,7 +330,7 @@ delimited by a \t{/} character. \featurelabel{slot-operator-deps} An operator slot dependency consists of a colon followed by one of the following operators: - +\nobreakpar \begin{description} \item[*] Indicates that any slot value is acceptable. In addition, for runtime dependencies, indicates that the package will not break if the matched package is uninstalled and replaced by @@ -358,7 +358,7 @@ the equals slot operator inside \t{PDEPEND} or inside any-of dependency specific \label{sec:use-dep} A 2-style or 4-style use dependency consists of one of the following: - +\nobreakpar \begin{description} \item[{[opt]}] The flag must be enabled. \item[{[opt=]}] The flag must be enabled if the flag is enabled for the package with the diff --git a/ebuild-env-invariancy.tex b/ebuild-env-invariancy.tex index cc95a2b..9484103 100644 --- a/ebuild-env-invariancy.tex +++ b/ebuild-env-invariancy.tex @@ -1,7 +1,7 @@ \section{The State of the System Between Functions} For the sake of this section: - +\nobreakpar \begin{compactitem} \item Variancy is any package manager action that modifies either \t{ROOT} or \t{/} in any way that isn't merely a simple addition of @@ -14,7 +14,7 @@ For the sake of this section: \end{compactitem} The following exclusivity and invariancy requirements are mandated: - +\nobreakpar \begin{compactitem} \item No variancy shall be introduced at any point between a package's \t{pkg_setup} being started up to the point that that package is diff --git a/ebuild-env-vars.tex b/ebuild-env-vars.tex index 332c3d8..006b8e4 100644 --- a/ebuild-env-vars.tex +++ b/ebuild-env-vars.tex @@ -358,7 +358,7 @@ table~\ref{tab:locale-settings}. \label{sec:use-iuse-handling} This section discusses the handling of four variables: - +\nobreakpar \begin{description} \item[IUSE] is the variable calculated from the \t{IUSE} values defined in ebuilds and eclasses. \item[IUSE_REFERENCEABLE] is a variable calculated from \t{IUSE} and a variety of other sources diff --git a/ebuild-functions.tex b/ebuild-functions.tex index ab3ed9c..4e691c5 100644 --- a/ebuild-functions.tex +++ b/ebuild-functions.tex @@ -479,7 +479,7 @@ when in the phase in question. \section{Call Order} The call order for installing a package is: - +\nobreakpar \begin{compactitem} \item \t{pkg_pretend} (only for EAPIs listed in table~\ref{tab:pkg-pretend-table}), which is called outside of the normal call order process. diff --git a/ebuild-vars.tex b/ebuild-vars.tex index cd03882..fca8565 100644 --- a/ebuild-vars.tex +++ b/ebuild-vars.tex @@ -24,7 +24,7 @@ variable data. \label{sec:mandatory-vars} All ebuilds must define at least the following variables: - +\nobreakpar \begin{description} \item[DESCRIPTION] A short human-readable description of the package's purpose. May be defined by an eclass. Must not be empty. @@ -44,7 +44,7 @@ All ebuilds must define at least the following variables: \label{sec:optional-vars} Ebuilds may define any of the following variables: - +\nobreakpar \begin{description} \item[EAPI] The EAPI\@. See below in section~\ref{sec:eapi}. \item[HOMEPAGE] The URI or URIs for a package's homepage, including protocols. @@ -220,7 +220,7 @@ It is an error for a flag to be used if it is not included in \t{IUSE_EFFECTIVE} \label{sec:properties} The following tokens are permitted inside \t{PROPERTIES}: - +\nobreakpar \begin{description} \item[interactive] The package may require interaction with the user via the tty. \item[live] The package uses ``live'' source code that may vary each time that the package is @@ -233,7 +233,7 @@ Package managers may recognise other tokens. Ebuilds may not rely upon any token \label{sec:restrict} The following tokens are permitted inside \t{RESTRICT}: - +\nobreakpar \begin{description} \item[mirror] The package's \t{SRC_URI} entries may not be mirrored, and mirrors should not be checked when fetching. diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex index 59edc1c..bc6d1ac 100644 --- a/pkg-mgr-commands.tex +++ b/pkg-mgr-commands.tex @@ -16,6 +16,7 @@ a failure shall either result in a non-zero exit status or abort the build proce table~\ref{tab:commands-die-table}. The following commands affect this behaviour: +\nobreakpar \begin{description} \item[nonfatal] \featurelabel{nonfatal} Takes one or more arguments and executes them as a command, preserving the exit status. If this results in a command being called that would normally abort @@ -910,7 +911,7 @@ table~\ref{tab:use-list-strictness}. \subsection{Text list functions} These functions check whitespace-separated lists for a particular value. - +\nobreakpar \begin{description} \item[has] Returns shell true (0) if the first argument (a word) is found in the list of subsequent arguments, false otherwise. Guaranteed quiet. diff --git a/pms.cls b/pms.cls index 1a09407..2e2e9bf 100644 --- a/pms.cls +++ b/pms.cls @@ -131,6 +131,9 @@ \floatname{listing}{Listing} \newcommand{\listoflistings}{\listof{listing}{List of Listings}} +% Prevent page break before a list +\newcommand{\nobreakpar}{\par\nobreak\@afterheading} + % Silence hyperref messages (see hint 11.3 in the hyperref manual) \providecommand*{\toclevel@algorithm}{0} \providecommand*{\toclevel@listing}{0} diff --git a/tree-layout.tex b/tree-layout.tex index 138e533..719b489 100644 --- a/tree-layout.tex +++ b/tree-layout.tex @@ -8,6 +8,7 @@ differently from normal. \section{Top Level} An ebuild repository shall occupy one directory on disk, with the following subdirectories: +\nobreakpar \begin{compactitem} \item One directory per category, whose name shall be the name of the category. The layout of these directories shall be as described in section~\ref{sec:category-dirs}. @@ -47,6 +48,7 @@ a package manager may treat an empty category as a category that does not exist) \label{sec:package-dirs} A package directory contains the following: +\nobreakpar \begin{compactitem} \item Zero or more ebuilds. These are as described in chapter~\ref{ch:ebuild-format} and others. \item A \t{metadata.xml} file, as described in appendix~\ref{ch:metadata-xml}\@. Optional only for @@ -151,7 +153,7 @@ status. Each line has the format: \end{verbatim} Where: - +\nobreakpar \begin{compactitem} \item \t{} is the default keyword for the profile and the \t{ARCH} for which the profile is valid. From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id C66D91382C5 for ; Mon, 24 May 2021 08:53:57 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id ABC4DE0814; Mon, 24 May 2021 08:53:55 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8374FE0814 for ; Mon, 24 May 2021 08:53:55 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 1E7E4335C8E for ; Mon, 24 May 2021 08:53:54 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id B0167720 for ; Mon, 24 May 2021 08:53:52 +0000 (UTC) From: "Ulrich Müller" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" Message-ID: <1621572159.3e558f678cf36228c51eaf36d59a48577c3e25e3.ulm@gentoo> Subject: [gentoo-commits] proj/pms:master commit in: / X-VCS-Repository: proj/pms X-VCS-Files: commands.tex dependencies.tex ebuild-env-invariancy.tex ebuild-env-vars.tex ebuild-functions.tex ebuild-vars.tex pkg-mgr-commands.tex pms.cls tree-layout.tex X-VCS-Directories: / X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: 3e558f678cf36228c51eaf36d59a48577c3e25e3 X-VCS-Branch: master Date: Mon, 24 May 2021 08:53:52 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: ec622b81-45d0-4427-8377-26dec2ea9bb3 X-Archives-Hash: 39d33fef0206b6f6b4da3415340b96b1 Message-ID: <20210524085352.8VSfNilaLPnEb--_nSo1f1uQY0UdIYIL46DJWmhewzc@z> commit: 3e558f678cf36228c51eaf36d59a48577c3e25e3 Author: Ulrich Müller gentoo org> AuthorDate: Tue May 18 19:43:12 2021 +0000 Commit: Ulrich Müller gentoo org> CommitDate: Fri May 21 04:42:39 2021 +0000 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=3e558f67 Fix bad page breaks before lists Taken from https://tex.stackexchange.com/a/2645. Signed-off-by: Ulrich Müller gentoo.org> commands.tex | 1 + dependencies.tex | 4 ++-- ebuild-env-invariancy.tex | 4 ++-- ebuild-env-vars.tex | 2 +- ebuild-functions.tex | 2 +- ebuild-vars.tex | 8 ++++---- pkg-mgr-commands.tex | 3 ++- pms.cls | 3 +++ tree-layout.tex | 4 +++- 9 files changed, 19 insertions(+), 12 deletions(-) diff --git a/commands.tex b/commands.tex index 1733ebd..799a20c 100644 --- a/commands.tex +++ b/commands.tex @@ -21,6 +21,7 @@ dependencies must be used to ensure their presence. \label{sec:guaranteed-system-commands} The following commands must always be available in the ebuild environment: +\nobreakpar \begin{compactitem} \item All builtin commands in GNU bash, version as listed in table~\ref{tab:bash-version}. \item \t{sed} must be available, and must support all forms of invocations valid for GNU sed diff --git a/dependencies.tex b/dependencies.tex index 557ddce..67855f5 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -330,7 +330,7 @@ delimited by a \t{/} character. \featurelabel{slot-operator-deps} An operator slot dependency consists of a colon followed by one of the following operators: - +\nobreakpar \begin{description} \item[*] Indicates that any slot value is acceptable. In addition, for runtime dependencies, indicates that the package will not break if the matched package is uninstalled and replaced by @@ -358,7 +358,7 @@ the equals slot operator inside \t{PDEPEND} or inside any-of dependency specific \label{sec:use-dep} A 2-style or 4-style use dependency consists of one of the following: - +\nobreakpar \begin{description} \item[{[opt]}] The flag must be enabled. \item[{[opt=]}] The flag must be enabled if the flag is enabled for the package with the diff --git a/ebuild-env-invariancy.tex b/ebuild-env-invariancy.tex index cc95a2b..9484103 100644 --- a/ebuild-env-invariancy.tex +++ b/ebuild-env-invariancy.tex @@ -1,7 +1,7 @@ \section{The State of the System Between Functions} For the sake of this section: - +\nobreakpar \begin{compactitem} \item Variancy is any package manager action that modifies either \t{ROOT} or \t{/} in any way that isn't merely a simple addition of @@ -14,7 +14,7 @@ For the sake of this section: \end{compactitem} The following exclusivity and invariancy requirements are mandated: - +\nobreakpar \begin{compactitem} \item No variancy shall be introduced at any point between a package's \t{pkg_setup} being started up to the point that that package is diff --git a/ebuild-env-vars.tex b/ebuild-env-vars.tex index 332c3d8..006b8e4 100644 --- a/ebuild-env-vars.tex +++ b/ebuild-env-vars.tex @@ -358,7 +358,7 @@ table~\ref{tab:locale-settings}. \label{sec:use-iuse-handling} This section discusses the handling of four variables: - +\nobreakpar \begin{description} \item[IUSE] is the variable calculated from the \t{IUSE} values defined in ebuilds and eclasses. \item[IUSE_REFERENCEABLE] is a variable calculated from \t{IUSE} and a variety of other sources diff --git a/ebuild-functions.tex b/ebuild-functions.tex index ab3ed9c..4e691c5 100644 --- a/ebuild-functions.tex +++ b/ebuild-functions.tex @@ -479,7 +479,7 @@ when in the phase in question. \section{Call Order} The call order for installing a package is: - +\nobreakpar \begin{compactitem} \item \t{pkg_pretend} (only for EAPIs listed in table~\ref{tab:pkg-pretend-table}), which is called outside of the normal call order process. diff --git a/ebuild-vars.tex b/ebuild-vars.tex index cd03882..fca8565 100644 --- a/ebuild-vars.tex +++ b/ebuild-vars.tex @@ -24,7 +24,7 @@ variable data. \label{sec:mandatory-vars} All ebuilds must define at least the following variables: - +\nobreakpar \begin{description} \item[DESCRIPTION] A short human-readable description of the package's purpose. May be defined by an eclass. Must not be empty. @@ -44,7 +44,7 @@ All ebuilds must define at least the following variables: \label{sec:optional-vars} Ebuilds may define any of the following variables: - +\nobreakpar \begin{description} \item[EAPI] The EAPI\@. See below in section~\ref{sec:eapi}. \item[HOMEPAGE] The URI or URIs for a package's homepage, including protocols. @@ -220,7 +220,7 @@ It is an error for a flag to be used if it is not included in \t{IUSE_EFFECTIVE} \label{sec:properties} The following tokens are permitted inside \t{PROPERTIES}: - +\nobreakpar \begin{description} \item[interactive] The package may require interaction with the user via the tty. \item[live] The package uses ``live'' source code that may vary each time that the package is @@ -233,7 +233,7 @@ Package managers may recognise other tokens. Ebuilds may not rely upon any token \label{sec:restrict} The following tokens are permitted inside \t{RESTRICT}: - +\nobreakpar \begin{description} \item[mirror] The package's \t{SRC_URI} entries may not be mirrored, and mirrors should not be checked when fetching. diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex index 59edc1c..bc6d1ac 100644 --- a/pkg-mgr-commands.tex +++ b/pkg-mgr-commands.tex @@ -16,6 +16,7 @@ a failure shall either result in a non-zero exit status or abort the build proce table~\ref{tab:commands-die-table}. The following commands affect this behaviour: +\nobreakpar \begin{description} \item[nonfatal] \featurelabel{nonfatal} Takes one or more arguments and executes them as a command, preserving the exit status. If this results in a command being called that would normally abort @@ -910,7 +911,7 @@ table~\ref{tab:use-list-strictness}. \subsection{Text list functions} These functions check whitespace-separated lists for a particular value. - +\nobreakpar \begin{description} \item[has] Returns shell true (0) if the first argument (a word) is found in the list of subsequent arguments, false otherwise. Guaranteed quiet. diff --git a/pms.cls b/pms.cls index 1a09407..2e2e9bf 100644 --- a/pms.cls +++ b/pms.cls @@ -131,6 +131,9 @@ \floatname{listing}{Listing} \newcommand{\listoflistings}{\listof{listing}{List of Listings}} +% Prevent page break before a list +\newcommand{\nobreakpar}{\par\nobreak\@afterheading} + % Silence hyperref messages (see hint 11.3 in the hyperref manual) \providecommand*{\toclevel@algorithm}{0} \providecommand*{\toclevel@listing}{0} diff --git a/tree-layout.tex b/tree-layout.tex index 138e533..719b489 100644 --- a/tree-layout.tex +++ b/tree-layout.tex @@ -8,6 +8,7 @@ differently from normal. \section{Top Level} An ebuild repository shall occupy one directory on disk, with the following subdirectories: +\nobreakpar \begin{compactitem} \item One directory per category, whose name shall be the name of the category. The layout of these directories shall be as described in section~\ref{sec:category-dirs}. @@ -47,6 +48,7 @@ a package manager may treat an empty category as a category that does not exist) \label{sec:package-dirs} A package directory contains the following: +\nobreakpar \begin{compactitem} \item Zero or more ebuilds. These are as described in chapter~\ref{ch:ebuild-format} and others. \item A \t{metadata.xml} file, as described in appendix~\ref{ch:metadata-xml}\@. Optional only for @@ -151,7 +153,7 @@ status. Each line has the format: \end{verbatim} Where: - +\nobreakpar \begin{compactitem} \item \t{} is the default keyword for the profile and the \t{ARCH} for which the profile is valid. From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id CBD4713835B for ; Sat, 22 May 2021 06:36:45 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id EC20FE084A; Sat, 22 May 2021 06:36:44 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id C2D13E084A for ; Sat, 22 May 2021 06:36:44 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 3F875335CE9 for ; Sat, 22 May 2021 06:36:43 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 76D965C4 for ; Sat, 22 May 2021 06:36:41 +0000 (UTC) From: "Ulrich Müller" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" Message-ID: <1621572159.3e558f678cf36228c51eaf36d59a48577c3e25e3.ulm@gentoo> Subject: [gentoo-commits] proj/pms:retroactive commit in: / X-VCS-Repository: proj/pms X-VCS-Files: commands.tex dependencies.tex ebuild-env-invariancy.tex ebuild-env-vars.tex ebuild-functions.tex ebuild-vars.tex pkg-mgr-commands.tex pms.cls tree-layout.tex X-VCS-Directories: / X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: 3e558f678cf36228c51eaf36d59a48577c3e25e3 X-VCS-Branch: retroactive Date: Sat, 22 May 2021 06:36:41 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 5ad07e80-e95d-4f75-99e9-e209f6f5524d X-Archives-Hash: d8b99c17c139ccf3c4e19eca2bb19b31 Message-ID: <20210522063641.zqKHnp9bCgKVOJ0n-UiSdVLPu7KAtQbZ-py9mmHo-qg@z> commit: 3e558f678cf36228c51eaf36d59a48577c3e25e3 Author: Ulrich Müller gentoo org> AuthorDate: Tue May 18 19:43:12 2021 +0000 Commit: Ulrich Müller gentoo org> CommitDate: Fri May 21 04:42:39 2021 +0000 URL: https://gitweb.gentoo.org/proj/pms.git/commit/?id=3e558f67 Fix bad page breaks before lists Taken from https://tex.stackexchange.com/a/2645. Signed-off-by: Ulrich Müller gentoo.org> commands.tex | 1 + dependencies.tex | 4 ++-- ebuild-env-invariancy.tex | 4 ++-- ebuild-env-vars.tex | 2 +- ebuild-functions.tex | 2 +- ebuild-vars.tex | 8 ++++---- pkg-mgr-commands.tex | 3 ++- pms.cls | 3 +++ tree-layout.tex | 4 +++- 9 files changed, 19 insertions(+), 12 deletions(-) diff --git a/commands.tex b/commands.tex index 1733ebd..799a20c 100644 --- a/commands.tex +++ b/commands.tex @@ -21,6 +21,7 @@ dependencies must be used to ensure their presence. \label{sec:guaranteed-system-commands} The following commands must always be available in the ebuild environment: +\nobreakpar \begin{compactitem} \item All builtin commands in GNU bash, version as listed in table~\ref{tab:bash-version}. \item \t{sed} must be available, and must support all forms of invocations valid for GNU sed diff --git a/dependencies.tex b/dependencies.tex index 557ddce..67855f5 100644 --- a/dependencies.tex +++ b/dependencies.tex @@ -330,7 +330,7 @@ delimited by a \t{/} character. \featurelabel{slot-operator-deps} An operator slot dependency consists of a colon followed by one of the following operators: - +\nobreakpar \begin{description} \item[*] Indicates that any slot value is acceptable. In addition, for runtime dependencies, indicates that the package will not break if the matched package is uninstalled and replaced by @@ -358,7 +358,7 @@ the equals slot operator inside \t{PDEPEND} or inside any-of dependency specific \label{sec:use-dep} A 2-style or 4-style use dependency consists of one of the following: - +\nobreakpar \begin{description} \item[{[opt]}] The flag must be enabled. \item[{[opt=]}] The flag must be enabled if the flag is enabled for the package with the diff --git a/ebuild-env-invariancy.tex b/ebuild-env-invariancy.tex index cc95a2b..9484103 100644 --- a/ebuild-env-invariancy.tex +++ b/ebuild-env-invariancy.tex @@ -1,7 +1,7 @@ \section{The State of the System Between Functions} For the sake of this section: - +\nobreakpar \begin{compactitem} \item Variancy is any package manager action that modifies either \t{ROOT} or \t{/} in any way that isn't merely a simple addition of @@ -14,7 +14,7 @@ For the sake of this section: \end{compactitem} The following exclusivity and invariancy requirements are mandated: - +\nobreakpar \begin{compactitem} \item No variancy shall be introduced at any point between a package's \t{pkg_setup} being started up to the point that that package is diff --git a/ebuild-env-vars.tex b/ebuild-env-vars.tex index 332c3d8..006b8e4 100644 --- a/ebuild-env-vars.tex +++ b/ebuild-env-vars.tex @@ -358,7 +358,7 @@ table~\ref{tab:locale-settings}. \label{sec:use-iuse-handling} This section discusses the handling of four variables: - +\nobreakpar \begin{description} \item[IUSE] is the variable calculated from the \t{IUSE} values defined in ebuilds and eclasses. \item[IUSE_REFERENCEABLE] is a variable calculated from \t{IUSE} and a variety of other sources diff --git a/ebuild-functions.tex b/ebuild-functions.tex index ab3ed9c..4e691c5 100644 --- a/ebuild-functions.tex +++ b/ebuild-functions.tex @@ -479,7 +479,7 @@ when in the phase in question. \section{Call Order} The call order for installing a package is: - +\nobreakpar \begin{compactitem} \item \t{pkg_pretend} (only for EAPIs listed in table~\ref{tab:pkg-pretend-table}), which is called outside of the normal call order process. diff --git a/ebuild-vars.tex b/ebuild-vars.tex index cd03882..fca8565 100644 --- a/ebuild-vars.tex +++ b/ebuild-vars.tex @@ -24,7 +24,7 @@ variable data. \label{sec:mandatory-vars} All ebuilds must define at least the following variables: - +\nobreakpar \begin{description} \item[DESCRIPTION] A short human-readable description of the package's purpose. May be defined by an eclass. Must not be empty. @@ -44,7 +44,7 @@ All ebuilds must define at least the following variables: \label{sec:optional-vars} Ebuilds may define any of the following variables: - +\nobreakpar \begin{description} \item[EAPI] The EAPI\@. See below in section~\ref{sec:eapi}. \item[HOMEPAGE] The URI or URIs for a package's homepage, including protocols. @@ -220,7 +220,7 @@ It is an error for a flag to be used if it is not included in \t{IUSE_EFFECTIVE} \label{sec:properties} The following tokens are permitted inside \t{PROPERTIES}: - +\nobreakpar \begin{description} \item[interactive] The package may require interaction with the user via the tty. \item[live] The package uses ``live'' source code that may vary each time that the package is @@ -233,7 +233,7 @@ Package managers may recognise other tokens. Ebuilds may not rely upon any token \label{sec:restrict} The following tokens are permitted inside \t{RESTRICT}: - +\nobreakpar \begin{description} \item[mirror] The package's \t{SRC_URI} entries may not be mirrored, and mirrors should not be checked when fetching. diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex index 59edc1c..bc6d1ac 100644 --- a/pkg-mgr-commands.tex +++ b/pkg-mgr-commands.tex @@ -16,6 +16,7 @@ a failure shall either result in a non-zero exit status or abort the build proce table~\ref{tab:commands-die-table}. The following commands affect this behaviour: +\nobreakpar \begin{description} \item[nonfatal] \featurelabel{nonfatal} Takes one or more arguments and executes them as a command, preserving the exit status. If this results in a command being called that would normally abort @@ -910,7 +911,7 @@ table~\ref{tab:use-list-strictness}. \subsection{Text list functions} These functions check whitespace-separated lists for a particular value. - +\nobreakpar \begin{description} \item[has] Returns shell true (0) if the first argument (a word) is found in the list of subsequent arguments, false otherwise. Guaranteed quiet. diff --git a/pms.cls b/pms.cls index 1a09407..2e2e9bf 100644 --- a/pms.cls +++ b/pms.cls @@ -131,6 +131,9 @@ \floatname{listing}{Listing} \newcommand{\listoflistings}{\listof{listing}{List of Listings}} +% Prevent page break before a list +\newcommand{\nobreakpar}{\par\nobreak\@afterheading} + % Silence hyperref messages (see hint 11.3 in the hyperref manual) \providecommand*{\toclevel@algorithm}{0} \providecommand*{\toclevel@listing}{0} diff --git a/tree-layout.tex b/tree-layout.tex index 138e533..719b489 100644 --- a/tree-layout.tex +++ b/tree-layout.tex @@ -8,6 +8,7 @@ differently from normal. \section{Top Level} An ebuild repository shall occupy one directory on disk, with the following subdirectories: +\nobreakpar \begin{compactitem} \item One directory per category, whose name shall be the name of the category. The layout of these directories shall be as described in section~\ref{sec:category-dirs}. @@ -47,6 +48,7 @@ a package manager may treat an empty category as a category that does not exist) \label{sec:package-dirs} A package directory contains the following: +\nobreakpar \begin{compactitem} \item Zero or more ebuilds. These are as described in chapter~\ref{ch:ebuild-format} and others. \item A \t{metadata.xml} file, as described in appendix~\ref{ch:metadata-xml}\@. Optional only for @@ -151,7 +153,7 @@ status. Each line has the format: \end{verbatim} Where: - +\nobreakpar \begin{compactitem} \item \t{} is the default keyword for the profile and the \t{ARCH} for which the profile is valid.