From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Mon, 2 Sep 2019 13:46:59 +0900
Subject: Initial commit

---
 macros/latex/contrib/thinsp/thinsp.tex | 174 +++++++++++++++++++++++++++++++++
 1 file changed, 174 insertions(+)
 create mode 100644 macros/latex/contrib/thinsp/thinsp.tex

(limited to 'macros/latex/contrib/thinsp/thinsp.tex')

diff --git a/macros/latex/contrib/thinsp/thinsp.tex b/macros/latex/contrib/thinsp/thinsp.tex
new file mode 100644
index 0000000000..0043f9c3e5
--- /dev/null
+++ b/macros/latex/contrib/thinsp/thinsp.tex
@@ -0,0 +1,174 @@
+\pdfoutput1
+\documentclass[a4paper,11pt,british]{article}
+\usepackage[T1]{fontenc}
+\usepackage[colorlinks]{hyperref}
+\usepackage{babel,thinsp,listings,tabularx,booktabs,ragged2e,textcomp}
+\author{Palle J\o rgensen}
+\title{The \thinsp\ package}
+\def\origthinspace{\kern .16667em }
+\def\orignegthinspace{\kern-.16667em }
+\def\thinsp{\texttt{thinsp}}
+\def\strthinspace{\texttt{\string\thinspace}}
+\lstset{language=[latex]tex,breaklines=true}
+\setcounter{tocdepth}{1}
+\begin{document}
+\maketitle
+
+\section*{Summary}
+\label{sec:summary}
+
+The \thinsp\ package provides a stretchable \strthinspace\ to replace
+\LaTeX's normal \strthinspace.
+
+\tableofcontents
+
+\section{Introduction}
+\label{sec:introduction}
+
+The normal \strthinspace\ command which \LaTeX\ provides as standard
+is a fixed space of 0.16667em, with no strething. This gives an akward
+spacing when using \strthinspace\ in underfull \verb+\hbox+'s.
+
+Say, I wanted to create a certain box with the name P.\,A.\,M. Dirac
+in it. To provide a proper spacing between the initials I use a
+\strthinspace\ between the letters. Here shown with some
+\verb+\framebox+'es.
+
+\begin{verbatim}
+\noindent\fbox{P.\,A.\,M. Dirac}\\
+\framebox[\linewidth][s]{P.\,A.\,M. Dirac created 
+  relativistic quantum mechanics}
+\end{verbatim}
+
+Then I would get something looking like this when using the original
+\strthinspace\ from \LaTeX\medskip:
+
+\noindent\fbox{P.\origthinspace A.\origthinspace M.
+  Dirac}\\ \framebox[\linewidth][s]{P.\origthinspace A.\origthinspace
+  M. Dirac created relativistic quantum mechanics}\medskip
+
+In this example with the original spacing if \strthinspace\ the
+spacing between the initials is the same, whether or not the
+\verb+\hbox+ is underfull and need som stretcing or not. This makes
+the initials to appear ``unnaturally'' close when comparing them to
+the other characters.
+
+With a \strthinspace\ that is strecthable like the normal space, the
+resulting box is appearing more natural.\medskip
+
+\noindent\fbox{P.\,A.\,M. Dirac}\\
+\framebox[\linewidth][s]{P.\,A.\,M. Dirac created relativistic quantum
+  mechanics}\medskip
+
+\section{Usage}
+\label{sec:usage}
+
+The simplest usage of the package is simply adding
+\begin{lstlisting}
+\usepackage{thinsp}
+\end{lstlisting}
+to your preamble.
+
+The the \strthinspace\ command as well as the \verb+\,+ shortcut is
+replaced by the stretchable \strthinspace
+
+The package furthermore provides a command
+\verb+\thinthinspace+ with half the width of \strthinspace.
+
+\subsection{Options}
+\label{sec:options}
+
+\begin{tabularx}{\linewidth}{>{\ttfamily}l>{\RaggedRight}X}
+  \toprule
+  \textrm{Option} & Description\\
+  \midrule 
+
+  nothinspace & Disables the replacement of \strthinspace.
+  The stretchable thinspace is still available as
+  \texttt{\string\stretchthinspace}.\\
+
+  thinspace & Dummy option as counterpart to \texttt{nothinspace}\\
+
+  nothinthinspace & Disables the possible\footnotemark\ replacement of
+  \texttt{\string\thinthinspace}. The stretchable thinthinspace is
+  still available as  \texttt{\string\stretchthinthinspace}.\\
+
+  thinthinspace & Dummy option as counterpart to
+  \texttt{nothinthinspace}\\ 
+
+  negthinspace & Provides a stretchable \texttt{\string\negthinspace}.
+  This is not default, as \texttt{\string\negthinspace} may be used
+  with caution anyway, and almost always should be replaced by a
+  manually \texttt{\string\kern}. A stretchable
+  \texttt{\string\negthinspace} is available as
+  \texttt{\string\stretchnegthinspace}\\ 
+
+  nonegthinspace & Dummy option as counterpart to
+  \texttt{negthinspace}\\ 
+
+  \midrule 
+
+  onehalf & Ajusting the stretchable \strthinspace\ to half of the
+  ordinary space. This is default, as it appears just like the
+  original \strthinspace\ in boxes that are not stretched.\\
+
+  onethird & Ajusting the stretchable \strthinspace\ to one third of
+  the ordinary space.\\
+
+  twothirds & Ajusting the stretchable \strthinspace\ to two thirds of
+  the ordinary space. This is the author's favourite\dots\\
+  \bottomrule
+\end{tabularx}
+\footnotetext{Some packages provide a \texttt{\string\thinthinspace}
+  command}
+
+\section{\thinsp\ and other packages}
+\label{sec:thinsp-other-pack}
+
+As the package \texttt{amsmath} redifines \strthinspace\ as well,
+there is a minor clash between these two packages. Hence \thinsp\
+redefines \strthinspace\ at the beginning of the document, and if
+\texttt{amsmath} is loaded, the \strthinspace\ is redefined in an
+``\texttt{amsmath} way''.
+
+\section{Bug reports and comments}
+\label{sec:bug-reports-comments}
+
+Any comment on this package can be sent to the author on his e-mail
+address: \url{hamselv@pallej.dk}.
+
+\section{Copyright and license}
+\label{sec:copyright-license}
+
+The \thinsp\ package and this documentation i copyright
+\textcopyright\ 2007, 2016 by Palle J\o rgensen.
+
+The license of the \thinsp\ package and this documentation is GNU
+General Public License (GPL).
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see \url{http://www.gnu.org/licenses/}.
+
+\appendix
+\clearpage
+
+\section{Source code of \texttt{thinsp.sty}}
+\label{sec:source-code-thinsp.s}
+
+\lstinputlisting{thinsp.sty}
+
+\end{document}
+\clearpage
+
+\section{Source code of this document}
+\label{sec:source-code-this}
+
+\lstinputlisting{\jobname.tex}
+
+
+\end{document}
+
+%%% Local Variables: 
+%%% mode: latex
+%%% TeX-master: t
+%%% End: 
-- 
cgit v1.2.3

