* [PATCH 1/2] Improve definition of \nbco{} and \qco{}
@ 2019-01-28 14:29 Akira Yokosawa
2019-01-28 14:33 ` [PATCH 2/2] defer/rcufundamental: Fix typo of \ref{} command Akira Yokosawa
0 siblings, 1 reply; 2+ messages in thread
From: Akira Yokosawa @ 2019-01-28 14:29 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa
From 857e21738a75e2a51ba61738dbf0da404dbb13bf Mon Sep 17 00:00:00 2001
From: Akira Yokosawa <akiyks@gmail.com>
Date: Mon, 28 Jan 2019 23:13:41 +0900
Subject: [PATCH 1/2] Improve definition of \nbco{} and \qco{}
Commit 68288d7d6d55 ("defer/rcufundamental: Additional wordsmithing
and todo-list cleanup") introduced a \qco{} command to represent
"->". However, \lstinline{} command used in the old definition
gets confused when used inside another command, in this case
\hbox{}, if the enclosed string contains breakable sequence (->).
Another option is to use the \PVerb{} command provided by the
"examplep" package.
By this change, "\" no longer needs escapes inside \nbco{} and \qco{}.
Update the style guide to reflect the change.
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
appendix/styleguide/styleguide.tex | 49 +++++++++++++++++++-------------------
perfbook.tex | 3 ++-
2 files changed, 27 insertions(+), 25 deletions(-)
diff --git a/appendix/styleguide/styleguide.tex b/appendix/styleguide/styleguide.tex
index 517424b..7cd0510 100644
--- a/appendix/styleguide/styleguide.tex
+++ b/appendix/styleguide/styleguide.tex
@@ -97,7 +97,7 @@ are used behind numerical values, narrow spaces should be placed between
the values and the symbols.
A narrow space can be coded in \LaTeX{} by the sequence of
-\qco{\\,}.
+\qco{\,}.
For example,
\begin{quote}
``2.4\,GHz'', rather then ``2.4GHz''.
@@ -113,17 +113,17 @@ should be placed. For example,
The symbol of micro (\micro :$10^{-6}$) can be typeset easily by
the help of ``gensymb'' \LaTeX\ package.
-A macro \qco{\\micro} can be used in both text and
+A macro \qco{\micro} can be used in both text and
math modes. To typeset the symbol of ``microsecond'', you can do
-so by \qco{\\micro s}. For example,
+so by \qco{\micro s}. For example,
\begin{quote}
10\,\micro s
\end{quote}
-Note that math mode \qco{\\mu} is italic by default and should not
+Note that math mode \qco{\mu} is italic by default and should not
be used as a prefix. An improper example:
\begin{quote}
- 10\,$\mu $s (math mode \qco{\\mu})
+ 10\,$\mu $s (math mode \qco{\mu})
\end{quote}
\subsubsection{Non-SI Unit Symbol}
@@ -173,7 +173,7 @@ of it. NIST style guide clearly states so.
The symbol of degree can also be typeset easily by the help of gensymb
package.
-A macro \qco{\\degree} can be used in both text and math modes.
+A macro \qco{\degree} can be used in both text and math modes.
Example:
@@ -313,7 +313,7 @@ This section summarizes guidelines specific to \LaTeX.
Monospace font (or typewriter font) is heavily used in this textbook.
First policy regarding monospace font in perfbook is to avoid
-directly using \qco{\\texttt} or \qco{\\tt} macro.
+directly using \qco{\texttt} or \qco{\tt} macro.
It is highly recommended to use a macro or an environment
indicating the reason why you want the font.
@@ -390,7 +390,7 @@ Listing~\ref{lst:app:styleguide:Sample Code Snippet}.
Labels to lines are specified in \qco{$lnlbl[]} command. The characters
specified by \qco{commandchars} option to \co{VarbatimL} environment are
-used by the \co{fancyvrb} package to substitute \qco{\\lnlbl\{\}}
+used by the \co{fancyvrb} package to substitute ``\co{\\lnlbl\{\}}''
for \qco{$lnlbl[]}. Those characters should be selected so that they
don't appear elsewhere in the code snippet.
@@ -414,7 +414,7 @@ to from text.
\end{lineref}
\end{quote}
-Macros \qco{\\lnlbl\{\}} and \qco{\\lnref\{\}} are defined in
+Macros ``\co{\\lnlbl\{\}}'' and ``\co{\\lnref\{\}}'' are defined in
the preamble as follows:
\begin{VerbatimU}
@@ -515,14 +515,14 @@ Once one of them appears in a litmus test, comments should be
ocaml style (\qco{(* ... *)}). Those tokens keep the same meaning
even when they appear in comments!
-The pair of characters \qco{\{} and \qco{\}} also have special
+The pair of characters ``\co{\{}'' and ``\co{\}}'' also have special
meaning in the C flavour tests. They are used to seperate portions
in a litmus test.
-First pair of \qco{\{} and \qco{\}} encloses initialization part.
+First pair of ``\co{\{}'' and ``\co{\}}'' encloses initialization part.
Comments in this part should also be in the ocaml form.
-You can't use \qco{\{} and \qco{\}} in comments in litmus tests, either.
+You can't use ``\co{\{}'' nor ``\co{\}}'' in comments in litmus tests, either.
Examples of disallowed comments in a litmus test are shown below:
@@ -727,8 +727,9 @@ lists such limitations.
\begin{tabular}{@{}lll@{}}\toprule
Macro & Need Escape & Should Avoid \\
\midrule
- \co{\\co}, \co{\\nbco} & \co{\\}, \%, \{, \} & \\
+ \co{\\co} & \co{\\}, \%, \{, \} & \\
\co{\\tco} & \# & \%, \{, \}, \co{\\} \\
+ \co{\\nbco} & & \%, \{, \}, final \co{\\} \\
\bottomrule
\end{tabular}
\caption{Limitation of Monospace Macro}
@@ -739,10 +740,10 @@ While \verb|\co{}| requires some characters to be escaped,
it can contain any character.
On the other hand, \verb|\tco{}| can not handle
-\qco{\%}, \qco{\{}, \qco{\}}, nor \qco{\\} properly.
-If they are escaped by a~\qco{\\},
+``\co{\%}'', ``\co{\{}'', ``\co{\}}'', nor ``\co{\\}'' properly.
+If they are escaped by a~``\co{\\}'',
they appear in the end result with the escape character.
-The \qco{\\verb} macro can be used in running text if you
+The \qco{\verb} macro can be used in running text if you
need to use monospace font for a string which contains
many characters to escape.\VerbatimFootnotes\footnote{
\verb|\verb| macro is not almighty though. For example, you can't
@@ -798,15 +799,15 @@ in poor typesetting. For example:
high-frequency radio wave, high-frequency radio wave.
\vspace{0.6\baselineskip}\end{minipage}\end{center}
-By using a shortcut \qco{\\-/} provided by the
+By using a shortcut \qco{\-/} provided by the
``extdash'' package, hyphenation in elements of compound
words is enabled in perfbook.\footnote{
In exchange for enabling the shortcut, we can't use plain
- \LaTeX's shortcut \qco{\\-} to specify hyphenation points.
+ \LaTeX's shortcut \qco{\-} to specify hyphenation points.
Use \path{pfhyphex.tex} to add such exceptions.
}
-Example with \qco{\\-/}:
+Example with \qco{\-/}:
\begin{center}\begin{minipage}{2.6in}\vspace{0.6\baselineskip}
High\-/frequency radio wave, high\-/frequency radio wave,
@@ -822,7 +823,7 @@ We want hyphenated compound terms such as ``x\=/coordinate'',
following a single letter.
To make a hyphen unbreakable, we can use a short cut
-\qco{\\=/} also provided by the ``extdash'' package.
+\qco{\=/} also provided by the ``extdash'' package.
Example without a shortcut:
@@ -832,7 +833,7 @@ x-, y-, and z-coordinates; x-, y-, and z-coordinates;
x-, y-, and z-coordinates; x-, y-, and z-coordinates;
\vspace{0.6\baselineskip}\end{minipage}\end{center}
-Example with \qco{\\-/}:
+Example with \qco{\-/}:
\begin{center}\begin{minipage}{2.55in}\vspace{0.6\baselineskip}
x-, y-, and z\-/coordinates; x-, y-, and z\-/coordinates;
@@ -840,7 +841,7 @@ x-, y-, and z\-/coordinates; x-, y-, and z\-/coordinates;
x-, y-, and z\-/coordinates; x-, y-, and z\-/coordinates;
\vspace{0.6\baselineskip}\end{minipage}\end{center}
-Example with \qco{\\=/}:
+Example with \qco{\=/}:
\begin{center}\begin{minipage}{2.55in}\vspace{0.6\baselineskip}
x-, y-, and z\=/coordinates; x-, y-, and z\=/coordinates;
@@ -848,8 +849,8 @@ x-, y-, and z\=/coordinates; x-, y-, and z\=/coordinates;
x-, y-, and z\=/coordinates; x-, y-, and z\=/coordinates;
\vspace{0.6\baselineskip}\end{minipage}\end{center}
-Note that \qco{\\=/} enables hyphenation in elements
-of compound words as the same as \qco{\\-/} does.
+Note that \qco{\=/} enables hyphenation in elements
+of compound words as the same as \qco{\-/} does.
\subsubsection{Em Dash}
\label{sec:app:styleguide:Em Dash}
diff --git a/perfbook.tex b/perfbook.tex
index 1799bfb..2eb4cd8 100644
--- a/perfbook.tex
+++ b/perfbook.tex
@@ -42,6 +42,7 @@
\usepackage{changepage}
\usepackage{listings}
\lstset{basicstyle=\ttfamily}
+\usepackage{examplep}
% \usepackage[strings]{underscore}
% \usepackage{underscore}
\usepackage{pifont} % special character for qqz reference point
@@ -155,7 +156,7 @@
}
%%HTMLNOSKIP
\newcommand{\co}[1]{\lstinline[breaklines=true,breakatwhitespace=true]{#1}}
-\newcommand{\nbco}[1]{\hbox{\lstinline[breaklines=false,breakatwhitespace=false]{#1}}} % no break lines for short snippet
+\newcommand{\nbco}[1]{\mbox{\PVerb[pverb-space=invnobreak]{#1}}} % no break lines for short snippet
\newcommand{\qco}[1]{``\nbco{#1}''} % \nbco with quotation marks
\newcommand{\tco}[1]{\texttt{\detokenize{#1}}} % for code in tabular environment
% \tco{} will break at spaces but not at underscores
--
2.7.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH 2/2] defer/rcufundamental: Fix typo of \ref{} command
2019-01-28 14:29 [PATCH 1/2] Improve definition of \nbco{} and \qco{} Akira Yokosawa
@ 2019-01-28 14:33 ` Akira Yokosawa
0 siblings, 0 replies; 2+ messages in thread
From: Akira Yokosawa @ 2019-01-28 14:33 UTC (permalink / raw)
To: Paul E. McKenney; +Cc: perfbook, Akira Yokosawa
From 18561e12c81e3374250eafc8e35293ea4319a238 Mon Sep 17 00:00:00 2001
From: Akira Yokosawa <akiyks@gmail.com>
Date: Mon, 28 Jan 2019 23:22:32 +0900
Subject: [PATCH 2/2] defer/rcufundamental: Fix typo of \ref{} command
Signed-off-by: Akira Yokosawa <akiyks@gmail.com>
---
Hi Paul,
In case this hunk should conflict with your update, please hand apply it;
or just ignore it if you have already fixed the typo.
Thanks, Akira
--
defer/rcufundamental.tex | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/defer/rcufundamental.tex b/defer/rcufundamental.tex
index 99fabe2..070f932 100644
--- a/defer/rcufundamental.tex
+++ b/defer/rcufundamental.tex
@@ -128,7 +128,7 @@ However, on other architectures, \co{rcu_dereference()} typically
emits a single load instruction, just as would the equivalent single-threaded
code.
The coding restrictions are described in more detail in
-Section~/ref{sec:memorder:Address- and Data-Dependency Difficulties},
+Section~\ref{sec:memorder:Address- and Data-Dependency Difficulties},
however, the common case of field selection (\qco{->}) works quite well.
Software that does not require the ultimate in read-side performance
can instead use C11 acquire loads, which provide the needed ordering and
--
2.7.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-01-28 14:33 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-28 14:29 [PATCH 1/2] Improve definition of \nbco{} and \qco{} Akira Yokosawa
2019-01-28 14:33 ` [PATCH 2/2] defer/rcufundamental: Fix typo of \ref{} command Akira Yokosawa
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.