%%Copyright James Kilfiger. 
%%
%%This Package may be distributed under the terms of the Latex Project
%%Public Licence.
%
% Documentation below \endinput

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{raggedr}[1999/11/11 
          Set a document in ragged right as much as possible]

\DeclareOption{ragged2e}
          {\def\LoadRagged{\IfFileExists{ragged2e.sty}   
                {\RequirePackage{ragged2e}
                \def\RRrright{\RaggedRight\parindent1em\relax}}
                {\PackageWarning{raggedr}{Ragged2e package not 
                found. Using standard raggedright}
		\def\RRrright{\raggedright\parindent1em\let\\=\@normalcr}
		}}
          }
\DeclareOption{noragged2e}
          {\def\LoadRagged{\relax}
          \def\RRrright{\raggedright\parindent1em\let\\=\@normalcr}}


\ExecuteOptions{noragged2e}
\ProcessOptions
\LoadRagged


\newcommand{\justifying}{%
\def\\{\@normalcr}%
\rightskip\z@ \leftskip\z@
\parfillskip 0pt \@plus 1fil\relax
\parindent 1em\relax}
\newenvironment{justify}{\trivlist\justifying\item\relax}{\endtrivlist}

\renewcommand{\@arrayparboxrestore}{%
  \let\if@nobreak\iffalse
  \let\if@noskipsec\iffalse
  \let\par\@@par
  \let\-\@dischyph
  \let\'\@acci\let\`\@accii\let\=\@acciii
  \everypar{}%
  \linewidth\hsize
  \@totalleftmargin\z@
  \RRrright
  \parindent\z@ \parskip\z@skip
  \lineskip\normallineskip
  \baselineskip\normalbaselineskip
  \sloppy}
\let\raggednewline=\@normalcr
\RRrright


\endinput

This is a small package which attempt to set the document in ragged
right as much as possible.  It can use Martin Schröder's Ragged2e
package, if available, if the standard \raggedright is too ragged.

Use:
In the preamble of a document you can say
  \usepackage{raggedr}
or 
  \usepackage[ragged2e]{raggedr}

Your document will be set ragged right, moreover parboxes, minipages and 
p{} columns of tabulars will be set raggedright.

If you want part of you document justified there is a command,
\justifying and an evironment \begin{justfiy}...\end{justify}
These can be used just as \centering and the center environment.

Finally, there is a problem getting a new line in a ragged right
tabular, as both \\ and tabular newline will start a new row. Therefore
the command \raggednewline is provided to do a normal newline.

This package depends apon some LaTeX2e internals.  If those internals
change, this package will break.

This package is largely untested in the real world. I welcome any
comments.

	James
