texlive[51780] Master: ragged2e (30jul19)

commits+karl at tug.org commits+karl at tug.org
Tue Jul 30 23:15:18 CEST 2019


Revision: 51780
          http://tug.org/svn/texlive?view=revision&revision=51780
Author:   karl
Date:     2019-07-30 23:15:18 +0200 (Tue, 30 Jul 2019)
Log Message:
-----------
ragged2e (30jul19)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/libexec/ctan2tds
    trunk/Master/tlpkg/tlpsrc/collection-latexrecommended.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/ragged2e/
    trunk/Master/texmf-dist/doc/latex/ragged2e/LICENSE
    trunk/Master/texmf-dist/doc/latex/ragged2e/README
    trunk/Master/texmf-dist/doc/latex/ragged2e/ragged2e.pdf
    trunk/Master/texmf-dist/doc/latex/ragged2e/raggtest.tex
    trunk/Master/texmf-dist/doc/latex/ragged2e/test-koma.tex
    trunk/Master/texmf-dist/doc/latex/ragged2e/test1.tex
    trunk/Master/texmf-dist/doc/latex/ragged2e/test2.tex
    trunk/Master/texmf-dist/source/latex/ragged2e/
    trunk/Master/texmf-dist/source/latex/ragged2e/Makefile
    trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.drv
    trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.dtx
    trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.ins
    trunk/Master/texmf-dist/tex/latex/ragged2e/
    trunk/Master/texmf-dist/tex/latex/ragged2e/ragged2e.sty
    trunk/Master/tlpkg/tlpsrc/ragged2e.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/ragged2e/LICENSE
===================================================================
--- trunk/Master/texmf-dist/doc/latex/ragged2e/LICENSE	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/ragged2e/LICENSE	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,416 @@
+The LaTeX Project Public License
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
+
+LPPL Version 1.3c  2008-05-04
+
+Copyright 1999 2002-2008 LaTeX3 Project
+    Everyone is allowed to distribute verbatim copies of this
+    license document, but modification of it is not allowed.
+
+
+PREAMBLE
+========
+
+The LaTeX Project Public License (LPPL) is the primary license under
+which the LaTeX kernel and the base LaTeX packages are distributed.
+
+You may use this license for any work of which you hold the copyright
+and which you wish to distribute.  This license may be particularly
+suitable if your work is TeX-related (such as a LaTeX package), but 
+it is written in such a way that you can use it even if your work is 
+unrelated to TeX.
+
+The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE',
+below, gives instructions, examples, and recommendations for authors
+who are considering distributing their works under this license.
+
+This license gives conditions under which a work may be distributed
+and modified, as well as conditions under which modified versions of
+that work may be distributed.
+
+We, the LaTeX3 Project, believe that the conditions below give you
+the freedom to make and distribute modified versions of your work
+that conform with whatever technical specifications you wish while
+maintaining the availability, integrity, and reliability of
+that work.  If you do not see how to achieve your goal while
+meeting these conditions, then read the document `cfgguide.tex'
+and `modguide.tex' in the base LaTeX distribution for suggestions.
+
+
+DEFINITIONS
+===========
+
+In this license document the following terms are used:
+
+   `Work'
+    Any work being distributed under this License.
+    
+   `Derived Work'
+    Any work that under any applicable law is derived from the Work.
+
+   `Modification' 
+    Any procedure that produces a Derived Work under any applicable
+    law -- for example, the production of a file containing an
+    original file associated with the Work or a significant portion of
+    such a file, either verbatim or with modifications and/or
+    translated into another language.
+
+   `Modify'
+    To apply any procedure that produces a Derived Work under any
+    applicable law.
+    
+   `Distribution'
+    Making copies of the Work available from one person to another, in
+    whole or in part.  Distribution includes (but is not limited to)
+    making any electronic components of the Work accessible by
+    file transfer protocols such as FTP or HTTP or by shared file
+    systems such as Sun's Network File System (NFS).
+
+   `Compiled Work'
+    A version of the Work that has been processed into a form where it
+    is directly usable on a computer system.  This processing may
+    include using installation facilities provided by the Work,
+    transformations of the Work, copying of components of the Work, or
+    other activities.  Note that modification of any installation
+    facilities provided by the Work constitutes modification of the Work.
+
+   `Current Maintainer'
+    A person or persons nominated as such within the Work.  If there is
+    no such explicit nomination then it is the `Copyright Holder' under
+    any applicable law.
+
+   `Base Interpreter' 
+    A program or process that is normally needed for running or
+    interpreting a part or the whole of the Work.    
+
+    A Base Interpreter may depend on external components but these
+    are not considered part of the Base Interpreter provided that each
+    external component clearly identifies itself whenever it is used
+    interactively.  Unless explicitly specified when applying the
+    license to the Work, the only applicable Base Interpreter is a
+    `LaTeX-Format' or in the case of files belonging to the 
+    `LaTeX-format' a program implementing the `TeX language'.
+
+
+
+CONDITIONS ON DISTRIBUTION AND MODIFICATION
+===========================================
+
+1.  Activities other than distribution and/or modification of the Work
+are not covered by this license; they are outside its scope.  In
+particular, the act of running the Work is not restricted and no
+requirements are made concerning any offers of support for the Work.
+
+2.  You may distribute a complete, unmodified copy of the Work as you
+received it.  Distribution of only part of the Work is considered
+modification of the Work, and no right to distribute such a Derived
+Work may be assumed under the terms of this clause.
+
+3.  You may distribute a Compiled Work that has been generated from a
+complete, unmodified copy of the Work as distributed under Clause 2
+above, as long as that Compiled Work is distributed in such a way that
+the recipients may install the Compiled Work on their system exactly
+as it would have been installed if they generated a Compiled Work
+directly from the Work.
+
+4.  If you are the Current Maintainer of the Work, you may, without
+restriction, modify the Work, thus creating a Derived Work.  You may
+also distribute the Derived Work without restriction, including
+Compiled Works generated from the Derived Work.  Derived Works
+distributed in this manner by the Current Maintainer are considered to
+be updated versions of the Work.
+
+5.  If you are not the Current Maintainer of the Work, you may modify
+your copy of the Work, thus creating a Derived Work based on the Work,
+and compile this Derived Work, thus creating a Compiled Work based on
+the Derived Work.
+
+6.  If you are not the Current Maintainer of the Work, you may
+distribute a Derived Work provided the following conditions are met
+for every component of the Work unless that component clearly states
+in the copyright notice that it is exempt from that condition.  Only
+the Current Maintainer is allowed to add such statements of exemption 
+to a component of the Work. 
+
+  a. If a component of this Derived Work can be a direct replacement
+     for a component of the Work when that component is used with the
+     Base Interpreter, then, wherever this component of the Work
+     identifies itself to the user when used interactively with that
+     Base Interpreter, the replacement component of this Derived Work
+     clearly and unambiguously identifies itself as a modified version
+     of this component to the user when used interactively with that
+     Base Interpreter.
+     
+  b. Every component of the Derived Work contains prominent notices
+     detailing the nature of the changes to that component, or a
+     prominent reference to another file that is distributed as part
+     of the Derived Work and that contains a complete and accurate log
+     of the changes.
+  
+  c. No information in the Derived Work implies that any persons,
+     including (but not limited to) the authors of the original version
+     of the Work, provide any support, including (but not limited to)
+     the reporting and handling of errors, to recipients of the
+     Derived Work unless those persons have stated explicitly that
+     they do provide such support for the Derived Work.
+
+  d. You distribute at least one of the following with the Derived Work:
+
+       1. A complete, unmodified copy of the Work; 
+          if your distribution of a modified component is made by
+          offering access to copy the modified component from a
+          designated place, then offering equivalent access to copy
+          the Work from the same or some similar place meets this
+          condition, even though third parties are not compelled to
+          copy the Work along with the modified component;
+
+       2. Information that is sufficient to obtain a complete,
+          unmodified copy of the Work.
+
+7.  If you are not the Current Maintainer of the Work, you may
+distribute a Compiled Work generated from a Derived Work, as long as
+the Derived Work is distributed to all recipients of the Compiled
+Work, and as long as the conditions of Clause 6, above, are met with
+regard to the Derived Work.
+
+8.  The conditions above are not intended to prohibit, and hence do not
+apply to, the modification, by any method, of any component so that it
+becomes identical to an updated version of that component of the Work as
+it is distributed by the Current Maintainer under Clause 4, above.
+
+9.  Distribution of the Work or any Derived Work in an alternative
+format, where the Work or that Derived Work (in whole or in part) is
+then produced by applying some process to that format, does not relax or
+nullify any sections of this license as they pertain to the results of
+applying that process.
+     
+10. a. A Derived Work may be distributed under a different license
+       provided that license itself honors the conditions listed in
+       Clause 6 above, in regard to the Work, though it does not have
+       to honor the rest of the conditions in this license.
+      
+    b. If a Derived Work is distributed under a different license, that
+       Derived Work must provide sufficient documentation as part of
+       itself to allow each recipient of that Derived Work to honor the 
+       restrictions in Clause 6 above, concerning changes from the Work.
+
+11. This license places no restrictions on works that are unrelated to
+the Work, nor does this license place any restrictions on aggregating
+such works with the Work by any means.
+
+12.  Nothing in this license is intended to, or may be used to, prevent
+complete compliance by all parties with all applicable laws.
+
+
+NO WARRANTY
+===========
+
+There is no warranty for the Work.  Except when otherwise stated in
+writing, the Copyright Holder provides the Work `as is', without
+warranty of any kind, either expressed or implied, including, but not
+limited to, the implied warranties of merchantability and fitness for a
+particular purpose.  The entire risk as to the quality and performance
+of the Work is with you.  Should the Work prove defective, you assume
+the cost of all necessary servicing, repair, or correction.
+
+In no event unless required by applicable law or agreed to in writing
+will The Copyright Holder, or any author named in the components of the
+Work, or any other party who may distribute and/or modify the Work as
+permitted above, be liable to you for damages, including any general,
+special, incidental or consequential damages arising out of any use of
+the Work or out of inability to use the Work (including, but not limited
+to, loss of data, data being rendered inaccurate, or losses sustained by
+anyone as a result of any failure of the Work to operate with any other
+programs), even if the Copyright Holder or said author or said other
+party has been advised of the possibility of such damages.
+
+
+MAINTENANCE OF THE WORK
+=======================
+
+The Work has the status `author-maintained' if the Copyright Holder
+explicitly and prominently states near the primary copyright notice in
+the Work that the Work can only be maintained by the Copyright Holder
+or simply that it is `author-maintained'.
+
+The Work has the status `maintained' if there is a Current Maintainer
+who has indicated in the Work that they are willing to receive error
+reports for the Work (for example, by supplying a valid e-mail
+address). It is not required for the Current Maintainer to acknowledge
+or act upon these error reports.
+
+The Work changes from status `maintained' to `unmaintained' if there
+is no Current Maintainer, or the person stated to be Current
+Maintainer of the work cannot be reached through the indicated means
+of communication for a period of six months, and there are no other
+significant signs of active maintenance.
+
+You can become the Current Maintainer of the Work by agreement with
+any existing Current Maintainer to take over this role.
+
+If the Work is unmaintained, you can become the Current Maintainer of
+the Work through the following steps:
+
+ 1.  Make a reasonable attempt to trace the Current Maintainer (and
+     the Copyright Holder, if the two differ) through the means of
+     an Internet or similar search.
+
+ 2.  If this search is successful, then enquire whether the Work
+     is still maintained.
+
+  a. If it is being maintained, then ask the Current Maintainer
+     to update their communication data within one month.
+     
+  b. If the search is unsuccessful or no action to resume active
+     maintenance is taken by the Current Maintainer, then announce
+     within the pertinent community your intention to take over
+     maintenance.  (If the Work is a LaTeX work, this could be
+     done, for example, by posting to comp.text.tex.)
+
+ 3a. If the Current Maintainer is reachable and agrees to pass
+     maintenance of the Work to you, then this takes effect
+     immediately upon announcement.
+     
+  b. If the Current Maintainer is not reachable and the Copyright
+     Holder agrees that maintenance of the Work be passed to you,
+     then this takes effect immediately upon announcement.  
+    
+ 4.  If you make an `intention announcement' as described in 2b. above
+     and after three months your intention is challenged neither by
+     the Current Maintainer nor by the Copyright Holder nor by other
+     people, then you may arrange for the Work to be changed so as
+     to name you as the (new) Current Maintainer.
+     
+ 5.  If the previously unreachable Current Maintainer becomes
+     reachable once more within three months of a change completed
+     under the terms of 3b) or 4), then that Current Maintainer must
+     become or remain the Current Maintainer upon request provided
+     they then update their communication data within one month.
+
+A change in the Current Maintainer does not, of itself, alter the fact
+that the Work is distributed under the LPPL license.
+
+If you become the Current Maintainer of the Work, you should
+immediately provide, within the Work, a prominent and unambiguous
+statement of your status as Current Maintainer.  You should also
+announce your new status to the same pertinent community as
+in 2b) above.
+
+
+WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE
+======================================================
+
+This section contains important instructions, examples, and
+recommendations for authors who are considering distributing their
+works under this license.  These authors are addressed as `you' in
+this section.
+
+Choosing This License or Another License
+----------------------------------------
+
+If for any part of your work you want or need to use *distribution*
+conditions that differ significantly from those in this license, then
+do not refer to this license anywhere in your work but, instead,
+distribute your work under a different license.  You may use the text
+of this license as a model for your own license, but your license
+should not refer to the LPPL or otherwise give the impression that
+your work is distributed under the LPPL.
+
+The document `modguide.tex' in the base LaTeX distribution explains
+the motivation behind the conditions of this license.  It explains,
+for example, why distributing LaTeX under the GNU General Public
+License (GPL) was considered inappropriate.  Even if your work is
+unrelated to LaTeX, the discussion in `modguide.tex' may still be
+relevant, and authors intending to distribute their works under any
+license are encouraged to read it.
+
+A Recommendation on Modification Without Distribution
+-----------------------------------------------------
+
+It is wise never to modify a component of the Work, even for your own
+personal use, without also meeting the above conditions for
+distributing the modified component.  While you might intend that such
+modifications will never be distributed, often this will happen by
+accident -- you may forget that you have modified that component; or
+it may not occur to you when allowing others to access the modified
+version that you are thus distributing it and violating the conditions
+of this license in ways that could have legal implications and, worse,
+cause problems for the community.  It is therefore usually in your
+best interest to keep your copy of the Work identical with the public
+one.  Many works provide ways to control the behavior of that work
+without altering any of its licensed components.
+
+How to Use This License
+-----------------------
+
+To use this license, place in each of the components of your work both
+an explicit copyright notice including your name and the year the work
+was authored and/or last substantially modified.  Include also a
+statement that the distribution and/or modification of that
+component is constrained by the conditions in this license.
+
+Here is an example of such a notice and statement:
+
+  %% pig.dtx
+  %% Copyright 2005 M. Y. Name
+  %
+  % This work may be distributed and/or modified under the
+  % conditions of the LaTeX Project Public License, either version 1.3
+  % of this license or (at your option) any later version.
+  % The latest version of this license is in
+  %   http://www.latex-project.org/lppl.txt
+  % and version 1.3 or later is part of all distributions of LaTeX
+  % version 2005/12/01 or later.
+  %
+  % This work has the LPPL maintenance status `maintained'.
+  % 
+  % The Current Maintainer of this work is M. Y. Name.
+  %
+  % This work consists of the files pig.dtx and pig.ins
+  % and the derived file pig.sty.
+
+Given such a notice and statement in a file, the conditions
+given in this license document would apply, with the `Work' referring
+to the three files `pig.dtx', `pig.ins', and `pig.sty' (the last being
+generated from `pig.dtx' using `pig.ins'), the `Base Interpreter'
+referring to any `LaTeX-Format', and both `Copyright Holder' and
+`Current Maintainer' referring to the person `M. Y. Name'.
+
+If you do not want the Maintenance section of LPPL to apply to your
+Work, change `maintained' above into `author-maintained'.  
+However, we recommend that you use `maintained', as the Maintenance
+section was added in order to ensure that your Work remains useful to
+the community even when you can no longer maintain and support it
+yourself.
+
+Derived Works That Are Not Replacements
+---------------------------------------
+
+Several clauses of the LPPL specify means to provide reliability and
+stability for the user community. They therefore concern themselves
+with the case that a Derived Work is intended to be used as a
+(compatible or incompatible) replacement of the original Work. If
+this is not the case (e.g., if a few lines of code are reused for a
+completely different task), then clauses 6b and 6d shall not apply.
+
+
+Important Recommendations
+-------------------------
+
+ Defining What Constitutes the Work
+
+   The LPPL requires that distributions of the Work contain all the
+   files of the Work.  It is therefore important that you provide a
+   way for the licensee to determine which files constitute the Work.
+   This could, for example, be achieved by explicitly listing all the
+   files of the Work near the copyright notice of each file or by
+   using a line such as:
+
+    % This work consists of all files listed in manifest.txt.
+   
+   in that place.  In the absence of an unequivocal list it might be
+   impossible for the licensee to determine what is considered by you
+   to comprise the Work and, in such a case, the licensee would be
+   entitled to make reasonable conjectures as to which files comprise
+   the Work.
+

Added: trunk/Master/texmf-dist/doc/latex/ragged2e/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/ragged2e/README	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/ragged2e/README	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,28 @@
+==========================================================================
+
+The `ragged2e' package
+Release 2019-07-28
+Copyright (C) 1996-2019 Martin Schröder (martin at oneiros.de)
+
+License: LPPL = LaTeX Project Public Licence
+Maintenance Status: unmaintained
+
+Home page:
+  https://gitlab.com/hagenbuch/ragged2e
+
+If you need help for installation please visit:
+  https://texfaq.org/FAQ-inst-miktexstar
+  https://texfaq.org/FAQ-installthings
+  https://texfaq.org/FAQ-privinst
+
+If you need help using these packages please visit:
+  https://latex.org/forum/
+  https://tex.stackexchange.com/
+  https://golatex.de/               (German)
+  https://texwelt.de/               (German)
+
+If you think you may have found a bug in these packages,
+or want to report a suggestion for improvement, please visit
+  https://gitlab.com/hagenbuch/ragged2e/issues
+
+Note that this package is *unmaintained*.


Property changes on: trunk/Master/texmf-dist/doc/latex/ragged2e/README
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/ragged2e/ragged2e.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/ragged2e/ragged2e.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/ragged2e/ragged2e.pdf	2019-07-30 21:11:25 UTC (rev 51779)
+++ trunk/Master/texmf-dist/doc/latex/ragged2e/ragged2e.pdf	2019-07-30 21:15:18 UTC (rev 51780)

Property changes on: trunk/Master/texmf-dist/doc/latex/ragged2e/ragged2e.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/ragged2e/raggtest.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/ragged2e/raggtest.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/ragged2e/raggtest.tex	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,75 @@
+\documentclass{article}
+\usepackage{ragged2e}
+\usepackage{multicol}
+
+\pagestyle{empty}
+
+\newcommand{\Test}{%
+   ``The purpose of this pronunciation exercise is to remind you that
+     \TeX{} is primarily concerned with high-quality technical
+     manuscripts: Its emphasis is on art and technology, as in the
+     underlying Greek word.
+     If you merely want to produce a passably good document ---
+     something acceptable and bascially readable but not really
+     beautiful --- a simpler system will usually suffice.
+     With \TeX{} the goal is to produce the {\sl finest\/} quality:
+     this requires more attention to detail, but you will not find it
+     much harder to go the extra distance, and you'll be able to take
+     special pride in the finished product.''
+}
+
+\setlength{\parindent}{0pt}
+
+\newcommand{\bs}{{\tt\symbol{'134}}}
+
+\begin{document}
+\begin{multicols}{3}
+
+\fussy
+
+\RaggedRight
+
+{\verb|\raggedright|\\
+\raggedright\Test\\[3ex]}
+
+{{\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt plus 1em}\\
+\setlength{\RaggedRightRightskip}{0pt plus 1em}
+\RaggedRight\Test\par\vspace{3ex}}
+
+{{\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt plus 2em}
+\begin{FlushLeft}\Test\end{FlushLeft}}
+
+{{\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt plus 3em}\\
+\setlength{\RaggedRightRightskip}{0pt plus 3em}
+\RaggedRight\Test\par\vspace{3ex}}
+
+{{\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt plus 4em}
+\setlength{\RaggedRightRightskip}{0pt plus 4em}
+\begin{FlushLeft}\Test\end{FlushLeft}}
+
+{{\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt plus 5em}\\
+\setlength{\RaggedRightRightskip}{0pt plus 5em}
+\RaggedRight\Test\par\vspace{3ex}}
+
+{{\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt plus 6em}
+\setlength{\RaggedRightRightskip}{0pt plus 6em}
+\begin{FlushLeft}\Test\end{FlushLeft}}
+
+{{\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt plus 7em}\\
+\setlength{\RaggedRightRightskip}{0pt plus 7em}
+\RaggedRight\Test\par\vspace{3ex}}
+
+{%
+   \setlength{\parfillskip}{0pt}
+   \setlength{\RaggedRightRightskip}{0pt}
+   \setlength{\RaggedRightLeftskip}{0pt plus 2em}
+   \RaggedRight
+   {%
+      {\tt\bs{}RaggedRightRight\-skip} = {\tt 0pt},
+      {\tt\bs{}Rag\-ged\-Right\-Left\-skip} = {\tt 0pt plus 2em},
+      {\tt\bs{}par\-fill\-skip} = {\tt 0pt}\par}
+   \Test\par}
+
+\end{multicols}
+
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/ragged2e/raggtest.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/ragged2e/test-koma.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/ragged2e/test-koma.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/ragged2e/test-koma.tex	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,37 @@
+\nofiles
+\documentclass[a5paper]{scrartcl}
+\usepackage[document,newcommands]{ragged2e}
+\usepackage[T1]{fontenc}
+\usepackage{lmodern}
+\usepackage{microtype}
+\usepackage{geometry}
+
+\newcommand*{\Test}{%
+   \rmfamily
+   ``The purpose of this pronunciation exercise is to remind you that
+     \TeX{} is primarily concerned with high-quality technical
+     manuscripts: Its emphasis is on art and technology, as in the
+     underlying Greek word.
+     If you merely want to produce a passably good document ---
+     something acceptable and bascially readable but not really
+     beautiful --- a simpler system will usually suffice.
+     With \TeX{} the goal is to produce the \textsl{finest} quality:
+     this requires more attention to detail, but you will not find it
+     much harder to go the extra distance, and you'll be able to take
+     special pride in the finished product.''\par
+   \ttfamily
+   ``The purpose of this pronunciation exercise is to remind you that
+     \TeX{} is primarily concerned with high-quality technical
+     manuscripts: Its emphasis is on art and technology, as in the
+     underlying Greek word.
+     If you merely want to produce a passably good document ---
+     something acceptable and bascially readable but not really
+     beautiful --- a simpler system will usually suffice.
+     With \TeX{} the goal is to produce the \textsl{finest} quality:
+     this requires more attention to detail, but you will not find it
+     much harder to go the extra distance, and you'll be able to take
+     special pride in the finished product.''}
+
+\begin{document}
+\Test\footnote{\Test}
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/ragged2e/test-koma.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/ragged2e/test1.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/ragged2e/test1.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/ragged2e/test1.tex	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,61 @@
+\nofiles
+\documentclass{article}
+
+\newcommand*{\Test}[1]{%
+   #1\\
+   \rmfamily
+   ``The purpose of this pronunciation exercise is to remind you that
+     \TeX{} is primarily concerned with high-quality technical
+     manuscripts: Its emphasis is on art and technology, as in the
+     underlying Greek word.
+     If you merely want to produce a passably good document ---
+     something acceptable and bascially readable but not really
+     beautiful --- a simpler system will usually suffice.
+     With \TeX{} the goal is to produce the \textsl{finest} quality:
+     this requires more attention to detail, but you will not find it
+     much harder to go the extra distance, and you'll be able to take
+     special pride in the finished product.''\par
+   \ttfamily
+   ``The purpose of this pronunciation exercise is to remind you that
+     \TeX{} is primarily concerned with high-quality technical
+     manuscripts: Its emphasis is on art and technology, as in the
+     underlying Greek word.
+     If you merely want to produce a passably good document ---
+     something acceptable and bascially readable but not really
+     beautiful --- a simpler system will usually suffice.
+     With \TeX{} the goal is to produce the \textsl{finest} quality:
+     this requires more attention to detail, but you will not find it
+     much harder to go the extra distance, and you'll be able to take
+     special pride in the finished product.''\par
+   \medskip
+   }
+\usepackage{multicol}
+\setcounter{collectmore}{2}
+\setcounter{columnbadness}{5000}
+
+\pagestyle{empty}
+
+\usepackage{ragged2e}
+
+\begin{document}
+\begin{multicols}{3}
+\fussy
+{\centering\Test{centering}}
+{\Centering\Test{Centering}}
+\newpage
+{\raggedleft\Test{raggedleft}}
+{\RaggedLeft\Test{RaggedLeft}}
+\newpage
+{\raggedright\Test{raggedright}}
+{\RaggedRight\Test{RaggedRight}}
+\newpage
+\begin{center}\Test{center}\end{center}
+\begin{Center}\Test{Center}\end{Center}
+\newpage
+\begin{flushleft}\Test{flushleft}\end{flushleft}
+\begin{FlushLeft}\Test{FlushLeft}\end{FlushLeft}
+\newpage
+\begin{flushright}\Test{flushright}\end{flushright}
+\begin{FlushRight}\Test{Flushright}\end{FlushRight}
+\end{multicols}
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/ragged2e/test1.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/ragged2e/test2.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/ragged2e/test2.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/ragged2e/test2.tex	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,61 @@
+\nofiles
+\documentclass{article}
+
+\newcommand*{\Test}[1]{%
+   #1\\
+   \rmfamily
+   ``The purpose of this pronunciation exercise is to remind you that
+     \TeX{} is primarily concerned with high-quality technical
+     manuscripts: Its emphasis is on art and technology, as in the
+     underlying Greek word.
+     If you merely want to produce a passably good document ---
+     something acceptable and bascially readable but not really
+     beautiful --- a simpler system will usually suffice.
+     With \TeX{} the goal is to produce the \textsl{finest} quality:
+     this requires more attention to detail, but you will not find it
+     much harder to go the extra distance, and you'll be able to take
+     special pride in the finished product.''\par
+   \ttfamily
+   ``The purpose of this pronunciation exercise is to remind you that
+     \TeX{} is primarily concerned with high-quality technical
+     manuscripts: Its emphasis is on art and technology, as in the
+     underlying Greek word.
+     If you merely want to produce a passably good document ---
+     something acceptable and bascially readable but not really
+     beautiful --- a simpler system will usually suffice.
+     With \TeX{} the goal is to produce the \textsl{finest} quality:
+     this requires more attention to detail, but you will not find it
+     much harder to go the extra distance, and you'll be able to take
+     special pride in the finished product.''\par
+   \medskip
+   }
+\usepackage{multicol}
+\setcounter{collectmore}{2}
+\setcounter{columnbadness}{5000}
+
+\pagestyle{empty}
+
+\usepackage[OriginalParameters]{ragged2e}
+
+\begin{document}
+\begin{multicols}{3}
+\fussy
+{\centering\Test{centering}}
+{\Centering\Test{Centering}}
+\newpage
+{\raggedleft\Test{raggedleft}}
+{\RaggedLeft\Test{RaggedLeft}}
+\newpage
+{\raggedright\Test{raggedright}}
+{\RaggedRight\Test{RaggedRight}}
+\newpage
+\begin{center}\Test{center}\end{center}
+\begin{Center}\Test{Center}\end{Center}
+\newpage
+\begin{flushleft}\Test{flushleft}\end{flushleft}
+\begin{FlushLeft}\Test{FlushLeft}\end{FlushLeft}
+\newpage
+\begin{flushright}\Test{flushright}\end{flushright}
+\begin{FlushRight}\Test{Flushright}\end{FlushRight}
+\end{multicols}
+\end{document}


Property changes on: trunk/Master/texmf-dist/doc/latex/ragged2e/test2.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/ragged2e/Makefile
===================================================================
--- trunk/Master/texmf-dist/source/latex/ragged2e/Makefile	                        (rev 0)
+++ trunk/Master/texmf-dist/source/latex/ragged2e/Makefile	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,31 @@
+doc: ragged2e.pdf ragged2e.dvi
+ragged2e.dvi: ragged2e.pdf
+	latex ragged2e.drv
+
+ragged2e.pdf:	ragged2e.dtx ragged2e.drv ragged2e.sty
+	pdflatex -draftmode ragged2e.drv
+	pdflatex -draftmode ragged2e.drv
+	makeindex -s gind.ist -t ragged2e.ind.ilg ragged2e ragged2e.idx
+	makeindex -s gglo.ist -t ragged2e.gls.ilg -o ragged2e.gls ragged2e ragged2e.glo
+	pdflatex ragged2e.drv
+
+ragged2e.drv ragged2e.sty:	ragged2e.dtx ragged2e.ins
+	latex ragged2e.ins
+
+ragged2e.zip:	ragged2e.dtx ragged2e.pdf ragged2e.ins
+	$(eval RELEASEDIR := $(shell mktemp -d))
+	@cp -a ragged2e.dtx ragged2e.pdf ragged2e.ins $(RELEASEDIR)
+	@cp .git/gitHeadInfo.gin $(RELEASEDIR)/gitHeadLocal.gin
+	@sed -i 's/usepackage{gitinfo2}/usepackage[release]{gitinfo2}/g' $(RELEASEDIR)/ragged2e.dtx
+	@zip --junk-paths ragged2e.zip $(RELEASEDIR)/ragged2e.dtx $(RELEASEDIR)/ragged2e.pdf $(RELEASEDIR)/ragged2e.ins $(RELEASEDIR)/gitHeadLocal.gin
+	@rm -rf $(RELEASEDIR)
+
+.PHONY:	clean clobber
+
+clean: 
+	rm -f *.aux *.toc *.glo *.gls *.hd *.idx *.ilg *.ind *.log
+
+clobber:	clean
+	rm -f *.dvi *.pdf *.sty *.drv *.zip
+
+# vim:noexpandtab


Property changes on: trunk/Master/texmf-dist/source/latex/ragged2e/Makefile
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.drv
===================================================================
--- trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.drv	                        (rev 0)
+++ trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.drv	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,117 @@
+%%
+%% This is file `ragged2e.drv',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ragged2e.dtx  (with options: `driver')
+%% 
+%% Copyright 1996..2019 Martin Schroeder.
+%% 
+%% This file is part of the Ragged2e package
+%% -----------------------------------------
+%% 
+%% To produce the documentation in the way you like you are allowed
+%% to change this driver file.
+%% 
+\NeedsTeXFormat{LaTeX2e}[2017/03/29]
+\ProvidesFile{ragged2e.drv}
+      [2019/03/26 v1.09 Driver for ragged2e Package (MS)]
+\documentclass[a4paper]{ltxdoc}
+\usepackage[T1]{fontenc}
+\usepackage{lmodern}
+\usepackage{microtype}
+\usepackage{url}        % in latex/contrib/other/misc
+\usepackage{array}
+\usepackage{tabularx}
+\usepackage{gitinfo2}
+\usepackage{hypdoc}
+\usepackage{geometry}
+\IfFileExists{booktabs.sty}{%
+  \usepackage{booktabs}%
+  }{%
+  \PackageWarning{ragged2e}%
+      {booktabs.sty is missing.\MessageBreak
+       I'm emulating the needed commands, but you should\MessageBreak
+       install it for better results}%
+  \let\toprule\hline
+  \let\midrule\hline
+  \let\bottomrule\hline
+  }
+\IfFileExists{footmisc.sty}{%
+    \usepackage[document]{ragged2e}[2003/01/26]
+  }{%
+    \PackageWarning{ragged2e}%
+      {footmisc.sty is missing.\MessageBreak
+       You should install it for better results}%
+    \usepackage[raggedrightboxes]{ragged2e}[2003/01/26]
+  }
+\setlength{\RaggedRightRightskip}{0pt plus 4em}%
+\GetFileInfo{ragged2e.sty}
+\EnableCrossrefs
+\RecordChanges    % Gather update information
+%%\DisableCrossrefs% Say \DisableCrossrefs if index is ready
+\CodelineIndex    % Index code by line number
+%%\OldMakeIndex   % use if your MakeIndex is pre-v2.9
+\setcounter{IndexColumns}{2}
+\makeatletter
+  \renewenvironment{theglossary}{%
+  \glossary at prologue
+  \setlength\emergencystretch{5em}
+  \GlossaryParms \let\item\@idxitem \ignorespaces}{}
+  \makeatother
+\setlength{\IndexMin}{40ex}
+\setlength{\columnseprule}{.4pt}
+\addtolength{\oddsidemargin}{3cm}
+\addtolength{\textwidth}{-3cm}
+\begin{document}
+   \DocInput{ragged2e.dtx}
+   \PrintIndex\PrintChanges
+   %  Make sure that the index is not printed twice
+   %  (ltxdoc.cfg might have a second \PrintIndex command)
+   \let\PrintChanges\relax
+   \let\PrintIndex\relax
+\end{document}
+%% Copyright 1996..2019 by Martin Schr\"oder.
+%% \CharacterTable
+%% {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%%  Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%%  Digits        \0\1\2\3\4\5\6\7\8\9
+%%  Exclamation   \!     Double quote  \"     Hash (number) \#
+%%  Dollar        \$     Percent       \%     Ampersand     \&
+%%  Acute accent  \'     Left paren    \(     Right paren   \)
+%%  Asterisk      \*     Plus          \+     Comma         \,
+%%  Minus         \-     Point         \.     Solidus       \/
+%%  Colon         \:     Semicolon     \;     Less than     \<
+%%  Equals        \=     Greater than  \>     Question mark \?
+%%  Commercial at \@     Left bracket  \[     Backslash     \\
+%%  Right bracket \]     Circumflex    \^     Underscore    \_
+%%  Grave accent  \`     Left brace    \{     Vertical bar  \|
+%%  Right brace   \}     Tilde         \~}
+%%
+%% \iffalse meta-comment
+%% ===================================================================
+%%  @LaTeX-style-file{
+%%     author          = {Martin Schr\"oder},
+%%     version         = "2.2",
+%%     date            = "26 Mar 2019",
+%%     filename        = "ragged2e.sty",
+%%     address         = {Martin Schr\"oder
+%%                        Unterstra\"se 31
+%%                        47051 Duisburg
+%%                        Germany}
+%%     email           = "martin at oneiros.de",
+%%     docstring       = "LaTeX package which defines new commands
+%%                        \Centering, \RaggedLeft, \RaggedRight and
+%%                        \justifying and new environments Center,
+%%                        FlushLeft, FlushRight and justify, which
+%%                        set ragged text and are easily configurable
+%%                        to allow hyphenation.
+%%                        Uses the everysel package.
+%%                       "
+%%  }
+%% ===================================================================
+%% \fi
+\endinput
+%%
+%% End of file `ragged2e.drv'.


Property changes on: trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.drv
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.dtx	                        (rev 0)
+++ trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.dtx	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,1397 @@
+% \iffalse
+\NeedsTeXFormat{LaTeX2e}[2017/03/29]
+%<package>\ProvidesPackage{ragged2e}
+%<package>         [2019/07/28 v2.2 ragged2e Package (MS)]
+%
+%<*driver>
+\ProvidesFile{ragged2e.drv}
+      [2019/03/26 v1.09 Driver for ragged2e Package (MS)]
+\documentclass[a4paper]{ltxdoc}
+\usepackage[T1]{fontenc}
+\usepackage{lmodern}
+\usepackage{microtype}
+\usepackage{url}        % in latex/contrib/other/misc
+\usepackage{array}
+\usepackage{tabularx}
+\usepackage{gitinfo2}
+\usepackage{hypdoc}
+\usepackage{geometry}
+% booktabs.sty is in latex/contrib/supported/booktab
+\IfFileExists{booktabs.sty}{%
+  \usepackage{booktabs}%
+  }{%
+  \PackageWarning{ragged2e}%
+      {booktabs.sty is missing.\MessageBreak
+       I'm emulating the needed commands, but you should\MessageBreak
+       install it for better results}%
+  \let\toprule\hline
+  \let\midrule\hline
+  \let\bottomrule\hline
+  }
+\IfFileExists{footmisc.sty}{%
+    \usepackage[document]{ragged2e}[2003/01/26]
+  }{%
+    \PackageWarning{ragged2e}%
+      {footmisc.sty is missing.\MessageBreak
+       You should install it for better results}%
+    \usepackage[raggedrightboxes]{ragged2e}[2003/01/26]
+  }
+\setlength{\RaggedRightRightskip}{0pt plus 4em}%
+\GetFileInfo{ragged2e.sty}
+\EnableCrossrefs
+\RecordChanges    % Gather update information
+%%\DisableCrossrefs% Say \DisableCrossrefs if index is ready
+\CodelineIndex    % Index code by line number
+%\OnlyDescription  % comment out for implementation details
+%%\OldMakeIndex   % use if your MakeIndex is pre-v2.9
+\setcounter{IndexColumns}{2}
+% onecolumn glossary
+\makeatletter
+  \renewenvironment{theglossary}{%
+  \glossary at prologue
+  \setlength\emergencystretch{5em}
+  \GlossaryParms \let\item\@idxitem \ignorespaces}{}
+  \makeatother
+\setlength{\IndexMin}{40ex}
+\setlength{\columnseprule}{.4pt}
+\addtolength{\oddsidemargin}{3cm}
+\addtolength{\textwidth}{-3cm}
+\begin{document}
+   \DocInput{ragged2e.dtx}
+   \PrintIndex\PrintChanges
+   %  Make sure that the index is not printed twice
+   %  (ltxdoc.cfg might have a second \PrintIndex command)
+   \let\PrintChanges\relax
+   \let\PrintIndex\relax
+\end{document}
+%</driver>
+%
+%% Copyright 1996..2019 by Martin Schr\"oder.
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+%   http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `unmaintained'.
+% 
+% This work consists of the files ragged2e.dtx and ragged2e.ins
+% and the derived file ragged2e.sty.
+%
+% \fi
+%
+% \CheckSum{478}
+%
+%% \CharacterTable
+%% {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%%  Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%%  Digits        \0\1\2\3\4\5\6\7\8\9
+%%  Exclamation   \!     Double quote  \"     Hash (number) \#
+%%  Dollar        \$     Percent       \%     Ampersand     \&
+%%  Acute accent  \'     Left paren    \(     Right paren   \)
+%%  Asterisk      \*     Plus          \+     Comma         \,
+%%  Minus         \-     Point         \.     Solidus       \/
+%%  Colon         \:     Semicolon     \;     Less than     \<
+%%  Equals        \=     Greater than  \>     Question mark \?
+%%  Commercial at \@     Left bracket  \[     Backslash     \\
+%%  Right bracket \]     Circumflex    \^     Underscore    \_
+%%  Grave accent  \`     Left brace    \{     Vertical bar  \|
+%%  Right brace   \}     Tilde         \~}
+%%
+%% \iffalse meta-comment
+%% ===================================================================
+%%  @LaTeX-style-file{
+%%     author          = {Martin Schr\"oder},
+%%     version         = "2.2",
+%%     date            = "26 Mar 2019",
+%%     filename        = "ragged2e.sty",
+%%     address         = {Martin Schr\"oder
+%%                        Unterstra\"se 31
+%%                        47051 Duisburg
+%%                        Germany}
+%%     email           = "martin at oneiros.de",
+%      codetable       = "ISO/ASCII",
+%      keywords        = "raggedright",
+%      dependences     = "everysel",
+%      supported       = "yes",
+%%     docstring       = "LaTeX package which defines new commands
+%%                        \Centering, \RaggedLeft, \RaggedRight and
+%%                        \justifying and new environments Center,
+%%                        FlushLeft, FlushRight and justify, which
+%%                        set ragged text and are easily configurable
+%%                        to allow hyphenation.  
+%%                        Uses the everysel package.
+%%                       "
+%%  }
+%% ===================================================================
+%% \fi
+%
+%  \pagestyle{headings}
+%
+%  \newcommand*{\file}[1]     {\texttt{#1}}
+%  \newcommand{\plain}        {\texttt{plain}}
+%  \newcommand{\bs}           {\texttt{\symbol{'134}}}
+%  \newcommand*{\env}[1]      {\textsf{#1}}
+%  \newcommand*{\option}[1]   {\textsf{#1}}
+%  \newcommand*{\package}[1]  {\textsf{#1}}
+%  \newcommand*{\NEWfeature}[1]{%
+%     \hskip 1sp \marginpar{\small\sffamily\raggedright
+%     New feature\\#1}}
+%  \newcommand*{\NEWdescription}[1]{%
+%     \hskip 1sp \marginpar{\small\sffamily\raggedright
+%     New description\\#1}}
+%
+%  \changes{v1.00}{1996/05/30}{New from \package{raggedright} V 1.21}
+%  \changes{v1.01}{1998/08/09}{Documentation improved}
+%  \changes{v1.02}{1999/06/08}{Moved to LPPL}
+%  \changes{v2.00}{2003/01/04}{Incorporated \package{raggedr}}
+%  \changes{v2.2}{2019/03/26}{Require a new version of \LaTeX (2017/03/29)}
+%
+%  \hyphenation{flush-left rag-ged rag-ged-right}
+%
+%  \newenvironment{Quote}{^^A
+%     \begin{quote}^^A
+%        \small^^A
+%        \fussy^^A
+%     }{^^A
+%        \end{quote}^^A
+%     }
+%
+%  \renewcommand{\thefootnote}{\ensuremath{\fnsymbol{footnote}}}
+%
+% ^^A -----------------------------
+%
+%  \changes{v2.2}{2019/03/26}{Move to git/gitlab, use \package{svninfo2}}
+%
+%  \title{\unskip
+%     The \textsf{ragged2e}-package^^A
+%     \thanks{^^A
+%        The version number of this file is \fileversion, 
+%        revision~\#\gitAbbrevHash, last revised \protect\gitAuthorIsoDate.}^^A
+%     }
+%  \author{Martin Schr\"oder\\[0.5ex]
+%          \normalsize  Unterstra\ss{}e 31\\
+%          \normalsize  47051 Duisburg\\
+%          \normalsize  Germany\\
+%          \normalsize  \texttt{martin at oneiros.de}\\
+%          \normalsize  \url{https://gitlab.com/hagenbuch/ragged2e}}
+%  \date{\filedate}
+%  \maketitle
+%
+% ^^A -----------------------------
+%
+%  \begin{abstract}
+%     This package provides new commands and environments for setting 
+%     ragged text which are easy to configure to allow hyphenation.
+%     An earlier attempt to do this was the style
+%     \package{raggedright}\,\cite{raggedri} by the same author.
+%  \end{abstract}
+%
+%
+% ^^A -----------------------------
+%
+%  \tableofcontents
+%
+% ^^A -----------------------------
+%
+%  \begin{multicols}{2}
+%  \fussy
+%
+%  \setlength{\parskip}{^^A
+%     .3\baselineskip plus.05\baselineskip minus.05\baselineskip}
+%
+%  \section{Status of this package}
+%  \changes{v2.2}{2019/07/28}{Change maintenance status of package}
+%  ^^A
+%  This package is \emph{unmaintained}. 
+%
+%  I will not actively work on this package anymore. I \emph{may}
+%  merge merge requests to the repository on Gitlab
+%  (\url{https://gitlab.com/hagenbuch/ragged2e}).  If you want to
+%  become the maintainer of this package, contact me and I may hand
+%  over the repository to you. Or fork the package on Gitlab.
+%
+%  I will \emph{not} upload new versions to CTAN.
+%
+%  \section{The problem}
+%  ^^A
+%  \LaTeX{} has three commands (\cs{centering}, \cs{raggedleft}, and 
+%  \cs{raggedright}) and three environments (\env{center},
+%  \env{flushleft}, and \env{flushright}) to typeset ragged text.
+%  The environments are based upon the commands (\env{center} uses
+%  \cs{centering}, \env{flushleft} \cs{raggedright}, and 
+%  \env{flushright} \cs{raggedleft}).
+%
+%  These commands have, however, one serious flaw: they render
+%  hyphenation almost impossible, and thus the text looks \emph{too}
+%  ragged, as the following example shows:
+%  \setcounter{unbalance}{2}
+%  \begin{multicols}{2}
+%     \small\fussy
+%     \raggedright
+%     \cs{raggedright}:\\
+%   ``The \LaTeX{} document preparation system is a special version
+%     of Donald Knuth's \TeX{} program.
+%     \TeX{} is a sophisticated program designed to produce
+%     high-quality typesetting, especially for mathematical text.''
+%     \cite[p\@. xiii]{lamport86}
+%
+%     \newpage
+%     \RaggedRight
+%     \cs{RaggedRight}:\\
+%   ``The \LaTeX{} document preparation system is a special version
+%     of Donald Knuth's \TeX{} program.
+%     \TeX{} is a sophisticated program designed to produce
+%     high-quality typesetting, especially for mathematical text.''
+%     \cite[p\@. xiii]{lamport86}
+%  \end{multicols}
+%
+%  \setcounter{unbalance}{0}
+%
+% ^^A -----------------------------
+%
+%  \section{Old ``solutions''}
+%
+% ^^A -----------------------------
+%
+%  \subsection{\LaTeX}
+%  ^^A
+%  \LaTeX{} defines e.\,g.\ \cs{raggedright} as follows:
+%    \begin{macrocode}
+%<*latex>
+\def\raggedright{%
+   \let\\=\@centercr
+   \@rightskip\@flushglue
+   \rightskip\@rightskip
+   \leftskip\z@
+   \parindent\z@}
+%    \end{macrocode}
+%  Initially, \cs{@flushglue} is defined as
+%    \begin{macrocode}
+\@flushglue = 0pt plus 1fil
+%</latex>
+%    \end{macrocode}
+%
+%  Thus the \cs{rightskip} is set to |0pt plus 1fil|.
+%  Knuth, however warns \cite[p\@. 101]{KnuthTeXa}:
+%  \begin{Quote}
+%   ``For example, a person can set \cs{rightskip=0pt plus 1fil},
+%     and every line will be filled with space to the right.
+%     But this isn't a particularly good way to make ragged-right
+%     margins, because the infinte stretchability will assign zero
+%     badness to lines that are very short.
+%     To do a decent job of ragged-right setting, the trick is to set
+%     \cs{rightskip} so that it will stretch enough to make line breaks
+%     possible, yet not too much, because short lines should be
+%     considered bad.
+%     Furthermore the spaces between words should be fixed so that
+%     they do not stretch or shrink.''
+%  \end{Quote}
+%
+% ^^A -----------------------------
+%
+%  \subsection{\plain{}}
+%  ^^A
+%  \plain{} \TeX{} defines an special version of
+%  \cs{raggedright}, which operates the way Knuth describes it;
+%  but which can not be used whith \LaTeX, because \LaTeX{} redefines
+%  \cs{raggedright}.
+%    \begin{macrocode}
+%<*plain>
+\def\raggedright{%
+   \rightskip\z@ plus2em
+   \spaceskip.3333em
+   \xspaceskip.5em\relax}
+%    \end{macrocode}
+%
+%  \plain{} provides also a version of \cs{raggedright} for typewriter
+%  fonts
+%    \begin{macrocode}
+\def\ttraggedright{%
+   \tt
+   \rightskip\z@ plus2em\relax}
+%</plain>
+%    \end{macrocode}
+%
+%  \end{multicols}
+%  \setlength{\parskip}{^^A
+%     .3\baselineskip plus.05\baselineskip minus.05\baselineskip}
+%
+% ^^A -----------------------------
+%
+%  \section{Our solution}
+%
+%  Since the \plain{} solution can not be used with \LaTeX, we have to
+%  redefine it and make it possible to configure it for personal
+%  preferences.
+%
+% ^^A -----------------------------
+%
+%  \subsection{The macros}
+%  ^^A
+%  \DescribeMacro{\Centering}
+%  \DescribeMacro{\RaggedLeft}
+%  \DescribeMacro{\RaggedRight}
+%  \cs{Centering}, \cs{RaggedLeft}, and \cs{RaggedRight} can be used in 
+%  the same way as \cs{centering}, \cs{raggedleft}, and 
+%  \cs{raggedright}:
+%  Just type the command, and after that the whole text will be set
+%  centered, ragged-left or ragged-right.
+%
+%  For example, we switched on \cs{RaggedRight} on the top of this
+%  text, and consequently this text was set
+%  ragged-right.\footnote{^^A
+%    For this documentation we also set \cs{RaggedRightRightskip}
+%    higher than usual (|0pt plus 4em| instead of |0pt plus 2em|)
+%    because of all the long command names which make linebreaking
+%    difficult.}
+%
+%  \DescribeMacro{\justifying}
+%  \NEWfeature{2003/01/04}%
+%  \cs{justifying} switches back to justified text after ragged text
+%  has been switched on.
+%  \changes{v2.00}{2003/01/04}{New command \cs{justifying}}
+%
+%  The new commands \cs{Centering}, \cs{RaggedLeft}, and
+%  \cs{RaggedRight} are fully compatible with their counterparts in
+%  \LaTeX, but implement the \plain{} solution and can be easily
+%  configured using the following parameters:
+%
+% ^^A -----------------------------
+%
+%  \subsection{The parameters}
+%  ^^A
+%  \changes{v2.00}{2003/01/25}{Removed \cs{RaggedSpaceskip} and
+%                              \cs{RaggedXSpaceskip}}%
+%  \begin{tabularx}{\linewidth}{lX}\toprule
+%     Command           & Uses\tabularnewline \midrule
+%     \cs{Centering}    & \cs{CenteringLeftskip}, 
+%                         \cs{CenteringRightskip},
+%                         \cs{CenteringParfillskip},
+%                         \cs{CenteringParindent}
+%                         \tabularnewline
+%     \cs{RaggedLeft}   & \cs{RaggedLeftLeftskip}, 
+%                         \cs{RaggedLeftRightskip},
+%                         \cs{RaggedLeftParfillskip},
+%                         \cs{RaggedLeftParindent}
+%                         \tabularnewline
+%     \cs{RaggedRight}  & \cs{RaggedRightLeftskip}, 
+%                         \cs{RaggedRightRightskip},
+%                         \cs{RaggedRightParfillskip},
+%                         \cs{RaggedRightParindent}
+%                         \tabularnewline
+%     \cs{justifying}   & \cs{JustifyingParfillskip}, 
+%                         \cs{JustifyingParindent} 
+%                         \tabularnewline
+%     \bottomrule
+%  \end{tabularx}
+%
+%  All Parameters can be set with \cs{setlength}, e.\,g.\
+%  \begin{Quote}
+%     |\setlength{\RaggedRightRightskip}{0pt plus 1em}|
+%  \end{Quote}
+%  sets \cs{RaggedRightRightskip} to |0pt plus 1em|.
+%
+%  \DescribeMacro{\CenteringLeftskip}
+%  \DescribeMacro{\RaggedLeftLeftskip}
+%  \DescribeMacro{\RaggedRightLeftskip}
+%  These are the \cs{leftskip}s inserted by \cs{Centering}, 
+%  \cs{RaggedLeft}, and \cs{RaggedRight}.
+%  \begin{Quote}
+%     \setlength{\tabcolsep}{.25em}
+%     \begin{tabularx}{\linewidth}{lX}
+%     ``\cs{leftskip} & (glue at left of justified lines)''
+%     \cite[p.~274]{KnuthTeXa}
+%     \end{tabularx}
+%  \end{Quote}
+%  \cs{leftskip} must be set to a finite value, to make hyphenation
+%  possible.
+%  Setting it to infinite values like |0pt plus 1fil| makes
+%  hyphenation almost impossible.
+%
+%  \DescribeMacro{\CenteringRightskip}
+%  \DescribeMacro{\RaggedLeftRightskip}
+%  \DescribeMacro{\RaggedRightRightskip}
+%  These are the \cs{rightskip}s inserted by \cs{Centering},
+%  \cs{RaggedLeft}, and \cs{RaggedRight}.
+%  \begin{Quote}
+%     \setlength{\tabcolsep}{.25em}
+%     \begin{tabularx}{\linewidth}{lX}
+%     ``\cs{rightskip} & (glue at right of justified lines)''
+%     \cite[p.~274]{KnuthTeXa}
+%     \end{tabularx}
+%  \end{Quote}
+%  \cs{rightskip} must be set to a finite value, to make hyphenation
+%  possible.
+%  Setting it to infinite values like |0pt plus 1fil| makes
+%  hyphenation almost impossible.
+%
+%  \DescribeMacro{\CenteringParfillskip}
+%  \DescribeMacro{\RaggedLeftParfillskip}
+%  \DescribeMacro{\RaggedRightParfillskip}
+%  \DescribeMacro{\JustifyingParfillskip}
+%  These are the \cs{parfillskip}s inserted by \cs{Centering},
+%  \cs{RaggedLeft}, \cs{RaggedRight}, and \cs{justifying}.
+%  \begin{Quote}
+%     \setlength{\tabcolsep}{.25em}
+%     \begin{tabularx}{\linewidth}{lX}
+%     ``\cs{parfillskip} & (additional \cs{rightskip} at end of paragraphs)''
+%     \cite[p.~274]{KnuthTeXa}
+%     \end{tabularx}
+%  \end{Quote}
+%  The normal setting for \cs{parfillskip} is |0pt plus 1fil|; the 
+%  parameters are provided for testing combinations of 
+%  \cs{}\{|left|$\mid$|right|\}|skip| and \cs{parfillskip}.
+%
+%  \DescribeMacro{\CenteringParindent}
+%  \DescribeMacro{\RaggedLeftParindent}
+%  \DescribeMacro{\RaggedRightParindent}
+%  \DescribeMacro{\JustifyingParindent}
+%  These are the \cs{parindent}s used by \cs{Centering},
+%  \cs{RaggedLeft}, \cs{RaggedRight}, and \cs{justifying}.
+%  \begin{Quote}
+%     \setlength{\tabcolsep}{.25em}
+%     \begin{tabularx}{\linewidth}{lX}
+%     ``\cs{parindent} & (width of \cs{indent})''
+%     \cite[p.~274]{KnuthTeXa}
+%     \end{tabularx}
+%  \end{Quote}
+%  \cs{parindent} is the indent of the first line of a paragraph and
+%  should be set to |0pt|, since indented lines in ragged text
+%  do not look good.
+%
+%  The parameters have the following initial setting:
+%  \begin{center}
+%     \begin{tabularx}{\linewidth}{l>{\ttfamily}X>{\ttfamily}X}\toprule
+%        Parameter                  & \normalfont\LaTeX{} setting
+%              & \normalfont\package{ragged2e} setting\footnotemark\\
+%        \midrule
+%        \cs{CenteringLeftskip}     & 0pt plus 1fil
+%              & 0pt plus 2em\\
+%        \cs{RaggedLeftLeftskip}    & 0pt plus 1fil
+%              & 0pt plus 2em\\
+%        \cs{RaggedRightLeftskip}   & 0pt plus 0pt minus 0pt
+%              & 0pt plus 0pt minus 0pt\\
+%        \cs{CenteringRightskip}    & 0pt plus 1fil
+%              & 0pt plus 2em\\
+%        \cs{RaggedLeftRightskip}   & 0pt plus 0pt minus 0pt
+%              & 0pt plus 0pt minus 0pt  \\
+%        \cs{RaggedRightRightskip}  & 0pt plus 1fil
+%              & 0pt plus 2em\\
+%        \cs{CenteringParfillskip}  & 0pt plus 0pt minus 0pt
+%              & 0pt plus 0pt minus 0pt  \\
+%        \cs{RaggedLeftParfillskip} & 0pt plus 0pt minus 0pt
+%              & 0pt plus 0pt minus 0pt  \\
+%        \cs{RaggedRightParfillskip}& 0pt plus 1fil
+%              & 0pt plus 1fil\\
+%        \cs{CenteringParindent}    & 0pt
+%              & 0pt         \\
+%        \cs{RaggedLeftParindent}   & 0pt
+%              & 0pt         \\
+%        \cs{RaggedRightParindent}  & 0pt
+%              & 0pt         \\
+%        \cs{JustifyingParfillskip} &
+%              & 0pt plus 1fil \tabularnewline
+%        \cs{JustifyingParindent}   &
+%              & \cs{parindent} \tabularnewline
+%        \bottomrule
+%     \end{tabularx}
+%  \end{center}
+%  \footnotetext{^^A
+%     For proportional and monospaced fonts.}
+%
+% ^^A -----------------------------
+%
+%  \subsection{The environments}
+%  ^^A
+%  \DescribeEnv{Center}
+%  \env{Center} is fully compatible with \env{center}, but uses
+%  \cs{Centering} instead of \cs{centering}.
+%
+%  \DescribeEnv{FlushLeft}
+%  \env{FlushLeft} is fully compatible with \env{flushleft}, but uses
+%  \cs{RaggedRight} instead of \cs{raggedright}.
+%
+%  \DescribeEnv{FlushRight}
+%  \env{FlushRight} is fully compatible with \env{flushright}, but uses
+%  \cs{RaggedLeft} instead of \cs{raggedleft}.
+%
+%  \DescribeEnv{justify}
+%  \NEWfeature{2003/01/04}%
+%  \env{justify} is like the other environments but uses \cs{justifying}.
+%  \changes{v2.00}{2003/01/04}{New environment \env{justify}}
+%
+%  E.\,g.\ \env{FlushLeft} can be used in the same way as
+%  \env{flushleft}:
+%  \begin{verse}
+%     \small
+%     |\begin{FlushLeft}|\\
+%     \meta{text, which is set ragged-right}\\
+%     |\end{FlushLeft}|
+%  \end{verse}
+%
+% ^^A -----------------------------
+%
+%  \section{Options}
+%  ^^A
+%  This package has the following options:
+%  \changes{v2.00}{2003/01/04}{Allow all-lowercase versions of
+%                              options and removed documentation of
+%                              mixed-case versions.} 
+%  \nopagebreak
+%  \begin{description}
+%     \item[\normalfont\option{originalcommands}]
+%        The \LaTeX-commands \cs{centering}, \cs{raggedleft}, and 
+%        \cs{raggedright} and the \LaTeX-environments \env{center}, 
+%        \env{flushleft}, and \env{flushright} remain unchanged.\newline
+%        It is the default.
+%     \item[\normalfont\option{newcommands}]
+%        The \LaTeX-commands \cs{centering}, \cs{raggedleft}, and 
+%        \cs{raggedright} and the \LaTeX-environments \env{center}, 
+%        \env{flushleft}, and \env{flushright} are set equal to their
+%        counterparts defined by \package{ragged2e}.
+%        Thus \cs{raggedright} invokes \cs{RaggedRight}.
+%        The original commands can be accessed unter the Names 
+%        \cs{LaTeX}\meta{original name}, e.\,g.\ \cs{LaTeXraggedright}.
+%     \item[\normalfont\option{originalparameters}]
+%        The parameters used by the commands implemented by 
+%        \package{ragged2e} are initialized with the default settings 
+%        used by \LaTeX.
+%     \item[\normalfont\option{newparameters}]
+%        The parameters used by the commands implemented by 
+%        \package{ragged2e} are initialized with the default settings 
+%        defined by \package{ragged2e}.\newline
+%        It is the default.
+%     \item[\normalfont\option{raggedrightboxes}]
+%        \changes{v2.00}{2003/01/04}{New option \option{raggedrightboxes}}
+%        \NEWfeature{2003/01/18}
+%        All \cs{parbox}es, \env{minipage}s, \cs{marginpar}s and
+%        |p|-columns of \env{tabular}s and \env{array}s are
+%        automatically set using \cs{RaggedRight}.
+%     \item[\normalfont\option{footnotes}]
+%        \changes{v2.00}{2003/01/18}{New option \option{footnotes}}
+%        \NEWfeature{2003/01/18}
+%        This options sets all footnotes ragged-right by loading the
+%        \package{footmisc}\,\cite{footmisc} package with the
+%        \option{ragged} option.
+%     \item[\normalfont\option{document}]
+%        \changes{v2.00}{2003/01/18}{New option \option{document}}
+%        \NEWfeature{2003/01/18}
+%        This options sets the complete document ragged-right by
+%        executing a \cs{RaggedRight} at \cs{begin\{document\}} and
+%        the \option{raggedrightboxes} and the \option{footnotes}
+%        options.
+%  \end{description}
+%  All other options are passed to the \package{footmisc} package if
+%  the \option{footnotes} option is selected.
+%
+%
+% ^^A -----------------------------
+%
+%  \section{Required packages}
+%  ^^A
+%  \changes{v2.1}{2003/10/08}{document that \option{document} needs
+%   \package{footmisc}}
+%  This package requires the following packages:
+%  \begin{description}
+%     \item[\normalfont\package{everysel}\,\cite{everysel}]
+%        It is used to distinguish between monospaced and proportional
+%        fonts.
+%     \item[\normalfont\package{footmisc}\,\cite{footmisc}]
+%        It is used by the \option{footnotes} and the
+%        \option{document} options; at least version~5.00 (2002/08/28)
+%        is needed.
+%  \end{description}
+%
+%
+% ^^A -----------------------------
+%
+%  \StopEventually{^^A
+%
+%
+% ^^A -----------------------------
+%
+%  \section{Acknowledgements}
+%  ^^A
+%  A first version of this package for \LaTeX2.09 was named
+%  \package{raggedri}\,\cite{raggedri}.
+%  Laurent Siebenmann (\url{lcs at topo.math.u-psud.fr}) with his
+%  style \package{ragged.sty}\,\cite{ragged} provided the final impulse
+%  for this new implementation.\newline
+%  The code for \cs{justifying}, \env{justify} and the overloading of
+%  \cs{@arrayparboxrestore} is incorporated from the
+%  \package{raggedr}\,\cite{raggedr} package by James Kilfinger
+%  (\url{mapdn at csv.warwick.ac.uk}).\newline
+%  Without the constant nagging of Rainer Sieger
+%  (\url{rsieger at awi-bremerhaven.de}) this package might not
+%  be.\newline
+%  Markus Kohm (\url{markus.kohm at gmx.de}) provided the code for
+%  \cs{@gnewline}.\newline 
+%  Frank Mittelbach (\url{frank.mittelbach at latex-project.org})
+%  provided the impetus for version~2.00.\newline
+%  Rolf Niepraschk (\url{Rolf.Niepraschk at gmx.de}) and Hubert G\"a\ss{}lein
+%  found many bugs and provided fixes for them and code for new
+%  features.\newline
+%  Jordan Firth (\url{jafirth at ncsu.edu}) provided the final push for
+%  version~2.2.
+%
+% ^^A -----------------------------
+%
+%  \newcommand{\noopsort}[1]{} \newcommand{\printfirst}[2]{##1}
+%  \newcommand{\singleletter}[1]{##1} \newcommand{\switchargs}[2]{##2##1}
+%  \begin{thebibliography}{1}
+%
+%  \bibitem{ltmiscen}
+%     Johannes Braams, David Carlisle, Alan Jeffrey, Leslie Lamport, Frank
+%     Mittelbach, Chris Rowley, and Rainer Sch{\"o}pf.
+%     \newblock ltmiscen.dtx.
+%     \newblock Part of the {\LaTeX}-distribution.
+%
+%  \bibitem{footmisc}
+%     Robin Fairbairns.
+%     \newblock \texttt{footmisc} --- a portmanteau package for
+%       customising footnotes in \LaTeXe.
+%     \newblock \url{CTAN: tex-archive/macros/latex/contrib/supported/footmisc/footmisc.dtx}.
+%
+%  \bibitem{raggedr}
+%     James Kilfiger.
+%     \newblock \url{CTAN: tex-archive/macros/latex/contrib/other/misc/raggedr.sty}.
+%     \newblock \LaTeXe{} package.
+%
+%  \bibitem{KnuthTeXa}
+%     Donald~E. Knuth.
+%     \newblock \emph{The {\TeX}Book}, volume~A of \emph{Computers \& Typesetting}.
+%     \newblock Ad{\-d}i{\-s}on-Wes{\-l}ey, Reading, MA, USA, {\noopsort{1986a}}1986.
+%
+%  \bibitem{lamport86}
+%     Leslie Lamport.
+%     \newblock \emph{\LaTeX: A Document Preparation System}.
+%     \newblock Ad{\-d}i{\-s}on-Wes{\-l}ey, Reading, MA, USA, first edition, 1986.
+%
+%  \bibitem{cmfonts}
+%     Frank Mittelbach and Rainer Sch{\"o}pf.
+%     \newblock The file {\texttt{cmfonts.fdd}} for use with {\LaTeXe}.
+%     \newblock Part of the {\LaTeX}-distribution.
+%
+%  \bibitem{everysel}
+%     Martin Schr{\"o}der.
+%     \newblock The \package{everysel}-package.
+%     \newblock \url{CTAN: tex-archive/macros/latex/contrib/supported/ms/everysel.dtx}.
+%     \newblock \LaTeXe{} package.
+%
+%  \bibitem{raggedri}
+%     Martin Schr{\"o}der.
+%     \newblock The \package{raggedri} document option.
+%     \newblock Was in \url{CTAN: tex-archive/macros/latex209/contrib/raggedright}.
+%     \newblock \LaTeX2.09 style, outdated.
+%
+%  \bibitem{ragged}
+%     Laurent Siebenmann.
+%     \newblock \texttt{ragged.sty}.
+%     \newblock \url{CTAN: tex-archive/macros/generic/ragged.sty}.
+%     \newblock generic macro file for \texttt{plain} and \LaTeX.
+%
+%  \end{thebibliography}
+%  }
+%
+% ^^A -----------------------------
+%
+%  \section{The implementation}
+%  \changes{v2.00}{2003/01/10}{Removed spaces and unneeded braces 
+%                              from \cs{setlength}; replaced
+%                              \texttt{plus} with \cs{@plus}}
+%  \changes{v2.02}{2003/02/24}{Removed \cs{setlength}}
+%  \changes{v2.02}{2003/02/24}{Use \cs{@flushglue}}
+%
+%    \begin{macrocode}
+%<*package>
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{Initial Code}
+%  ^^A
+%  \begin{macro}{\if at raggedtwoe@originalcommands}
+%  \cs{if at raggedtwoe@originalcommands} is used to flag the use of the 
+%  \option{originalcommands} or \option{newcommands} option.
+%    \begin{macrocode}
+\newif\if at raggedtwoe@originalcommands
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\if at raggedtwoe@originalparameters}
+%  \cs{if at raggedtwoe@originalparameters} is used to flag the use of the 
+%  \option{originalparameters} or \option{newparameters} option.
+%    \begin{macrocode}
+\newif\if at raggedtwoe@originalparameters
+%    \end{macrocode}
+%  \end{macro}
+%
+% \begin{macro}{\if at raggedtwoe@footmisc}
+% \cs{if at raggedtwoe@footmisc} is used to flag the use of the
+% \option{footnotes} option.
+%   \changes{v2.00}{2003/01/18}{New macro}%
+%    \begin{macrocode}
+\newif\if at raggedtwoe@footmisc
+%    \end{macrocode}
+% \end{macro}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{Declaration of options}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsubsection{\option{originalcommands} option}
+%  ^^A
+%  The \option{originalcommands} and \option{newcommands} options 
+%  control the meaning of the \LaTeX-commands for ragged text:
+%  If \option{newcommands} is used the \LaTeX-commands are set equal
+%  to the commands defined by \package{ragged2e}.
+%  \changes{v2.00}{2003/01/04}{Allow all-lowercase versions of options}
+%    \begin{macrocode}
+\DeclareOption{OriginalCommands}{\@raggedtwoe at originalcommandstrue}
+\DeclareOption{originalcommands}{\@raggedtwoe at originalcommandstrue}
+\DeclareOption{NewCommands}{\@raggedtwoe at originalcommandsfalse}
+\DeclareOption{newcommands}{\@raggedtwoe at originalcommandsfalse}
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsubsection{\option{originalparameters} option}
+%  ^^A
+%  The \option{originalparameters} and \option{newparameters} options
+%  control the defaults for the parameters used by the commands
+%  implemented by \package{ragged2e}:
+%  If \option{newparameters} is used the parameters are set to the
+%  values defined by \package{ragged2e}.
+%  \changes{v2.00}{2003/01/04}{Allow all-lowercase versions of options}
+%    \begin{macrocode}
+\DeclareOption{OriginalParameters}{\@raggedtwoe at originalparameterstrue}
+\DeclareOption{originalparameters}{\@raggedtwoe at originalparameterstrue}
+\DeclareOption{NewParameters}{\@raggedtwoe at originalparametersfalse}
+\DeclareOption{newparameters}{\@raggedtwoe at originalparametersfalse}
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsubsection{\option{raggedrightboxes} option}
+%  ^^A
+%  \changes{v2.00}{2003/01/04}{New option \option{raggedrightboxes}}%
+%  The option \option{raggedrightboxes} sets all
+%  \cs{parbox}es, \env{minipage}s, \cs{marginpar}s and |p|-columns of
+%  \env{tabular}s and \env{array}s using \cs{RaggedRight}. 
+%  This is done by redefining \cs{@arrayparboxrestore}.
+% \begin{macro}{\@raggedtwoe at raggedrightboxes@opt}
+% \cs{@raggedtwoe at raggedrightboxes@opt} is the code executed via
+% \cs{DeclareOption}.
+%  \changes{v2.00}{2003/01/18}{New macro}%
+%  \changes{v2.2}{2019/03/26}{Definition of \cs{@arrayparboxrestore}
+%  has changed}%
+%    \begin{macrocode}
+\newcommand*{\@raggedtwoe at raggedrightboxes@opt}{
+%    \end{macrocode}
+%  First we check if \cs{@arrayparboxrestore} is unchanged.
+%    \begin{macrocode}
+  \CheckCommand*{\@arrayparboxrestore}{%
+    \let\if at nobreak\iffalse
+    \let\if at noskipsec\iffalse
+    \let\par\@@par
+    \let\-\@dischyph
+    \let\'\@acci\let\`\@accii\let\=\@acciii
+    \parindent\z@ \parskip\z at skip
+    \everypar{}%
+    \linewidth\hsize
+    \@totalleftmargin\z@ 
+    \leftskip\z at skip \rightskip\z at skip \@rightskip\z at skip
+    \parfillskip\@flushglue 
+    \lineskip\normallineskip
+    \lineskiplimit\normallineskiplimit
+    \baselineskip\normalbaselineskip
+    \sloppy}%
+%    \end{macrocode}
+%  Then we redefine it by removing the setting of \cs{leftskip},
+%  \cs{rightskip}, \cs{@rightskip} and \cs{parfillskip} and instead
+%  calling \cs{RaggedRight}.
+%  \changes{v2.04}{2003/03/02}{The setting of \cs{parindent} is
+%                              superfluous}%
+%    \begin{macrocode}
+  \renewcommand{\@arrayparboxrestore}{%
+    \let\if at nobreak\iffalse
+    \let\if at noskipsec\iffalse
+    \let\par\@@par
+    \let\-\@dischyph
+    \let\'\@acci\let\`\@accii\let\=\@acciii
+    \parskip\z at skip
+    \everypar{}%
+    \linewidth\hsize
+    \@totalleftmargin\z@ 
+    \RaggedRight
+    \lineskip\normallineskip
+    \baselineskip\normalbaselineskip
+    \lineskiplimit\normallineskiplimit
+    \sloppy}%
+%    \end{macrocode}
+% Now we self-destroy so the command can be called more than once
+% without causing harm (and it also frees up some space).
+%    \begin{macrocode}
+  \let\@raggedtwoe at raggedrightboxes@opt\relax
+  }
+%    \end{macrocode}
+% \end{macro}
+% Finally the declaration of the option.
+%    \begin{macrocode}
+\DeclareOption{raggedrightboxes}{\@raggedtwoe at raggedrightboxes@opt}
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsubsection{\option{footnotes} option}
+%  ^^A
+%  \changes{v2.00}{2003/01/18}{New option \option{footnotes}}%
+%  \changes{v2.02}{2003/02/24}{Bugfix: \cs{if at raggedtwoe@footmisctrue}
+%                              \ensuremath{\rightarrow} \cs{@raggedtwoe at footmisctrue}}%
+%  \changes{v2.03}{2003/02/26}{Bugfix: \option{footnotes} was actually
+%                              \option{raggedrightboxes}}
+%  The option \option{footnotes} just sets a flag
+%  (\cs{if at raggedtwoe@footmisc}) to load the \option{footmisc}
+%  package and passes the option \option{ragged} to it.
+%    \begin{macrocode}
+\DeclareOption{footnotes}{%
+  \@raggedtwoe at footmisctrue
+  \PassOptionsToPackage{ragged}{footmisc}%
+  }
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsubsection{\option{document} option}
+%  ^^A
+%  \changes{v2.00}{2003/01/18}{New option \option{document}}%
+%  The option \option{document} sets the complete document
+%  ragged-right by executing \cs{RaggedRight} via \cs{AtBeginDocument}
+%  and also executing the \option{raggedrightboxes} option.
+% \begin{macro}{\@raggedtwoe at abdhook}
+% \cs{@raggedtwoe at abdhook} is the code executed via
+% \cs{AtBeginDocument}: Give a message on the terminal, execute
+% \cs{RaggedRight} and self-destroy.
+% We also make \cs{@tocrmarg} flexible; otherwise long lines in the
+% table of contents (and similar tables) would not be broken because
+% the spaceskip is rigid.
+%  \changes{v2.00}{2003/01/18}{New macro}%
+%  \changes{v2.04}{2003/03/02}{Set \cs{@tocrmarg} and use
+%                              \cs{PackageInfo}}%
+%  \changes{v2.1}{2006/07/23}{bugfix: Use \cs{@tocrmarg} only if it's
+%                              defined}%
+%    \begin{macrocode}
+\newcommand{\@raggedtwoe at abdhook}{%
+  \PackageInfo{ragged2e}{ABD: executing \string\RaggedRight}%
+  \RaggedRight
+  \@ifundefined{@tocrmarg}{}{\edef\@tocrmarg{\@tocrmarg plus 2em}}%
+  \let\@raggedtwoe at abdhook\relax
+  }
+%    \end{macrocode}
+% \end{macro}
+% \begin{macro}{\@raggedtwoe at document@opt}
+% \cs{@raggedtwoe at document@opt} is the code executed via
+% \cs{DeclareOption}: Insert the code into \cs{AtBeginDocument},
+% execute the \option{raggedrightboxes} and \option{footnotes} options
+% and self-destroy.
+%  \changes{v2.00}{2003/01/18}{New macro}%
+%    \begin{macrocode}
+\newcommand{\@raggedtwoe at document@opt}{%
+  \AtBeginDocument{\@raggedtwoe at abdhook}%
+  \@raggedtwoe at raggedrightboxes@opt
+  \@raggedtwoe at footmisctrue
+  \let\@raggedtwoe at document@opt\relax
+  }
+%    \end{macrocode}
+% \end{macro}
+% Finally the declaration of the option.
+%    \begin{macrocode}
+\DeclareOption{document}{\@raggedtwoe at document@opt}
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+% \subsubsection{Other options}
+% ^^A
+% \changes{v2.00}{2003/01/18}{Pass all other options to
+%                             \package{footmisc} if it's loaded}%
+% All unused options are passed to the \package{footmisc} package if
+% the \option{footnotes} option is selected; otherwise the usual error
+% is raised.
+%    \begin{macrocode}
+\DeclareOption*{%
+  \if at raggedtwoe@footmisc
+    \PassOptionsToPackage{\CurrentOption}{footmisc}%
+  \else
+    \OptionNotUsed
+  \fi
+  }
+%    \end{macrocode}
+%
+%
+%% ^^A -----------------------------
+%
+%  \subsection{Executing options}
+%  ^^A
+%  The default options are \option{originalcommands} and 
+%  \option{newparameters}.
+%    \begin{macrocode}
+\ExecuteOptions{originalcommands,newparameters}
+\ProcessOptions\relax
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{Loading packages}
+%  ^^A
+%  We need the \package{everysel} package.
+% \changes{v2.00}{2003/01/18}{Load the \package{footmisc} package}%
+%    \begin{macrocode}
+\RequirePackage{everysel}
+%    \end{macrocode}
+% If the option \option{footnotes} is selected, we load the
+% \package{footmisc} package after we are finished (\package{footmisc}
+% detects our presence by looking for the definition of
+% \cs{RaggedRight}, so we can not load it just now).
+%  \changes{v2.1}{2003/10/08}{bugfix: Load \package{footmisc}
+%   directly and not via \cs{AtEndOfPackage} (bug found by Axel
+%   Sommerfeldt)}
+%    \begin{macrocode}
+\if at raggedtwoe@footmisc
+  \RequirePackage{footmisc}[2002/08/28]
+\fi
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{Allocations}
+%  ^^A
+%  \changes{v2.00}{2003/01/25}{Removed \cs{RaggedSpaceskip} and
+%                              \cs{RaggedXSpaceskip}}%
+%  \begin{macro}{\CenteringLeftskip}
+%  \begin{macro}{\RaggedLeftLeftskip}
+%  \begin{macro}{\RaggedRightLeftskip}
+%  \begin{macro}{\CenteringRightskip}
+%  \begin{macro}{\RaggedLeftRightskip}
+%  \begin{macro}{\RaggedRightRightskip}
+%  \begin{macro}{\CenteringParfillskip}
+%  \begin{macro}{\RaggedLeftParfillskip}
+%  \begin{macro}{\RaggedRightParfillskip}
+%  \begin{macro}{\JustifyingParfillskip}
+%  \changes{v2.00}{2003/01/18}{New macro}
+%  \begin{macro}{\CenteringParindent}
+%  \begin{macro}{\RaggedLeftParindent}
+%  \begin{macro}{\RaggedRightParindent}
+%  \begin{macro}{\JustifyingParindent}
+%  \changes{v2.00}{2003/01/18}{New macro}
+%  First we allocate the parameters
+%    \begin{macrocode}
+\newlength{\CenteringLeftskip}
+\newlength{\RaggedLeftLeftskip}
+\newlength{\RaggedRightLeftskip}
+\newlength{\CenteringRightskip}
+\newlength{\RaggedLeftRightskip}
+\newlength{\RaggedRightRightskip}
+\newlength{\CenteringParfillskip}
+\newlength{\RaggedLeftParfillskip}
+\newlength{\RaggedRightParfillskip}
+\newlength{\JustifyingParfillskip}
+\newlength{\CenteringParindent}
+\newlength{\RaggedLeftParindent}
+\newlength{\RaggedRightParindent}
+\newlength{\JustifyingParindent}
+%    \end{macrocode}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%  \end{macro}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{Initializations}
+%  ^^A
+%  Depending on \cs{if at raggedtwoe@originalparameters} we initialize the
+%  parameters with the values \LaTeX{} uses for its own commands or with
+%  our new parameters.
+%  \changes{v2.04}{2003/03/02}{Initialize \cs{JustifyingParindent}
+%                              with \cs{parindent}}
+%  \changes{v2.04}{2003/03/02}{Insert missing \textbackslash}
+%    \begin{macrocode}
+\if at raggedtwoe@originalparameters
+   \CenteringLeftskip\@flushglue
+   \RaggedLeftLeftskip\@flushglue
+   \RaggedRightLeftskip\z at skip
+   \CenteringRightskip\@flushglue
+   \RaggedLeftRightskip\z at skip
+   \RaggedRightRightskip\@flushglue
+   \CenteringParfillskip\z at skip
+   \RaggedLeftParfillskip\z at skip
+   \RaggedRightParfillskip\@flushglue
+   \CenteringParindent\z@
+   \RaggedLeftParindent\z@
+   \RaggedRightParindent\z@
+\else
+   \CenteringLeftskip\z@\@plus\tw@ em
+   \RaggedLeftLeftskip\z@\@plus\tw@ em
+   \RaggedRightLeftskip\z at skip
+   \CenteringRightskip\z@\@plus\tw@ em
+   \RaggedLeftRightskip\z at skip
+   \RaggedRightRightskip\z@\@plus\tw@ em
+   \CenteringParfillskip\z at skip
+   \RaggedLeftParfillskip\z at skip
+   \RaggedRightParfillskip\@flushglue
+   \CenteringParindent\z@
+   \RaggedLeftParindent\z@
+   \RaggedRightParindent\z@
+\fi
+\JustifyingParfillskip\@flushglue
+\JustifyingParindent\parindent
+%    \end{macrocode}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{Distinguishing between monospaced and proportional fonts}
+%  ^^A
+%  To set ragged text with proportional fonts \emph{and} monospaced 
+%  fonts correctly, we must distinguish between these two kinds of
+%  fonts \emph{everytime} a font is loaded.
+%  Otherwise the settings for e.\,g.\ a proportional fonts would be
+%  in effect if you start \cs{RaggedRight} in \cs{rmfamily} and
+%  then switch to \cs{ttfamily}.
+%
+%  The goal is to have a rigid interword space in all fonts.
+%  \TeX's interword space is |\fontdimen2 plus \fontdimen3 minus \fontdimen4|.
+%  This can be overwritten by setting \cs{spaceskip} (space between
+%  words, if nonzero) and \cs{xspaceskip} (space at the end of
+%  sentences, if nonzero).
+%
+%  We do the setting with the help of \package{everysel}\,\cite{everysel},
+%  which allows us to define code which is (hopefully) executed after
+%  every fontchange in a \LaTeX{} document.\footnote{^^A
+%     It \emph{is} executed after every \cs{selectfont}, so if you stay 
+%     within NFSS and don't declare your fonts with commands like 
+%     \cs{newfont} and then switch to them, it will work.}
+%
+%  \begin{macro}{\if at raggedtwoe@spaceskip}
+%  \cs{if at raggedtwoe@spaceskip} signals the use of commands defined by
+%  \package{ragged2e} to the command inserted into \cs{selectfont}.
+%  It is set to true by these commands and restored to false by \TeX{} 
+%  when the scope of them ends.
+%    \begin{macrocode}
+\newif\if at raggedtwoe@spaceskip
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\@raggedtwoe at everyselectfont}
+%  \cs{@raggedtwoe at everyselectfont} is our code inserted into 
+%  \cs{selectfont}.
+%  \changes{v2.00}{2003/01/26}{Completely redesigned and removed
+%                              \cs{RaggedSpaceskip} and
+%                              \cs{RaggedXSpaceskip}}
+%  \changes{v2.01}{2003/02/20}{Removed the setting of \cs{xspaceskip}}
+%    \begin{macrocode}
+\newcommand{\@raggedtwoe at everyselectfont}{%
+  \if at raggedtwoe@spaceskip
+%    \end{macrocode}
+%  If no command defined by \package{ragged2e} is in use, we do
+%  nothing.
+%  But if it is, we look at \cs{fontdimen3} to see if the current
+%  font is monospaced or not.
+%    \begin{macrocode}
+    \ifdim\fontdimen\thr@@\font=\z@\relax
+%    \end{macrocode}
+%  If it is, we set \cs{spaceskip} to |0pt| so the interword space
+%  will be the one specified by the font designer -- which is rigid
+%  anyway for monospaced fonts.
+%    \begin{macrocode}
+      \spaceskip\z@
+    \else
+%    \end{macrocode}
+%  For proportional fonts we make the interword space rigid by setting
+%  \cs{spaceskip} to \cs{fontdimen2}. 
+%    \begin{macrocode}
+      \spaceskip\fontdimen\tw@\font
+    \fi
+%    \end{macrocode}
+% We have to reset the interword space if we are not active.
+% \changes{v2.04}{2003/03/16}{Reset \cs{spaceskip} when we are not
+%                             active}
+%    \begin{macrocode}
+  \else
+    \spaceskip\z@
+  \fi
+  }
+\EverySelectfont{\@raggedtwoe at everyselectfont}
+%    \end{macrocode}
+%  \end{macro}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{The commands}
+%  ^^A
+%  \begin{macro}{\@raggedtwoe at savedcr}
+%  We save the definition of \cs{\textbackslash} in
+%  \cs{@raggedtwoe at savedcr}.
+%    \begin{macrocode}
+\let\@raggedtwoe at savedcr\\
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\@raggedtwoe at saved@gnewline}
+%  \changes{v2.00}{2003/01/04}{New macro}
+%  We save the definition of \cs{@gnewline} in 
+%  \cs{@raggedtwoe at saved@gnewline}.
+%    \begin{macrocode}
+\let\@raggedtwoe at saved@gnewline\@gnewline
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\@raggedtwoe at gnewline}
+%  The following definition of a \cs{@gnewline} used by the ragged
+%  commands was suggested by Markus Kohm:
+%  \changes{v2.00}{2003/01/04}{New macro}
+%  \changes{v2.02}{2003/02/24}{Bugfix: \cs{@nolerr}
+%                              \ensuremath{\rightarrow} \cs{@nolnerr}}%
+%  \changes{v2.1}{2009/05/17}{Bugfix: handle math}
+%    \begin{macrocode}
+\newcommand*{\@raggedtwoe at gnewline}[1]{%
+  \ifvmode
+    \@nolnerr 
+  \else
+    \unskip
+    \ifmmode
+%    \end{macrocode}
+% In formulas we use the original code of \cs{@gnewline}.
+%    \begin{macrocode}
+      \reserved at e {\reserved at f #1}\nobreak \hfil \break
+    \else
+      \reserved at e {\reserved at f #1}{\parskip\z@\par}%
+    \fi
+  \fi
+  }
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\Centering}
+%  \cs{Centering} first lets \cs{\textbackslash} = \cs{@centercr},
+%  but only if |\\| has its original meaning, otherwise \cs{Center}
+%  would not work inside environments like \env{tabular} etc., in
+%  which \cs{\textbackslash} has a different meaning.
+%  It also sets \cs{@gnewline} to \cs{@raggedtwoe at gnewline}.
+%  Then, the \LaTeX{} and \TeX-parameters are set.\newline
+%  \cs{@rightskip} is \LaTeX's version of \cs{rightskip}.
+%  \begin{Quote}
+%     ``Every environment, like the list environments, that set
+%     \cs{rightskip} to its 'normal' value set it to \cs{@rightskip}''
+%     \cite{ltmiscen}
+%  \end{Quote}
+%  Finally we signal the code inserted into \cs{selectfont} that
+%  we are active and call that code directly.
+%  \changes{v2.00}{2003/01/04}{Call \cs{@raggedtwoe at everyselectfont}
+%                              and switch \cs{@gnewline}}
+%    \begin{macrocode}
+\newcommand{\Centering}{%
+   \ifx\\\@raggedtwoe at savedcr
+      \let\\\@centercr
+   \fi
+   \let\@gnewline\@raggedtwoe at gnewline
+   \leftskip\CenteringLeftskip
+   \@rightskip\CenteringRightskip
+   \rightskip\@rightskip
+   \parfillskip\CenteringParfillskip
+   \parindent\CenteringParindent
+   \@raggedtwoe at spaceskiptrue
+   \@raggedtwoe at everyselectfont
+   }
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\RaggedLeft}
+%  \cs{RaggedLeft} is like \cs{Centering}; it only uses other
+%  parameters.
+%  \changes{v2.00}{2003/01/04}{Call \cs{@raggedtwoe at everyselectfont}
+%                              and switch \cs{@gnewline}}
+%    \begin{macrocode}
+\newcommand{\RaggedLeft}{%
+   \ifx\\\@raggedtwoe at savedcr
+      \let\\\@centercr
+   \fi
+   \let\@gnewline\@raggedtwoe at gnewline
+   \leftskip\RaggedLeftLeftskip
+   \@rightskip\RaggedLeftRightskip
+   \rightskip\@rightskip
+   \parfillskip\RaggedLeftParfillskip
+   \parindent\RaggedLeftParindent
+   \@raggedtwoe at spaceskiptrue
+   \@raggedtwoe at everyselectfont
+   }
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\RaggedRight}
+%  \cs{RaggedRight} is like \cs{Centering}; it only uses other
+%  parameters.
+%  \changes{v2.00}{2003/01/04}{Call \cs{@raggedtwoe at everyselectfont}
+%                              and switch \cs{@gnewline}}
+%    \begin{macrocode}
+\newcommand{\RaggedRight}{%
+   \ifx\\\@raggedtwoe at savedcr
+      \let\\\@centercr
+   \fi
+   \let\@gnewline\@raggedtwoe at gnewline
+   \leftskip\RaggedRightLeftskip
+   \@rightskip\RaggedRightRightskip
+   \rightskip\@rightskip
+   \parfillskip\RaggedRightParfillskip
+   \parindent\RaggedRightParindent
+   \@raggedtwoe at spaceskiptrue
+   \@raggedtwoe at everyselectfont
+   }
+%    \end{macrocode}
+%  \end{macro}
+%
+%  \begin{macro}{\justifying}
+%  \cs{justifying} switches back to the defaults used by \LaTeX{} for
+%  typesetting justyfied text.
+%  \changes{v2.00}{2003/01/04}{New macro}
+%    \begin{macrocode}
+\newcommand{\justifying}{%
+   \let\\\@raggedtwoe at savedcr
+   \let\@gnewline\@raggedtwoe at saved@gnewline
+   \leftskip\z@
+   \@rightskip\z@
+   \rightskip\@rightskip
+   \parfillskip\JustifyingParfillskip
+   \parindent\JustifyingParindent
+   \@raggedtwoe at spaceskipfalse
+   \@raggedtwoe at everyselectfont
+   }
+%    \end{macrocode}
+%  \end{macro}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{The environments}
+%  ^^A
+%  \begin{environment}{Center}
+%  \begin{environment}{FlushLeft}
+%  \begin{environment}{FlushRight}
+%  The environments \env{Center}, \env{FlushLeft}, and \cs{FlushRight}
+%  are implemented like their counterparts in \LaTeX: Start a 
+%  \env{trivlist} and switch on the right command.
+%  \changes{v2.02}{2003/02/24}{Use \cs{trivlist} \ldots{}
+%                              \cs{endtrivlist} instead of
+%                              \cs{begin\{trivlist\}} \ldots{}
+%                              \cs{end\{trivlist\}}}
+%    \begin{macrocode}
+\newenvironment{Center}{%
+   \trivlist
+   \Centering\item\relax
+   }{%
+   \endtrivlist
+   }
+\newenvironment{FlushLeft}{%
+   \trivlist
+   \RaggedRight\item\relax
+   }{%
+   \endtrivlist
+   }
+\newenvironment{FlushRight}{%
+   \trivlist
+   \RaggedLeft\item\relax
+   }{%
+   \endtrivlist
+   }
+%    \end{macrocode}
+%  \end{environment}
+%  \end{environment}
+%  \end{environment}
+%  \begin{environment}{justify}
+%  \env{justify} is similar to the other environments: Start a 
+%  \env{trivlist} and use \cs{justifying}.
+%  \changes{v2.00}{2003/01/04}{New environment}
+%  \changes{v2.02}{2003/02/24}{Use \cs{trivlist} \ldots{}
+%                              \cs{endtrivlist} instead of
+%                              \cs{begin\{trivlist\}} \ldots{}
+%                              \cs{end\{trivlist\}}}
+%    \begin{macrocode}
+\newenvironment{justify}{%
+   \trivlist
+   \justifying\item\relax
+   }{%
+   \endtrivlist
+   }
+%    \end{macrocode}
+%  \end{environment}
+%
+%
+% ^^A -----------------------------
+%
+%  \subsection{Overloading the \LaTeX-commands}
+%  ^^A
+%  If the option \option{newcommands} is used, we save the original 
+%  \LaTeX-commands and environments for ragged text and overload them.
+%  \changes{v2.04}{2003/03/02}{Save more commands}
+%  \changes{v2.1}{2003/10/08}{bugfix: \cs{Flushleft} instead of
+%   \cs{FlushLeft} (found by Berend Hasselman)}
+%    \begin{macrocode}
+\if at raggedtwoe@originalcommands
+\else
+   \let\LaTeXcentering\centering
+   \let\LaTeXraggedleft\raggedleft
+   \let\LaTeXraggedright\raggedright
+   \let\centering\Centering
+   \let\raggedleft\RaggedLeft
+   \let\raggedright\RaggedRight
+   \let\LaTeXcenter\center
+   \let\endLaTeXcenter\endcenter 
+   \let\LaTeXflushleft\flushleft
+   \let\endLaTeXflushleft\endflushleft
+   \let\LaTeXflushright\flushright
+   \let\endLaTeXflushright\endflushright
+   \let\center\Center
+   \let\endcenter\endCenter 
+   \let\flushleft\FlushLeft
+   \let\endflushleft\endFlushLeft
+   \let\flushright\FlushRight
+   \let\endflushright\endFlushRight
+\fi
+%    \end{macrocode}
+%
+% ^^A -----------------------------
+%
+%    \begin{macrocode}
+%</package>
+%    \end{macrocode}
+%  \Finale
+% ^^A vim:tw=70:ts=2


Property changes on: trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.dtx
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.ins	                        (rev 0)
+++ trunk/Master/texmf-dist/source/latex/ragged2e/ragged2e.ins	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,107 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesFile{ragged2e.ins}
+      [2019/04/14 v1.5 Installation script for Ragged2e Package (MS)]
+%% 
+%% Copyright 1996..2019 by Martin Schr\"oder.
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This work has the LPPL maintenance status `maintained'.
+%% 
+%% The Current Maintainer of this work is Martin Schr\"oder.
+%%
+%% This work consists of the files ragged2e.dtx and ragged2e.ins
+%% and the derived file ragged2e.sty.
+%% 
+%% --------------- start of docstrip commands ------------------ 
+\input docstrip.tex
+{\ifx\endbatchfile\undefined
+\Msg{**********************************************}
+\Msg{*}
+\Msg{* This installation requires docstrip}
+\Msg{* version 2.4d or later.}
+\Msg{*}
+\Msg{* An older version of docstrip has been input}
+\Msg{*}
+\Msg{**********************************************}
+\errhelp{Move or rename old docstrip.tex.}
+\errmessage{Old docstrip in input path}
+\batchmode
+\csname @@end\endcsname
+\fi}
+
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* The ragged2e distribution contains these files:}
+\Msg{*}
+\Msg{* \space\space ragged2e.dtx}
+\Msg{* \space\space ragged2e.ins}
+\Msg{*}
+\Msg{* If you receive only some of these files from someone, complain!}
+\Msg{*}
+\Msg{***********************************************************}
+
+\preamble
+
+Copyright 1996..2019 Martin Schroeder.
+
+This file is part of the Ragged2e package
+-----------------------------------------
+
+This work may be distributed and/or modified under the
+conditions of the LaTeX Project Public License, either version 1.3
+of this license or (at your option) any later version.
+The latest version of this license is in
+  http://www.latex-project.org/lppl.txt
+and version 1.3 or later is part of all distributions of LaTeX
+version 2005/12/01 or later.
+
+This work has the LPPL maintenance status `maintained'.
+
+The Current Maintainer of this work is Martin Schroeder.
+
+This work consists of the files ragged2e.dtx and ragged2e.ins
+and the derived file ragged2e.sty.
+
+\endpreamble
+\declarepreamble\driverpreamble
+
+Copyright 1996..2019 Martin Schroeder.
+
+This file is part of the Ragged2e package
+-----------------------------------------
+
+To produce the documentation in the way you like you are allowed
+to change this driver file.
+
+\endpreamble
+
+\keepsilent
+\askforoverwritefalse
+\generate{\file{ragged2e.sty}{\from{ragged2e.dtx}{package}}
+         \usepreamble\driverpreamble
+         \file{ragged2e.drv}{\from{ragged2e.dtx}{driver}}
+         }
+
+\Msg{***********************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* style files into a directory searched by TeX:}
+\Msg{*}
+\Msg{* \space\space ragged2e.sty}
+\Msg{*}
+\Msg{* To produce the documentation run the file ragged2e.drv}
+\Msg{* through LaTeX.}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{***********************************************************}
+\endbatchfile
+%% 
+%% End of file `ragged2e.ins'.
+%% vim:syntax=tex:tw=70:ts=2

Added: trunk/Master/texmf-dist/tex/latex/ragged2e/ragged2e.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/ragged2e/ragged2e.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/ragged2e/ragged2e.sty	2019-07-30 21:15:18 UTC (rev 51780)
@@ -0,0 +1,316 @@
+%%
+%% This is file `ragged2e.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% ragged2e.dtx  (with options: `package')
+%% 
+%% Copyright 1996..2019 Martin Schroeder.
+%% 
+%% This file is part of the Ragged2e package
+%% -----------------------------------------
+%% 
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%%   http://www.latex-project.org/lppl.txt
+%% and version 1.3 or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%% 
+%% This work has the LPPL maintenance status `maintained'.
+%% 
+%% The Current Maintainer of this work is Martin Schroeder.
+%% 
+%% This work consists of the files ragged2e.dtx and ragged2e.ins
+%% and the derived file ragged2e.sty.
+%% 
+\NeedsTeXFormat{LaTeX2e}[2017/03/29]
+\ProvidesPackage{ragged2e}
+         [2019/07/28 v2.2 ragged2e Package (MS)]
+%% Copyright 1996..2019 by Martin Schr\"oder.
+%% \CharacterTable
+%% {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%%  Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%%  Digits        \0\1\2\3\4\5\6\7\8\9
+%%  Exclamation   \!     Double quote  \"     Hash (number) \#
+%%  Dollar        \$     Percent       \%     Ampersand     \&
+%%  Acute accent  \'     Left paren    \(     Right paren   \)
+%%  Asterisk      \*     Plus          \+     Comma         \,
+%%  Minus         \-     Point         \.     Solidus       \/
+%%  Colon         \:     Semicolon     \;     Less than     \<
+%%  Equals        \=     Greater than  \>     Question mark \?
+%%  Commercial at \@     Left bracket  \[     Backslash     \\
+%%  Right bracket \]     Circumflex    \^     Underscore    \_
+%%  Grave accent  \`     Left brace    \{     Vertical bar  \|
+%%  Right brace   \}     Tilde         \~}
+%%
+%% \iffalse meta-comment
+%% ===================================================================
+%%  @LaTeX-style-file{
+%%     author          = {Martin Schr\"oder},
+%%     version         = "2.2",
+%%     date            = "26 Mar 2019",
+%%     filename        = "ragged2e.sty",
+%%     address         = {Martin Schr\"oder
+%%                        Unterstra\"se 31
+%%                        47051 Duisburg
+%%                        Germany}
+%%     email           = "martin at oneiros.de",
+%%     docstring       = "LaTeX package which defines new commands
+%%                        \Centering, \RaggedLeft, \RaggedRight and
+%%                        \justifying and new environments Center,
+%%                        FlushLeft, FlushRight and justify, which
+%%                        set ragged text and are easily configurable
+%%                        to allow hyphenation.
+%%                        Uses the everysel package.
+%%                       "
+%%  }
+%% ===================================================================
+%% \fi
+\newif\if at raggedtwoe@originalcommands
+\newif\if at raggedtwoe@originalparameters
+\newif\if at raggedtwoe@footmisc
+\DeclareOption{OriginalCommands}{\@raggedtwoe at originalcommandstrue}
+\DeclareOption{originalcommands}{\@raggedtwoe at originalcommandstrue}
+\DeclareOption{NewCommands}{\@raggedtwoe at originalcommandsfalse}
+\DeclareOption{newcommands}{\@raggedtwoe at originalcommandsfalse}
+\DeclareOption{OriginalParameters}{\@raggedtwoe at originalparameterstrue}
+\DeclareOption{originalparameters}{\@raggedtwoe at originalparameterstrue}
+\DeclareOption{NewParameters}{\@raggedtwoe at originalparametersfalse}
+\DeclareOption{newparameters}{\@raggedtwoe at originalparametersfalse}
+\newcommand*{\@raggedtwoe at raggedrightboxes@opt}{
+  \CheckCommand*{\@arrayparboxrestore}{%
+    \let\if at nobreak\iffalse
+    \let\if at noskipsec\iffalse
+    \let\par\@@par
+    \let\-\@dischyph
+    \let\'\@acci\let\`\@accii\let\=\@acciii
+    \parindent\z@ \parskip\z at skip
+    \everypar{}%
+    \linewidth\hsize
+    \@totalleftmargin\z@
+    \leftskip\z at skip \rightskip\z at skip \@rightskip\z at skip
+    \parfillskip\@flushglue
+    \lineskip\normallineskip
+    \lineskiplimit\normallineskiplimit
+    \baselineskip\normalbaselineskip
+    \sloppy}%
+  \renewcommand{\@arrayparboxrestore}{%
+    \let\if at nobreak\iffalse
+    \let\if at noskipsec\iffalse
+    \let\par\@@par
+    \let\-\@dischyph
+    \let\'\@acci\let\`\@accii\let\=\@acciii
+    \parskip\z at skip
+    \everypar{}%
+    \linewidth\hsize
+    \@totalleftmargin\z@
+    \RaggedRight
+    \lineskip\normallineskip
+    \baselineskip\normalbaselineskip
+    \lineskiplimit\normallineskiplimit
+    \sloppy}%
+  \let\@raggedtwoe at raggedrightboxes@opt\relax
+  }
+\DeclareOption{raggedrightboxes}{\@raggedtwoe at raggedrightboxes@opt}
+\DeclareOption{footnotes}{%
+  \@raggedtwoe at footmisctrue
+  \PassOptionsToPackage{ragged}{footmisc}%
+  }
+\newcommand{\@raggedtwoe at abdhook}{%
+  \PackageInfo{ragged2e}{ABD: executing \string\RaggedRight}%
+  \RaggedRight
+  \@ifundefined{@tocrmarg}{}{\edef\@tocrmarg{\@tocrmarg plus 2em}}%
+  \let\@raggedtwoe at abdhook\relax
+  }
+\newcommand{\@raggedtwoe at document@opt}{%
+  \AtBeginDocument{\@raggedtwoe at abdhook}%
+  \@raggedtwoe at raggedrightboxes@opt
+  \@raggedtwoe at footmisctrue
+  \let\@raggedtwoe at document@opt\relax
+  }
+\DeclareOption{document}{\@raggedtwoe at document@opt}
+\DeclareOption*{%
+  \if at raggedtwoe@footmisc
+    \PassOptionsToPackage{\CurrentOption}{footmisc}%
+  \else
+    \OptionNotUsed
+  \fi
+  }
+%% ^^A -----------------------------
+\ExecuteOptions{originalcommands,newparameters}
+\ProcessOptions\relax
+\RequirePackage{everysel}
+\if at raggedtwoe@footmisc
+  \RequirePackage{footmisc}[2002/08/28]
+\fi
+\newlength{\CenteringLeftskip}
+\newlength{\RaggedLeftLeftskip}
+\newlength{\RaggedRightLeftskip}
+\newlength{\CenteringRightskip}
+\newlength{\RaggedLeftRightskip}
+\newlength{\RaggedRightRightskip}
+\newlength{\CenteringParfillskip}
+\newlength{\RaggedLeftParfillskip}
+\newlength{\RaggedRightParfillskip}
+\newlength{\JustifyingParfillskip}
+\newlength{\CenteringParindent}
+\newlength{\RaggedLeftParindent}
+\newlength{\RaggedRightParindent}
+\newlength{\JustifyingParindent}
+\if at raggedtwoe@originalparameters
+   \CenteringLeftskip\@flushglue
+   \RaggedLeftLeftskip\@flushglue
+   \RaggedRightLeftskip\z at skip
+   \CenteringRightskip\@flushglue
+   \RaggedLeftRightskip\z at skip
+   \RaggedRightRightskip\@flushglue
+   \CenteringParfillskip\z at skip
+   \RaggedLeftParfillskip\z at skip
+   \RaggedRightParfillskip\@flushglue
+   \CenteringParindent\z@
+   \RaggedLeftParindent\z@
+   \RaggedRightParindent\z@
+\else
+   \CenteringLeftskip\z@\@plus\tw@ em
+   \RaggedLeftLeftskip\z@\@plus\tw@ em
+   \RaggedRightLeftskip\z at skip
+   \CenteringRightskip\z@\@plus\tw@ em
+   \RaggedLeftRightskip\z at skip
+   \RaggedRightRightskip\z@\@plus\tw@ em
+   \CenteringParfillskip\z at skip
+   \RaggedLeftParfillskip\z at skip
+   \RaggedRightParfillskip\@flushglue
+   \CenteringParindent\z@
+   \RaggedLeftParindent\z@
+   \RaggedRightParindent\z@
+\fi
+\JustifyingParfillskip\@flushglue
+\JustifyingParindent\parindent
+\newif\if at raggedtwoe@spaceskip
+\newcommand{\@raggedtwoe at everyselectfont}{%
+  \if at raggedtwoe@spaceskip
+    \ifdim\fontdimen\thr@@\font=\z@\relax
+      \spaceskip\z@
+    \else
+      \spaceskip\fontdimen\tw@\font
+    \fi
+  \else
+    \spaceskip\z@
+  \fi
+  }
+\EverySelectfont{\@raggedtwoe at everyselectfont}
+\let\@raggedtwoe at savedcr\\
+\let\@raggedtwoe at saved@gnewline\@gnewline
+\newcommand*{\@raggedtwoe at gnewline}[1]{%
+  \ifvmode
+    \@nolnerr
+  \else
+    \unskip
+    \ifmmode
+      \reserved at e {\reserved at f #1}\nobreak \hfil \break
+    \else
+      \reserved at e {\reserved at f #1}{\parskip\z@\par}%
+    \fi
+  \fi
+  }
+\newcommand{\Centering}{%
+   \ifx\\\@raggedtwoe at savedcr
+      \let\\\@centercr
+   \fi
+   \let\@gnewline\@raggedtwoe at gnewline
+   \leftskip\CenteringLeftskip
+   \@rightskip\CenteringRightskip
+   \rightskip\@rightskip
+   \parfillskip\CenteringParfillskip
+   \parindent\CenteringParindent
+   \@raggedtwoe at spaceskiptrue
+   \@raggedtwoe at everyselectfont
+   }
+\newcommand{\RaggedLeft}{%
+   \ifx\\\@raggedtwoe at savedcr
+      \let\\\@centercr
+   \fi
+   \let\@gnewline\@raggedtwoe at gnewline
+   \leftskip\RaggedLeftLeftskip
+   \@rightskip\RaggedLeftRightskip
+   \rightskip\@rightskip
+   \parfillskip\RaggedLeftParfillskip
+   \parindent\RaggedLeftParindent
+   \@raggedtwoe at spaceskiptrue
+   \@raggedtwoe at everyselectfont
+   }
+\newcommand{\RaggedRight}{%
+   \ifx\\\@raggedtwoe at savedcr
+      \let\\\@centercr
+   \fi
+   \let\@gnewline\@raggedtwoe at gnewline
+   \leftskip\RaggedRightLeftskip
+   \@rightskip\RaggedRightRightskip
+   \rightskip\@rightskip
+   \parfillskip\RaggedRightParfillskip
+   \parindent\RaggedRightParindent
+   \@raggedtwoe at spaceskiptrue
+   \@raggedtwoe at everyselectfont
+   }
+\newcommand{\justifying}{%
+   \let\\\@raggedtwoe at savedcr
+   \let\@gnewline\@raggedtwoe at saved@gnewline
+   \leftskip\z@
+   \@rightskip\z@
+   \rightskip\@rightskip
+   \parfillskip\JustifyingParfillskip
+   \parindent\JustifyingParindent
+   \@raggedtwoe at spaceskipfalse
+   \@raggedtwoe at everyselectfont
+   }
+\newenvironment{Center}{%
+   \trivlist
+   \Centering\item\relax
+   }{%
+   \endtrivlist
+   }
+\newenvironment{FlushLeft}{%
+   \trivlist
+   \RaggedRight\item\relax
+   }{%
+   \endtrivlist
+   }
+\newenvironment{FlushRight}{%
+   \trivlist
+   \RaggedLeft\item\relax
+   }{%
+   \endtrivlist
+   }
+\newenvironment{justify}{%
+   \trivlist
+   \justifying\item\relax
+   }{%
+   \endtrivlist
+   }
+\if at raggedtwoe@originalcommands
+\else
+   \let\LaTeXcentering\centering
+   \let\LaTeXraggedleft\raggedleft
+   \let\LaTeXraggedright\raggedright
+   \let\centering\Centering
+   \let\raggedleft\RaggedLeft
+   \let\raggedright\RaggedRight
+   \let\LaTeXcenter\center
+   \let\endLaTeXcenter\endcenter
+   \let\LaTeXflushleft\flushleft
+   \let\endLaTeXflushleft\endflushleft
+   \let\LaTeXflushright\flushright
+   \let\endLaTeXflushright\endflushright
+   \let\center\Center
+   \let\endcenter\endCenter
+   \let\flushleft\FlushLeft
+   \let\endflushleft\endFlushLeft
+   \let\flushright\FlushRight
+   \let\endflushright\endFlushRight
+\fi
+\endinput
+%%
+%% End of file `ragged2e.sty'.


Property changes on: trunk/Master/texmf-dist/tex/latex/ragged2e/ragged2e.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2019-07-30 21:11:25 UTC (rev 51779)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2019-07-30 21:15:18 UTC (rev 51780)
@@ -582,7 +582,7 @@
   qcircuit qcm qobitree qrcode qsharp qstest qsymbols qtree
      quantikz quattrocento quicktype quotchap quoting quotmark
      quran quran-de quran-ur
-  r_und_s raleway ran_toks randbild randomlist randomwalk randtext
+  r_und_s ragged2e raleway ran_toks randbild randomlist randomwalk randtext
     rank-2-roots rccol rcs rcs-multi rcsinfo
     readarray realboxes realhats realscripts rec-thy
     recipe recipebook recipecard recycle rectopma

Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds	2019-07-30 21:11:25 UTC (rev 51779)
+++ trunk/Master/tlpkg/libexec/ctan2tds	2019-07-30 21:15:18 UTC (rev 51780)
@@ -1067,7 +1067,6 @@
  'quran',	"&MAKEflatten",
  'quran-de',	"&MAKEflatten",
  'r2bib',       "die 'skipping, requires compilation'",
- 'ragged2e',    "die 'skipping, part of ms'",
  'rake4latex',  "die 'skipping, requires rake'",
  'rangen',      "die 'skipping, per author request'",
  'ratexdb',     "die 'skipping, needs sql, etc.'",

Modified: trunk/Master/tlpkg/tlpsrc/collection-latexrecommended.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-latexrecommended.tlpsrc	2019-07-30 21:11:25 UTC (rev 51779)
+++ trunk/Master/tlpkg/tlpsrc/collection-latexrecommended.tlpsrc	2019-07-30 21:15:18 UTC (rev 51780)
@@ -55,6 +55,7 @@
 depend pdfpages
 depend polyglossia
 depend psfrag
+depend ragged2e
 depend rcs
 depend sansmath
 depend section

Added: trunk/Master/tlpkg/tlpsrc/ragged2e.tlpsrc
===================================================================


More information about the tex-live-commits mailing list