\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: