texlive[41390] Master/texmf-dist: limap (29may16)
commits+karl at tug.org
commits+karl at tug.org
Sun Jun 12 01:21:54 CEST 2016
Revision: 41390
http://tug.org/svn/texlive?view=revision&revision=41390
Author: karl
Date: 2016-06-12 01:21:54 +0200 (Sun, 12 Jun 2016)
Log Message:
-----------
limap (29may16)
Modified Paths:
--------------
trunk/Master/texmf-dist/source/latex/limap/limap.dtx
trunk/Master/texmf-dist/source/latex/limap/limap.ins
trunk/Master/texmf-dist/tex/latex/limap/limap.cls
trunk/Master/texmf-dist/tex/latex/limap/limap.sty
Added Paths:
-----------
trunk/Master/texmf-dist/doc/latex/limap/
trunk/Master/texmf-dist/doc/latex/limap/Makefile
trunk/Master/texmf-dist/doc/latex/limap/README.md
trunk/Master/texmf-dist/doc/latex/limap/limap.pdf
trunk/Master/texmf-dist/doc/latex/limap/lppl.txt
trunk/Master/texmf-dist/doc/latex/limap/samples/
trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.ltx
trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.pdf
trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.ltx
trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.pdf
trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.ltx
trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.pdf
trunk/Master/texmf-dist/doc/latex/limap/samples/sample.ltx
trunk/Master/texmf-dist/doc/latex/limap/samples/sample.pdf
Removed Paths:
-------------
trunk/Master/texmf-dist/source/latex/limap/Makefile
Added: trunk/Master/texmf-dist/doc/latex/limap/Makefile
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/Makefile (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/limap/Makefile 2016-06-11 23:21:54 UTC (rev 41390)
@@ -0,0 +1,71 @@
+#******************************************************************************
+#* This file is part of limap.
+#*
+#* Copyright (C) 1999-2016 Gerd Neugebauer
+#*
+#* limap may be distributed under the terms of the LaTeX Project
+#* Public License version 1.3c, as described in lppl.txt.
+#*
+#*=============================================================================
+
+LATEX = latex
+LUALATEX = lualatex
+MAKEINDEX = makeindex
+
+DISTFILES = README.md \
+ limap.dtx \
+ limap.ins \
+ Makefile \
+ lppl.txt \
+ samples/boxed-toc.ltx \
+ samples/hyper.ltx \
+ samples/nolines.ltx \
+ samples/sample.ltx \
+ limap.pdf \
+ samples/boxed-toc.pdf \
+ samples/hyper.pdf \
+ samples/nolines.pdf \
+ samples/sample.pdf
+
+all: limap.cls limap.pdf
+
+cls sty limap.cls limap.sty: limap.dtx limap.ins
+ ${RM} limap.cls limap.sty
+ ${LATEX} limap.ins
+
+doc pdf limap.pdf: limap.sty limap.dtx
+ ${LUALATEX} limap.dtx
+ ${MAKEINDEX} -s gind.ist limap
+ ${MAKEINDEX} -s gglo.ist -o limap.gls limap.glo
+ ${LUALATEX} limap.dtx
+
+limap.dvi: limap.sty limap.dtx
+ ${LATEX} limap.dtx
+ ${MAKEINDEX} -s gind.ist limap
+ ${MAKEINDEX} -s gglo.ist -o limap.gls limap.glo
+ ${LATEX} limap.dtx
+
+#------------------------------------------------------------------------------
+
+%.pdf: %.ltx limap.cls
+ @${LUALATEX} $<
+ @${LUALATEX} $<
+ @mv $(notdir ${<:.ltx=.pdf}) ${<:.ltx=.pdf}
+ @rm -f $(notdir ${<:.ltx=.aux}) $(notdir ${<:.ltx=.log}) $(notdir ${<:.ltx=.out})
+
+#------------------------------------------------------------------------------
+
+dist: distclean limap.zip
+
+zip limap.zip: $(DISTFILES)
+ (cd ..; zip limap/limap.zip $(addprefix limap/,$(DISTFILES)))
+
+#------------------------------------------------------------------------------
+
+clean:
+ ${RM} *.aux *.glo *.gls *.idx *.ilg *.ind *.log *.toc *.out *~ *.dvi *.pdf samples/*.pdf
+
+distclean: clean
+ ${RM} limap.cls limap.sty limap*.zip
+
+#------------------------------------------------------------------------------
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/Makefile
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/README.md (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/limap/README.md 2016-06-11 23:21:54 UTC (rev 41390)
@@ -0,0 +1,82 @@
+
+# _limap_: A package for typesetting Information Maps
+
+The Information Mapping® method provides a methodology for structuring
+and presenting information. It claims to be useful for readers who are
+more concerned about finding the right information than reading the
+document as a whole. Thus short, highly structured, and context free
+pieces of information are used.
+
+_limap_ provides a LaTeX style and a LaTeX class. The style contains
+definitions to typeset maps and blocks according to the Information
+Mapping® method. The class provides all definitions to typeset a whole
+document.
+
+
+## Samples
+
+A few sample files are provided which contain dummy documents typeset
+with limap. They are contained in the sub-directory _samples_. You can
+have a look at the documentation of _limap_ itself to see another
+example.
+
+
+## Installation
+
+Most probably _limap_ is already included in your TeX distribution.
+Thus consult the documentation of your TeX distribution first to
+install or update this package.
+
+You can install the package manually. Apply the following steps:
+
+- Run LaTeX on `limap.ins`
+
+```
+ latex limap.ins
+```
+
+- Move the files `limap.cls` and `limap.sty` into a directory read by
+ LaTeX.
+
+- Run LaTeX and makeindex on `limap.dtx` to produce the documentation
+
+```
+ latex limap.dtx
+ makeindex -s gind.ist limap
+ makeindex -s gglo.ist -o limap.gls limap.glo
+ latex limap.dtx
+```
+
+
+## CTAN Download
+
+_limap_ can be obtained from the CTAN archives:
+
+* https://www.ctan.org/tex-archive/macros/latex/contrib/gene/limap
+
+or via the _limap_ home page
+
+* http://www.gerd-neugebauer.de/software/TeX/limap
+
+or via the source repository at Sourceforge for the most recent
+development version
+
+* https://sourceforge.net/p/gene-tex-lib/svn/HEAD/tree/limap
+
+
+## Licenses
+
+The sources and derived files of limap are distributed under the LaTeX
+Project Public License version 1.3c.
+
+The samples in the directory _samples_ are in the Public Domian
+ (Creative Commons CC0 1.0 Universal))
+
+The documentation is distributed under the Creative Commons
+Attributation-Share Alike 4.0 License (CC BY-SA 4.0).
+
+----------------------------------------------------------------------
+Enjoy it!
+
+[Gerd Neugebauer](mailto:gene at gerd-neugebauer.de)
+
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/limap.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/limap/limap.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/limap.pdf 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/doc/latex/limap/limap.pdf 2016-06-11 23:21:54 UTC (rev 41390)
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/limap.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/lppl.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/lppl.txt (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/limap/lppl.txt 2016-06-11 23:21:54 UTC (rev 41390)
@@ -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.
+
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/lppl.txt
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.ltx
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.ltx (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.ltx 2016-06-11 23:21:54 UTC (rev 41390)
@@ -0,0 +1,88 @@
+% This file is in the Public Domian (Creative Commons CC0 1.0
+% Universal))
+\documentclass[11pt,a4paper,german]{limap}
+\renewcommand\MapTableOfContentsStyle{boxed}
+\begin{document}
+\author{S.O. Meone}
+\title{Something About Nothing}
+\maketitle
+\newpage
+
+\begin{Map}{Lorem ipsum}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \MapTableOfContents
+
+\begin{Map}{Lorem ipsum dolor sit}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ \begin{tabular}{lll}\toprule
+ aaaa & bbbb & cccc \\\midrule
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\bottomrule
+ \end{tabular}
+\end{Map}
+
+\begin{Map}{Lorem ipsum dolor}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+\end{Map}
+\end{Map}
+
+\end{document}
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.ltx
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.pdf 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.pdf 2016-06-11 23:21:54 UTC (rev 41390)
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/boxed-toc.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.ltx
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.ltx (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.ltx 2016-06-11 23:21:54 UTC (rev 41390)
@@ -0,0 +1,96 @@
+% This file is in the Public Domian (Creative Commons CC0 1.0
+% Universal))
+\documentclass[11pt,a4paper,german]{limap}
+
+\usepackage{hyperref}
+\usepackage[svgnames]{xcolor}
+\hypersetup{colorlinks,
+ citecolor=Navy,
+ filecolor=Navy,
+ linkcolor=Navy,
+ urlcolor=Navy}
+
+\begin{document}
+\author{S.O. Meone}
+\title{Something About Nothing}
+\maketitle
+\newpage
+
+\begin{Map}{Lorem ipsum}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \MapTableOfContents
+
+\begin{Map}{Lorem ipsum dolor sit}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ \begin{tabular}{lll}\toprule
+ aaaa & bbbb & cccc \\\midrule
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\bottomrule
+ \end{tabular}
+\end{Map}
+
+\begin{Map}{Lorem ipsum dolor}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+\end{Map}
+\end{Map}
+
+\end{document}
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.ltx
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.pdf 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.pdf 2016-06-11 23:21:54 UTC (rev 41390)
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/hyper.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.ltx
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.ltx (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.ltx 2016-06-11 23:21:54 UTC (rev 41390)
@@ -0,0 +1,88 @@
+% This file is in the Public Domian (Creative Commons CC0 1.0
+% Universal))
+\documentclass[11pt,a4paper,german,nolines]{limap}
+
+\begin{document}
+\author{S.O. Meone}
+\title{Something About Nothing}
+\maketitle
+\newpage
+
+\begin{Map}{Lorem ipsum}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \MapTableOfContents
+
+\begin{Map}{Lorem ipsum dolor sit}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ \begin{tabular}{lll}\toprule
+ aaaa & bbbb & cccc \\\midrule
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\bottomrule
+ \end{tabular}
+\end{Map}
+
+\begin{Map}{Lorem ipsum dolor}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+\end{Map}
+\end{Map}
+
+\end{document}
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.ltx
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.pdf 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.pdf 2016-06-11 23:21:54 UTC (rev 41390)
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/nolines.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/sample.ltx
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/sample.ltx (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/sample.ltx 2016-06-11 23:21:54 UTC (rev 41390)
@@ -0,0 +1,88 @@
+% This file is in the Public Domian (Creative Commons CC0 1.0
+% Universal))
+\documentclass[11pt,a4paper,german]{limap}
+
+\begin{document}
+\author{S.O. Meone}
+\title{Something About Nothing}
+\maketitle
+\newpage
+
+\begin{Map}{Lorem ipsum}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \MapTableOfContents
+
+\begin{Map}{Lorem ipsum dolor sit}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat. Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ Duis aute irure dolor in
+ reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
+ pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
+ culpa qui officia deserunt mollit anim id est laborum.
+
+ \Block{Lorem ipsum dolor sit amet}
+ \begin{tabular}{lll}\toprule
+ aaaa & bbbb & cccc \\\midrule
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\hline
+ aaaa & bbbb & cccc \\\bottomrule
+ \end{tabular}
+\end{Map}
+
+\begin{Map}{Lorem ipsum dolor}
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+
+ \Block{Lorem ipsum dolor sit amet}
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
+ eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim
+ ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut
+ aliquip ex ea commodo consequat.
+\end{Map}
+\end{Map}
+
+\end{document}
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/sample.ltx
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/limap/samples/sample.pdf
===================================================================
(Binary files differ)
Index: trunk/Master/texmf-dist/doc/latex/limap/samples/sample.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/limap/samples/sample.pdf 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/doc/latex/limap/samples/sample.pdf 2016-06-11 23:21:54 UTC (rev 41390)
Property changes on: trunk/Master/texmf-dist/doc/latex/limap/samples/sample.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Deleted: trunk/Master/texmf-dist/source/latex/limap/Makefile
===================================================================
--- trunk/Master/texmf-dist/source/latex/limap/Makefile 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/source/latex/limap/Makefile 2016-06-11 23:21:54 UTC (rev 41390)
@@ -1,34 +0,0 @@
-#******************************************************************************
-#* $Id: Makefile 1.2 2000/03/01 20:11:42 gene Exp gene $
-#******************************************************************************
-#* Author: Gerd Neugebauer
-#*=============================================================================
-
-NAME = limap
-LATEX = latex
-MAKEINDEX = makeindex
-
-
-all: ${NAME}.cls ${NAME}.dvi
-
-${NAME}.cls: ${NAME}.dtx ${NAME}.ins
- ${RM} ${NAME}.cls ${NAME}.sty
- ${LATEX} ${NAME}.ins
-
-${NAME}.sty: ${NAME}.dtx ${NAME}.ins
- ${RM} ${NAME}.cls ${NAME}.sty
- ${LATEX} ${NAME}.ins
-
-${NAME}.dvi: ${NAME}.dtx
- ${LATEX} ${NAME}.dtx
- ${MAKEINDEX} -s gind.ist ${NAME}
- ${LATEX} ${NAME}.dtx
-
-#------------------------------------------------------------------------------
-
-ci:
- ci -l ${NAME}.dtx ${NAME}.ins Makefile
-clean:
- ${RM} ${NAME}.cls ${NAME}.sty
-
-
Modified: trunk/Master/texmf-dist/source/latex/limap/limap.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/limap/limap.dtx 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/source/latex/limap/limap.dtx 2016-06-11 23:21:54 UTC (rev 41390)
@@ -1,6 +1,4 @@
%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%^^A $Id: limap.dtx 1.2 2000/03/01 20:11:42 gene Exp gene $
-%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%\iffalse
%% Purpose:
%% A package for typesetting Information Maps.
@@ -7,21 +5,18 @@
%%
%% Documentation:
%% The documentation can be generated from the original file
-%% limap.dtx with the doc style/package. LaTeX the file limap.tex
-%% to get the full documentation in \textsc{dvi} format.
+%% limap.dtx with the doc class/package. LaTeX the file limap.tex
+%% to get the full documentation in pdf format.
%%
%% Author: Gerd Neugebauer
-%% Mainzer Str. 8
-%% 56321 Rhens (Germany)
-%% Mail: gerd.neugebauer at sdm.de
-%% gerd.neugebauer at gmx.de
+%% Im Lerchelsb\"ohl 5
+%% 64521 Gro\ss-Gerau (Germany)
+%% Mail: gene at gerd-neugebauer.de
%%
-%% Copyright (C) 1999-2000 Gerd Neugebauer
+%% Copyright (C) 1999-2016 Gerd Neugebauer
%%
%% limap.dtx may be distributed under the terms of the LaTeX Project
-%% Public License, as described in lppl.txt in the base LaTeX
-%% distribution. Either version 1.0 or, at your option, any later
-%% version.
+%% Public License version 1.3c, as described in lppl.txt.
%%
%% This class is still under development and may be replaced with a
%% new version which provides an enhanced functionality.
@@ -29,19 +24,38 @@
%\fi
%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% \title{A \LaTeX\ Package for Typesetting Information Maps\thanks{This file
-% documents \filename\ version \fileversion\ as of \filedate.}}
-% \author{Gerd Neugebauer\\
-% Mainzer Str.\ 8\\
-% 56321 Rhens (Germany)\\
-% Net: \texttt{gerd.neugebauer at sdm.de}}
+% \title{\texttt{limap}: A \LaTeX\ Package and Class for Typesetting Information Maps}
+% \author{Gerd Neugebauer\\\normalsize
+% Net: \texttt{\href{mailto:gene at gerd-neugebauer.de}{gene at gerd-neugebauer.de}}}
+% \hypersetup{
+% pdftitle = {limap},
+% pdfsubject = {A LaTeX Package for Typesetting Information Maps},
+% pdfauthor = {Gerd Neugebauer},
+% }
%
-% \date{{\footnotesize Documentation date: \docdate}}
+% \date{This file documents \filename\ version \fileversion\ as of
+% \filedate.\\ Documentation date: \docdate}
%
% \maketitle
%
%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \changes{1.0}{2000/03/01}{First public release.}
+% \changes{2.0}{2016/04/16}{Fix in |MapTableofContents|: Trailing percent made unnecessary}
+% \changes{2.0}{2016/04/16}{Extensions integrated into the package.
+% Documentation improved.}
+% \changes{2.0}{2016/04/14}{Renamed |MapTOCemph| to |MapTOCheadfont|.}
+% \changes{2.0}{2016/04/15}{Renamed |MapTitleSize| to |MapTitleFont|.}
+% \changes{2.0}{2016/04/16}{Renamed |MapTitlefraction| to |MapTitleFraction|.}
+% \changes{2.0}{2016/04/16}{Environment |MapTabular| added}
+% \changes{2.0}{2016/04/16}{Renamed |MapTextfraction| to |MapTextFraction|.}
+% \changes{2.0}{2016/04/16}{Parameter |MapBlockLabelFont| introduced.}
+% \changes{2.0}{2016/04/16}{Parameter |MapBlockLabelFont| introduced.}
+% \changes{2.0}{2016/04/17}{Renamed |MapTitleContinuedSize| to |MapTitleContinuedFont|.}
+% \changes{2.0}{2016/05/22}{TOC Re-engineered to allow
+% interaction with hyperref.}
+% \changes{2.0}{2016/05/22}{Option |nolines| added.}
+% \changes{2.1}{2016/05/24}{|WideBlock| fixed and samples added.}
+% \changes{2.1}{2016/05/26}{|MapTabularFraction| added.}
%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% \DoNotIndex{\ ,\",\',\.,\[,\\,\],\^,\`,\~,\@,\@author,\@auxout}
@@ -52,58 +66,66 @@
% \DoNotIndex{\@tempdima,\@title,\@thefnmark,\@undefined}
% \DoNotIndex{\@ixpt,\@vpt,\@vipt,\@viipt,\@viiipt}
% \DoNotIndex{\@xpt,\@xipt,\@xiipt,\@xivpt,\@xvii,\@xxpt,\@xxvpt}
-% \DoNotIndex{\AA,\AE,\CodelineIndex}
-% \DoNotIndex{\CurrentOption,\DeclareOption,\DeleteShortVerb,\DocInput}
+% \DoNotIndex{\AA,\AE,\CodelineIndex,\CurrentOption}
+% \DoNotIndex{\DescribeEnv,\DescribeMacro,\DeclareOption,\DeleteShortVerb,\DocInput}
% \DoNotIndex{\EnableCrossrefs,\H,\InputIfFileExists}
% \DoNotIndex{\L,\LARGE,\LaTeX,\Large}
% \DoNotIndex{\LoadClass,\NeedsTeXFormat,\O,\OE,\OptionNotUsed}
% \DoNotIndex{\PackageError,\PackageWarning,\PassOptionsToClass}
-% \DoNotIndex{\ProcessOptions,\ProvidesClass}
+% \DoNotIndex{\ProcessOptions,\ProvidesClass,\PrintDescribeEnv,\PrintDescribeMacro}
% \DoNotIndex{\PrintChanges,\PrintIndex}
-% \DoNotIndex{\ProvidesPackage,\RecordChanges,\RequirePackage,\TeX}
+% \DoNotIndex{\ProvidesPackage,\R,\RecordChanges,\RequirePackage,\TeX}
+% \DoNotIndex{\SpecialEnvIndex,\SpecialUsageIndex}
% \DoNotIndex{\aa,\addcontentsline,\addpenalty,\addtolength,\advance}
% \DoNotIndex{\addvspace,\ae,\ast,\arabic}
-% \DoNotIndex{\b,\baselineskip,\begin,\begingroup,\bf,\bgroup,\egroup}
-% \DoNotIndex{\bigskip,\box,\bullet}
+% \DoNotIndex{\b,\baselineskip,\begin,\begingroup,\bfseries,\bgroup}
+% \DoNotIndex{\bigskip,\bottomrule,\box,\bullet}
% \DoNotIndex{\c,\cal,\catcode,\centering,\chapter,\chardef,\circ}
-% \DoNotIndex{\clearpage,\closein,\closeout}
-% \DoNotIndex{\clubpenalty,\csname}
+% \DoNotIndex{\cfoot,\clearpage,\closein,\closeout}
+% \DoNotIndex{\clubpenalty,\color,\csname}
% \DoNotIndex{\d,\def,\dimen,\diamond,\divide,\documentclass,\dots,\dp}
-% \DoNotIndex{\edef,\else,\em,\emph,\empty,\end,\endcsname,\endgroup}
-% \DoNotIndex{\endinput,\endlist}
+% \DoNotIndex{\definecolor}
+% \DoNotIndex{\edef,\egroup,\else,\em,\emph,\empty,\end,\endcsname}
+% \DoNotIndex{\endgroup,\endinput,\endlist}
% \DoNotIndex{\expandafter,\fbox,\fi,\footnotesize,\footskip,\framebox}
% \DoNotIndex{\frenchspacing,\futurelet,\gdef,\global,\gobble}
% \DoNotIndex{\hangafter,\hangindent,\hbox,\headheight,\headsep,\hfil}
-% \DoNotIndex{\hfill,\hrule,\hskip,\hspace,\hss,\ht,\huge,\ifcat,\ifeof}
+% \DoNotIndex{\hfill,\hrule,\hskip,\hspace,\hss,\ht,\huge,\hypersetup}
+% \DoNotIndex{\ifcat,\ifeof}
% \DoNotIndex{\ifdim,\ifnum,\iftrue,\ifx,\ignorespaces,\immediate,\index}
% \DoNotIndex{\input,\it}
% \DoNotIndex{\itemindent,\itemsep,\jobname,\kern,\l,\labelsep,\labelwidth}
-% \DoNotIndex{\large,\leavevmode,\leftmark,\leftskip,\let,\list}
+% \DoNotIndex{\large,\leavevmode,\leftmark,\leftskip,\let,\lhead,\list}
% \DoNotIndex{\llap,\long,\lower}
+% \DoNotIndex{\makeatletter,\makeatother}
% \DoNotIndex{\m at th,\makebox,\magstep,\makeindex,\markboth,\mbox,\medskip}
-% \DoNotIndex{\multicolumn}
+% \DoNotIndex{\marginpar,\midrule,\multicolumn}
% \DoNotIndex{\newblock,\newcommand,\newcount,\newenvironment,\newfont}
% \DoNotIndex{\newif,\newlength,\newline,\newpage,\newread,\newwrite}
-% \DoNotIndex{\nobreak,\noindent,\normalsize,\null,\o,\oe}
-% \DoNotIndex{\openin,\openout,\or,\pagestyle,\par,\paragraph,\parbox}
+% \DoNotIndex{\nobreak,\noindent,\normalsize,\null}
+% \DoNotIndex{\o,\oddsidemargin,\oe,\openin,\openout,\or}
+% \DoNotIndex{\pagestyle,\par,\paragraph,\parbox}
% \DoNotIndex{\parfillskip,\parindent,\parsep,\parskip,\part,\partopsep}
% \DoNotIndex{\penalty,\providecommand,\quad}
% \DoNotIndex{\raggedbottom,\raggedright,\raise,\raisebox,\refstepcounter}
-% \DoNotIndex{\relax,\renewcommand,\renewenvironment,\rightskip,\rm,\rule}
+% \DoNotIndex{\relax,\renewcommand,\renewenvironment,\rhead}
+% \DoNotIndex{\rightskip,\rm,\rule}
% \DoNotIndex{\sbox,\sc,\section,\setcounter,\setlength,\settowidth}
% \DoNotIndex{\sf,\sfcode,\sl}
% \DoNotIndex{\sloppy,\small,\space,\ss,\string}
+% \DoNotIndex{\setsansfont,\setmonofont,\setmainfont}
% \DoNotIndex{\subparagraph,\subsubparagraph}
% \DoNotIndex{\subsection,\subsubsection,\symbol}
% \DoNotIndex{\t,\tenex,\textheight,\textit,\textsf,\textstyle,\textwidth}
-% \DoNotIndex{\the,\thepage,\thispagestyle}
-% \DoNotIndex{\topmargin,\topsep,\tt,\typeout}
-% \DoNotIndex{\u,\unitlength,\usecounter,\v,\varepsilon,\vbox}
-% \DoNotIndex{\vfill,\vsize,\vskip,\vspace,\vss}
-% \DoNotIndex{\wd,\widowpenalty,\write,\xdef,\z@}
+% \DoNotIndex{\textrm,\the,\thepage,\thispagestyle,\textregistered}
+% \DoNotIndex{\topmargin,\toprule,\topsep,\tt,\typeout}
+% \DoNotIndex{\u,\unitlength,\usecounter,\usepackage,\usetikzlibrary}
+% \DoNotIndex{\v,\varepsilon,\vbox}
+% \DoNotIndex{\vfill,\vsize,\voffset,\vskip,\vspace,\vss}
+% \DoNotIndex{\wd,\widowpenalty,\write,\xdef,\z@,\(,\)}
%
%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% \CheckSum{608}
+% \CheckSum{798}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% \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
@@ -123,396 +145,1271 @@
%%
%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
-% \begin{abstract}
-% The Information
-% Mapping\(^{\textrm{\footnotesize\textregistered}}\) method
-% provides a different methodology for structuring and presenting
-% information. It claims to be useful for readers who are more
-% concerned about finding the right information than reading the
-% document as a whole. Thus short, highly structured, and context
-% free pieces of information are used.
+% \begin{Abstract}
+% The Information Mapping\R method provides a methodology for
+% structuring and presenting information. It claims to be useful
+% for readers who are more concerned about finding the right
+% information than reading the document as a whole. Thus short,
+% highly structured, and context free pieces of information are
+% used.
%
-% \texttt{limap.dtx} provides a \LaTeX{} style and a \LaTeX{}
-% class. The style contains definitions to typeset maps and
-% blocks according to the Information Mapping method. The
-% class provides all definitions to typeset a whole document.
-% \end{abstract}
+% \texttt{limap} provides a \LaTeX{} package and a \LaTeX{}
+% class. The package contains definitions to typeset maps and
+% blocks according to the Information Mapping\R method. The class
+% provides all definitions to typeset a whole document.
+% \end{Abstract}
%
% \newpage
+% \begin{Map}{}
+% \vspace*{-6ex}%
+% \Block{Copyright}%
+% Copyright \textcopyright\ 1999–2016
+% \href{http://www.gerd-neugebauer.de}{Gerd Neugebauer}
+%
+% \Block{Licenses}%
+% The source files of |limap| and the derived files
+% \begin{itemize}\itemsep=0pt
+% \item |limap.dtx|
+% \item |limap.ins|
+% \item |README.md|
+% \item |Makefile|
+% \item |limap.sty|
+% \item |limap.cls|
+% \item |limap.pdf|
+% \end{itemize}
+% may be distributed under the terms of the \LaTeX\ Project
+% Public License version 1.3c, as described in the file
+% |lppl.txt|.
+%
+% The documentation can be used under the
+% \href{http://creativecommons.org/licenses/by-sa/4.0/}{Creative
+% Commons Attributation-Share Alike 4.0 License} (CC BY-SA 4.0).
+%
+% The files in the |samples| directory are distributed unter
+% \href{http://creativecommons/zero/1.0}{Creative Commons CC0
+% 1.0 Universal}.
+%
+% \Block{Net}%
+% The sources of |limap| are hosted on Sourceforge as part of the
+% project \texttt{gene-tex-lib}. The sources can be found under
+% the URL
+% \url{https://sourceforge.net/p/gene-tex-lib/svn/HEAD/tree/limap/}.
+%
+% A bundled distribution can be obtained via CTAN under the
+% package URL
+% \url{https://www.ctan.org/pkg/limap} or from the package's home
+% page under \url{http://www.gerd-neugebauer.de/sowftware/TeX/limap}.
+%
+% \Block{Contact}%
+% The author can be contacted under the following coordinates:
+%
+% \begin{minipage}{.6\linewidth}\parindent=2em
+% Gerd Neugebauer \medskip\par
+% Im Lerchelsb\"ohl 5 \par
+% 64521 Gro\ss-Gerau \par
+% Germany \medskip\par
+% \href{mailto:gene at gerd-neugebauer.de}{gene at gerd-neugebauer.de}
+% \end{minipage}
+% \end{Map}
+% \newpage
% \tableofcontents
% \newpage
%
-% \section{Motivation}
%
-% The information mapping method provides a methodology to
-% structure information in a special way. The aim is to help a
-% reader who uses the document to search for relevant information
-% instead of consuming it from start to end. The information
-% mapping method also claims to raise the productivity of writers.
+% \begin{Map}{Motivation}
+%
+% \Block{Methodology}%
+% The information mapping\R method provides a methodology to
+% structure information in a special way. The aim is to help a
+% reader who uses the document to search for relevant information
+% instead of consuming it from start to end. The information
+% mapping method also claims to raise the productivity of
+% writers.
%
-% This document does not include an introduction to the information
-% mapping method. The reader is referred to other documents. Maybe
-% an acompanying document is distributed with this package.
+% \Block{No tutorial}%
+% This document does not include an introduction to the
+% information mapping method itself. The reader is referred to
+% other documents. Maybe an accompanying document will be
+% distributed along with this package.
%
-% To support the information mapping method several \LaTeX{} macros
-% and environments are needed which provide a logical description
-% of the relevant concepts. Those macros are provided in the
-% package and class file.
+% Unfortunately the methodology – or the name – is protected by
+% a trademark. Thus the teaching of the methodology is restricted
+% to licensed institutions.
+%
+% \Block{Principles}%
+% \begin{center}
+% \begin{tikzpicture}[mindmap,concept color=blue!16]\bfseries\scriptsize
+% \node [concept,ball color=blue!8] {Information Mapping\R}
+% child[grow=150,concept color=blue!20!black] {%
+% node[concept,ball color=blue!20!black] {\color{white}Principles}
+% child[grow=30,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Chunking}}
+% child[grow=80,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Relevance}}
+% child[grow=130,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Labelling}}
+% child[grow=180,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Consistency}}
+% child[grow=230,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Accessible details}}
+% child[grow=280,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Integrated graphics}}
+% };
+% \end{tikzpicture}
+% \end{center}
+%
+% \Block{Information Type}%
+%
+% \begin{center}
+% \begin{tikzpicture}[mindmap,concept color=blue!48]\bfseries\scriptsize
+% \node [concept,ball color=blue!8] {Information Mapping\R}
+% child[grow=-30,concept color=blue!20!black] {%
+% node[concept,ball color=blue!20!black] {\color{white}Infor-mation Type}
+% child[grow=100,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Procedure}}
+% child[grow=50,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Process}}
+% child[grow=0,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Principle}}
+% child[grow=-50,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Concept}}
+% child[grow=-110,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Structure}}
+% child[grow=-160,concept color=blue!48] {%
+% node[concept,ball color=blue!48] {Fact}}
+% };
+% \end{tikzpicture}
+% \end{center}
+%
+% \Block{Problems of restructuring}%
+% You as \LaTeX\ user may have encountered the problem when
+% restructuring a document: The sections know exactly the level
+% they belong to. If you introduce a new section and put another
+% section into it you have to change all sectioning commands to
+% reflect the new level of the section and their subsections.
%
-% This package provides both a class file as well as a package. The
-% package contains the definitions of maps, blocks, and
-% others. They can be used together with any base class.
+% The macros of |limap| abstract away the level of the document
+% structuring. Any structuring unit is a “Block”. It may contain
+% text or other blocks. Such blocks are the replacement or the
+% sectioning commands. When you restructure your document you
+% simply shift the block and anything it contains to the new
+% place and you are done.
+%
+% The same mechanism can help you to include the same material in
+% several documents – at different sectioning levels!
%
-% The class load a base class and does some other useful stuff. The
-% base class can be determined with two class options.
+% \Block{Structure and constituents}%
+% The general approach focuses very much on the structure of
+% the document. The following diagram illustrates the terminology
+% used within this documentation.
+%
+% \begin{center}\small
+% \tikzstyle{class}=[rectangle,
+% text centered,
+% minimum width=6em,
+% minimum height=3em,
+% draw=black!60!red,
+% drop shadow,
+% top color=yellow!92!red!10!white,
+% bottom color=yellow!92!red!40!white]
+% \tikzstyle{arrow}=[draw=black!60!red, thick]
+% \begin{tikzpicture}
+% \path (3.75,6) node(doc) [class]{\bfseries Document}
+% (3.75,4) node(map) [class]{\bfseries Map}
+% (3.75,2) node(block) [class]{\bfseries Block}
+% (0,0) node(text) [class]{\bfseries Text}
+% (2.5,0) node(table) [class]{\bfseries Table}
+% (5,0) node(image) [class]{\bfseries Image}
+% (7.5,0) node(figure) [class]{\bfseries Diagram};
+% \draw[arrow,very thick,->] (doc) -- (map);
+% \node[left] at ($(doc)!.6!(map)$) {\scriptsize 1..*};
+% \draw[arrow,very thick,->] (map) -- (block);
+% \node[left] at ($(map)!.6!(block)$) {\scriptsize 1..9};
+% \draw[arrow,very thick,->] (map) -- +(1.5,0) -- +(1.5,1) -- +(.75,1) -- (map);
+% \draw (4.75,4.75) node {\scriptsize 0..*};
+% \draw[arrow,very thick,->] (block) -- (text);
+% \node[left] at ($(block)!.6!(text)$) {\scriptsize 0..*};
+% \draw[arrow,very thick,->] (block) -- (table);
+% \node[left] at ($(block)!.6!(table)$) {\scriptsize 0..1};
+% \draw[arrow,very thick,->] (block) -- (image);
+% \node[right] at ($(block)!.6!(image)$) {\scriptsize 0..1};
+% \draw[arrow,very thick,->] (block) -- (figure);
+% \node[right] at ($(block)!.6!(figure)$) {\scriptsize 0..1};
+% \end{tikzpicture}
+% \end{center}
+%
+% \Block{Class or package}%
+% To support the information mapping\R method several \LaTeX{}
+% macros and environments are provided which allow you to enter a
+% logical description of the relevant concepts. Those macros are
+% provided in the package and class file. It is up to you to
+% choose one of them.
%
+% \Block{Interoperabilty with other classes and packages}%
+% The main part of the user interface is inherited from \LaTeX.
+% The major differences are the sectioning commands which are
+% made obsolete in parts by the information mapping\R method.
+% Thus most packages can be used to typeset contents of a block.
+% \end{Map}
+%
+% \begin{Map}{Getting Started}
%
-% \section{The User Interface}
+% \Block{Introduction}%
+% If you are starting to use |limap| you should be vaguely
+% familiar with the underlying methodology. This documentation
+% does not provide an introduction.
%
-% The main part of the user interface is inherited from \LaTeX. The
-% major differences are the sectioning commands which are made
-% obsolete in parts by the information mapping method.
+% When you start using this class or package you should say
+% “Good bye” to the classical document structuring macros in
+% the \LaTeX\ standard classes.
%
-% \subsection{Package and Class Options}
-% The package and the class can take several options to influence
-% the behaviour of the package or class.
+% \Block{Class or package}%
+% First of all you should decide whether to use the |limap| class
+% or the |limap| package. The class is meant for a complete document.
+% The package allows to combine |limap| with arbitrary other
+% document classes.
+%
+% \Block{Contents}%
+% In the maps contained herein you will find an introduction on
+% the use of the |limap| macros and environments. They are
+% accompanied by illustrating sample code.
+% \MapTableOfContents
+%
+% \begin{Map}{Using the Document Class}
+%
+% \Block{Using the document class}%
+% This package provides both a class file as well as a package.
+% The package contains the definitions of maps, blocks, and
+% others. They can be used together with any base class. This
+% is illustrated in the following preamble:
+% \begin{verbatim}
+% \documentclass{book}
+% \usepackage{limap}
+% \begin{document} \end{verbatim}
+%
+% \Block{Suppressing the block lines}%
+% This class option |nolines| can be used to suppress the line
+% above and below block. This is illustrated in the following
+% preamble:
+% \begin{verbatim}
+% \documentclass[nolines]{limap}
+% \begin{document} \end{verbatim}
+%
+% \Block{Other options}%
+% Any option not processed by |limap.cls| is passed to the
+% underlying document class used. Thus it is possible to
+% customize the underlying class any further.
+%
+% \Block{Several types of options}%
+% In the maps contained herein you will find the supported
+% options for the document class |limap|.
+% \MapTableOfContents
+%
+% \begin{Map}{Document Class Options for Language Selection}
+%
+% \Block{Introduction}%
+% The document class |limap| inserts some words. Thus it has to
+% know the language it is supposed to use. Thus the language
+% has to be specified as one document class option.
+% \begin{verbatim}
+% \documentclass[german]{limap}
+% \begin{document} \end{verbatim}
+%
+% \Block{Supported languages}%
+% First, we describe the settings influencing the language
+% specific settings. They do not make provisions to use the
+% appropriate hyphenation patterns. They just arrange things
+% such that the internally used texts are displayed in the
+% chosen language.
+%
+% \begin{MapTabular}{@{\tt }lp{.75\linewidth}}\toprule
+% \rm Option & Description\\\midrule
+% austrian & Activate the language specific text
+% fragments for the Austrian language (in fact
+% German with one minor modification).\\
+% english & Activate the language specific text fragments
+% for the English language.\\
+% french & Activate the language specific text fragments
+% for the French language.\\
+% german & Activate the language specific text fragments
+% for the German language.\\
+% USenglish & Activate the language specific text
+% fragments for the American
+% English.\\\bottomrule
+% \end{MapTabular}
%
-% First, we describe the settings influencing the langu\xE1ge specific
-% settings. They do not make provisions to use the appropriate
-% hyphenation patterns. They just arrange things such that the
-% internaly used texts are displaeyed in the choosen language.
-% \begin{description}
-% \item [austrian] Activate the language specific text fragments
-% for the austrian language (in fact German with one minor modification).
-% \item [german] Activate the language specific text fragments
-% for the german language.
-% \item [french] Activate the language specific text fragments
-% for the french language.
-% \item [english] Activate the language specific text fragments
-% for the english language.
-% \item [USenglish] Activate the language specific text fragments
-% for the american language.
-% \end{description}
+% \Block{Default language}%
+% The default language is |english|. It is used if no language
+% is set.
+%
+% \Block{Beware of hyphenation}%
+% Note that the hyphenation patterns are not loaded
+% automatically. You have to load the hyphenation patterns,
+% for instance with the
+% \href{https://www.ctan.org/pkg/babel}{babel} package.
%
-% The class has two additional options to determine the base class
-% to be used. The first option is the variant. It can take the
-% following values:
+% This behavior has been chosen to allow you to select the
+% language package of your choice. Also you can pass in
+% additional options to this package more easily.
+% \end{Map}
+%
+% \begin{Map}{Document Class Options for Variant Selection}
+%
+% \Block{Introduction}%
+% The document class |limap| is based on another document
+% class. Thus you can use the well-known macros and
+% environments defined there and take advantage of the
+% extensions provided by |limap|.
+%
+% \begin{verbatim}
+% \documentclass{limap}
+% \begin{document} \end{verbatim}
+% \Block{Variants}%
+% The class has two additional options to determine the base
+% class to be used. The first option is the variant. It can take
+% the following values:
%
-% \begin{description}
-% \item [base] Use the base set of classes. This is the default.
-% \item [koma] Use the set of classes from koma-script.
-% \end{description}
+% \begin{MapTabular}{@{\tt }ll}\toprule
+% \rm Option & Description\\\midrule
+% base & Use the base set of classes. This is the default.\\
+% koma & Use the set of classes from
+% \href{https://www.ctan.org/pkg/koma-script}{koma-script}.\\\bottomrule
+% \end{MapTabular}
%
-% The second option is the class type. It determines which kind of
-% document to typeset. It can talk the following values:
-% \begin{description}
-% \item [book] Typeset a book type document.
-% \item [report] Typeset a report type document.
-% \item [article] Typeset a article type document.
-% \item [letter] Typeset a letter type document.
-% \end{description}
+% \Block{Default variant}%
+% If no document class option is used then |base| is the
+% default variant.
+% \end{Map}
+%
+% \begin{Map}{Document Class Options for Base Class Selection}
+%
+% \Block{Introduction}%
+% The document class |limap| follows the logic introduced in
+% the \LaTeX\ standard document classes. The type of the base
+% document class can be given as argument to the |limap| class.
+%
+% \begin{verbatim}
+% \documentclass[book]{limap}
+% \begin{document} \end{verbatim}
%
-% The following table shows which base classes are loaded according
-% to the given values:
+%
+% \Block{Class type}%
+% The second option is the class type. It determines which kind of
+% document to typeset. It can take the following values:
+%
+% \begin{MapTabular}{@{\tt }ll}\toprule
+% \rm Option & Description\\\midrule
+% book & Typeset a book type document.\\
+% report & Typeset a report type document.\\
+% article & Typeset an article type document.\\
+% letter & Typeset a letter type document.\\\bottomrule
+% \end{MapTabular}
+%
+% \Block{Mapping of variant and type}%
+% The following table shows which base classes are loaded according
+% to the given values:
%
-% \begin{center}
-% \begin{tabular}{lcc}\hline
-% & \emph{base} & \emph{koma} \\\hline
-% \emph{book} & book & scrbook \\
-% \emph{report} & report & scrreprt \\
-% \emph{article} & article & scrartcl \\
-% \emph{letter} & latter & scrlettr \\\hline
-% \end{tabular}
-% \end{center}
+% \begin{MapTabular}{@{\tt }lcc}\toprule
+% \rm Type /variant & \emph{base} & \emph{koma} \\\midrule
+% book & book & scrbook \\
+% report & report & scrreprt \\
+% article & article & scrartcl \\
+% letter & letter & scrlettr \\\bottomrule
+% \end{MapTabular}
+%
+% \Block{Default type}%
+% The default type is |report|. It is used if no type is set.
+% \end{Map}
+% \end{Map}
+%
+% \begin{Map}{Using the Package}
+% \Block{Introduction}%
+% The package |limap| can be used together with most document
+% classes. An exception are classes for slides like the
+% \href{https://www.ctan.org/pkg/beamer}{beamer} class.
+%
+% As usual it is declared in the document preamble.
%
-% Any option not processed by limap.cls is passed to the base class
-% used. Thus it is possible to customize those classes any further.
+% \begin{verbatim}
+% \documentclass{report}
+% \usepackage{limap}
+% \begin{document} \end{verbatim}
+% \Block{Content}%
+% The following additional information is available.
+% \MapTableOfContents
+%
+% \begin{Map}{Package Options for Language Selection}
+%
+% \Block{Introduction}%
+% The package |limap| inserts some words. Thus it has to
+% know the language it is supposed to use. Thus the language
+% has to be specified as package option.
+% \begin{verbatim}
+% \usepackage[german]{limap}
+% \begin{document} \end{verbatim}
+%
+% \Block{Inheritance of document class options}%
+% Alternatively the language selecting option can be specified
+% as document class option. Thus several packages can share the
+% same setting.
+% \begin{verbatim}
+% \documentclass[german]{scrbook}
+% \documentclass{limap}
+% \begin{document} \end{verbatim}
+%
+% \Block{Supported languages}%
+% Here we describe the settings influencing the language
+% specific settings. They do not make provisions to use the
+% appropriate hyphenation patterns. They just arrange things
+% such that the internally used texts are displayed in the
+% chosen language.
+%
+% \begin{MapTabular}{@{\tt }lp{.75\linewidth}}\toprule
+% \rm Option & Description\\\midrule
+% austrian & Activate the language specific text
+% fragments for the Austrian language (in fact
+% German with one minor modification).\\
+% english & Activate the language specific text fragments
+% for the English language.\\
+% french & Activate the language specific text fragments
+% for the French language.\\
+% german & Activate the language specific text fragments
+% for the German language.\\
+% USenglish & Activate the language specific text
+% fragments for the American English.\\\bottomrule
+% \end{MapTabular}
%
+% \Block{Default language}%
+% The default language is |english|. It is used if no language
+% is set.
%
-% \subsection{Macros and Environments}
+% \Block{Beware of hyphenation}%
+% Note that the hyphenation patterns are not loaded
+% automatically. You have to load the hyphenation patterns,
+% for instance with the
+% \href{https://www.ctan.org/pkg/babel}{babel} package.
%
-% \DescribeEnv{Block}
-% The environment |Block| can be used to typeset an IMAP block. It takes
-% one argument which is the block title.
+% This behavior has been chosen to allow you to select the
+% language package of your choice. Also you can pass in
+% additional options to this package more easily.
+% \end{Map}
+% \end{Map}
+% \end{Map}
+%
+% \begin{Map}{The Block}\label{map:block}
+%
+% \Block{Meaning}%
+% A “block” is the essential building units of the |limap|
+% package. You can think of it as paragraph with a title.
+%
+% \Block{Appearance}%
+% The blocks are usually typeset with the block label on the left
+% side and the contents to its right. They are surrounded by
+% white-space and a thin line above and below.
+%
+% \DescribeMacro{\Block}
+% The macro |\Block| can be used to typeset an block. It
+% takes one argument which is the block label.
%
-% This environment is active inside a map only. It can't easily be
-% redefined.
+% This is a shorthand for denoting a block. The end mark can be
+% omitted if you use the macro instead of the environment.
+% Nevertheless this is depreciated.
%
-% \DescribeMacro{\Block}
-% The macro |\Block| can be used to typeset an IMAP block. It takes
-% one argument which is the block title.
+% \Block{Example}%
+% The following sample illustrates how to enter a block.
+% \begin{verbatim}
+% \Block{Block Label}
+% And now comes the block text. It can consist of one or more
+% classical paragraphs, or tables, or pictures, or something
+% else. \end{verbatim}
+%
+% \Block{Just in a map}%
+% Note that the macro |\Block| can be used inside a map only. If
+% you try to use it outside the scope of a map you will get an
+% error.
%
-% This is a shorthand for denoting a block. The end mark can be
-% omitted if you use the macro instead of the environment.
-% Nevertheless this is depreciated.
+% \Block{More on blocks}%
+% Several more aspects of blocks are covered in the following
+% maps.
+% \MapTableOfContents
%
-% \DescribeMacro{\WideBlock}
-% The macro |\WideBlock| can be used to typeset a piece of
-% information on the whole page width. It is normally used after an
-% initiating block containng the title of the whole construction.
+% \begin{Map}{Configuring Blocks}
%
-% The macro |\WideBlock| takes one argument which contains the
-% material to span the whole page width.
+% \DescribeMacro{\MapBlockLabelFont}
+% The macro |\MapBlockLabelFont| determines the font changing
+% command to be used for typesetting the block label. The
+% default is empty.
%
-% \DescribeEnv{Map}
-% The environment |Map| can be used to typeset an IMAP map.
+% \Block{Colored block labels}%
+% The macro |\MapBlockLabelFont| can for instance be used to achieve
+% colored block labels. For this purpose we can include the package
+% |xcolor| in the preamble and select for instance a named color
+% for the rule.
+% This is illustrated in the following example.
+% \begin{verbatim}
+% \usepackage[svgnames]{xcolor}
+% \renewcommand\MapBlockLabelFont{\color{Navy}} \end{verbatim}
+% \DescribeMacro{\MapParskip}
+% The macro |\MapParskip| determines the vertical distance of the
+% text from the separating rules. The default is \MapParskip.
+% \begin{verbatim}
+% \renewcommand\MapParskip{.25ex} \end{verbatim}
%
-% \DescribeMacro{\MapTableOfContents}
-% The macro |\MapTableOfContents| can be used to typeset the table
-% of contents for a map. This table of contents includes all
-% submaps of the map it is contained in---not recursively but
-% only one level deeper.
+% \DescribeMacro{\MapTitleFraction}
+% The macro |\MapTitleFraction| determines the part of the page
+% width devoted to the block label area. It is a fraction in the
+% range from 0 to 1. The default value of |\MapTitleFraction| is
+% 0\MapTitleFraction.
+% \begin{verbatim}
+% \renewcommand\MapTitleFraction{.25} \end{verbatim}
%
-% \DescribeMacro{\maketitle}
-% The macro |\maketitle| is redefined by the class to show a new
-% appearance on a title page. It can be used as in the standard
-% classes.
+% \DescribeMacro{\MapTextFraction}
+% This macro determines the part of the page width devoted to the
+% text area. It is a fraction in the range from 0 to 1. The
+% default value of |\MapTextFraction| is 0\MapTextFraction.
%
+% |\MapTitleFraction| and |\MapTextFraction| should add up to
+% something less or equal to 1. Otherwise you will get some
+% “overfull hbox” messages.
+% \begin{verbatim}
+% \renewcommand\MapTextFraction{.8} \end{verbatim}
+% \vspace*{-\MapParskip}
+% \end{Map}
+%
+% \begin{Map}{Configuring the Rules of Blocks}
%
-% \subsection{The Configuration Options}
+% \Block{Motivation}%
+% Blocks are usually surrounded by horizontal rules. The
+% appearance of these rules can be influenced by some macros.
%
-% The configuration options are settings which can be easily
-% adapted to suit your personal needs. Nevertheless it is strongly
-% recommended that you touch them only if you are really knowing
-% what you are doing and when you are willing to face the
-% consequences.
+% \DescribeMacro{\MapRuleWidth} The macro |\MapRuleWidth|
+% determines the width of the rules drawn between blocks. It is
+% defined as a macro containig a length. The default is
+% \MapRuleWidth.
%
-% \DescribeMacro{\MapRuleWidth}
-% The macro |\MapRuleWidth| determines the width of the rules drawn
-% between blocks.
+% \begin{verbatim}
+% \setlength\MapRuleWidth{1mm} \end{verbatim}
%
-% \DescribeMacro{\MapFont}
-% The macro |\MapFont| determines the font changing command to be
-% used when starting a new map.
+% \Block{Suppress visible rules}%
+% For some people the rules are distracting since they emphasize
+% the structure too much. In such situations the rule width might
+% be reduced. In the extreme case it can even be set to 0pt to
+% suppress the lines at all as in the following example:
+%
+% \begin{verbatim}
+% \renewcommand\MapRuleWidth{0pt} \end{verbatim}
%
-% \DescribeMacro{\MapTitleSize}
-% The macro |\MapTitleSize| determines the size changing command to
-% be used when typesetting the title of a map.
+% \DescribeMacro{\MapRuleStart}
+% The macro |\MapRuleStart| is inserted before rules around
+% blocks. It can be used to inject some code before the rule is
+% typeset. Initially it is empty.
%
-% \DescribeMacro{\MapTitleContinuedSize}
-% This macro determines the font changing command to be used for
-% typesetting the additional text after titles on followup pages of
-% multipage maps.
+% \Block{Colored rules}%
+% The macro |\MapRuleStart| can for instance be used to achieve
+% colored rules. For this purpose we can include the package
+% |xcolor| in the preamble and select a named color for the rule.
+% This is illustrated in the following example.
+% \begin{verbatim}
+% \usepackage[svgnames]{xcolor}
+% \renewcommand\MapRuleStart{\color{Silver}} \end{verbatim}
+% \vspace*{-3ex}
+% \end{Map}
+%
+% \begin{Map}{A Wide Block}
+%
+% \Block{Motivation}%
+% Sometimes it is necessary to extend the content of a block to
+% the whole width of the page. This can be the case for
+% illustrations or large tables.
%
-% \DescribeMacro{\MapParskip}
-% The macro |\MapParskip| determines the distance of the text from
-% the separating rules.
+% \DescribeMacro{\WideBlock}
+% The macro |\WideBlock| can be used to typeset a piece of
+% information on the whole page width. It is normally used after an
+% initiating block containing the title of the whole construction.
+%
+% The macro |\WideBlock| takes one argument which contains the
+% material to span the whole page width.
%
-% \DescribeMacro{\MapTitlefraction}
-% The macro |\MapTitlefraction| determines the part of the page
-% width devoted to the title area. It is a fraction in the range
-% from 0 to 1.
+% \Block{Example}%
+% The following sample illustrates how to enter a wide block.
+% \begin{verbatim}
+% \Block{Block Label}
+% And now comes the block text.
+% \WideBlock{\includegraphics{images/overview.svg}} \end{verbatim}
%
-% \DescribeMacro{\MapTextfraction}
-% This macro determines the part of the page width devoted to the
-% text area. It is a fraction in the range from 0 to 1.
-% |\MapTitlefraction| and |\MapTextfraction| should add up to
-% something less or equal to 1. Otherwise you will get some
-% ``overfull hbox'' messages.
+% \Block{Block Label}
+% And now comes the wide block produced with the help of
+% Ti\textit{kZ} and its decoration with random steps.
%
-% \DescribeMacro{\MapNewpage}
-% The macro |\MapNewpage| is expanded whenever a new page is
-% required between maps. Thus it can be used to suppress the
-% newpages by |\let|ing it to |\relax|. Note that this is not in
-% the spirit of the Information Mapping method.
+% \vspace*{-\MapParskip}
+% \WideBlock{\centering
+% \begin{tikzpicture}
+% \node [draw=black!50!white,
+% ball color=yellow!85!red!12!white,draw,thick,
+% minimum height=20mm, minimum width=147mm,
+% decorate, decoration={random steps,
+% segment length=5pt,amplitude=4pt}]
+% {\it A very, very, very, very, very, very, very, very, very, very, very, very, very
+% wide block content};
+% \end{tikzpicture}}\\
+% \vspace*{-\MapParskip}
+% \end{Map}
+% \end{Map}
%
-% \DescribeMacro{\MapTOC}
-% The macro |\MapTOC| is expanded to generate the entry in the
-% table of contents. It can be redefined to allow another
-% behaviour.
+% \begin{Map}{The Map}\label{map:map}
+%
+% \Block{Structuring documents}%
+% The maps are the structuring units of the |limap| package. Maps
+% may recursively contain maps and other material. The other
+% material is usually named a block. This recursive structure is
+% illustrated in the following figure.
+%
+% \newcount\picX
+% \newcount\picY
+% \newcount\picW
+% \picX=0
+% \picY=0
+% \picW=20
+% \long\def\picMap(#1)#2{%
+% \put(\the\picX,\the\picY){\framebox(\the\picW,#1)[tl]{Map}}
+% \begingroup\advance\picW-2
+% \advance\picY1 \advance\picX1
+% #2
+% \endgroup
+% \advance\picY#1 \advance\picY2
+% }%
+% \def\picBlock{%
+% \put(\the\picX,\the\picY){\makebox(\the\picW,3)[tl]{\tiny Block}}
+% \put(\the\picX,\the\picY){\line(1,0){\the\picW}}
+% \begingroup \advance\picX6
+% \advance\picY1
+% \advance\picW-6
+% \multiput(\the\picX,\the\picY)(0,.5){5}{\line(1,0){\the\picW}}
+% \endgroup
+% \advance\picY4
+% \put(\the\picX,\the\picY){\line(1,0){\the\picW}}
+% }%
+% \begin{center}\unitlength=1mm
+% \begin{picture}(20,72)\sf\scriptsize
+% \picMap(71){
+% \picMap(21){
+% \picMap(16){
+% \picBlock
+% \picBlock
+% \picBlock
+% }
+% }
+% \picMap(16){
+% \picBlock
+% \picBlock
+% \picBlock
+% }
+% \picMap(16){
+% \picBlock
+% \picBlock
+% \picBlock
+% }
+% \picBlock
+% \picBlock
+% }
+% \end{picture}
+% \end{center}
+%
+% \DescribeEnv{Map}
+% The environment |Map| can be used to typeset a map. It
+% takes a single argument which contains the map title. The map
+% title is typeset above the map and is repeated on each
+% continuation page.
%
+% \Block{Example}%
%
-% \subsection{Changing or Adding Language Specific Settings}
+% \begin{verbatim}
+% \begin{Map}{Map Title}
+% \Block{Block Label}
+% And now comes the block text. It can consist of
+% one or more classical paragraphs, or tables, or
+% pictures, or something else.
+% \end{Map} \end{verbatim}
%
-% Several strings are used automatically by the current class or
-% package. Default values for several languages are hardwired in
-% the implementation. Nevertheless it is possible to change those
-% language specific settings.
+% \Block{To at most 12~cascaded Maps}
+% There is a technical restriction in the current implementation
+% of Maps. This restriction does not allow more than 12 cascaded
+% Maps, i.e. Maps in Maps \ldots in Maps.
%
-% If you create settings for a new language it is highly
-% recommended to contact the author to integrate them into the
-% default distribution.
+% According to the good old 7$\pm$2 rule a full populated
+% document of this level would contain 282\,429\,536\,481 Maps. I
+% think it should take some time until this limit is reached.
+%
+% \Block{More on maps}%
+% Some more aspects are covered in the following pages.
+% \MapTableOfContents
%
-% The following macros can be redefined in the preamble after the
-% package or class has been loaded to reset the language specific
-% text.
+% \begin{Map}{Referencing Maps}
+%
+% \Block{Referencing maps}%
+% Maps can be referenced in the usual \LaTeX\ way. For this
+% purpose you place a macro invocation of |\label| right behind
+% the beginning of the |Map|.
%
-% \DescribeMacro{\MapContinued}
-% The macro |\MapContinued| contains the text appearing at the end
-% of map which are continued on the next page.
+% Then you can add references somewhere in the document with
+% |\ref| and |\pageref|. For backward references two \LaTeX\ runs
+% are required.
%
-% \DescribeMacro{\MapContinuing}
-% The macro |\MapContinuing| contains the text appearing at the
-% beginning of map which are continued from the previous page. It
-% is typeset after the map title.
+% \Block{Example}%
+% \begin{verbatim}
+% \begin{Map}{Map Title}\label{my.label}
+% \Block{Block Label}
+% As said on page~\pageref{my.label}... \end{verbatim}
+% \Block{Caveat emptor}%
+% |limap| automatically labels any map with a label of the form
+% \texttt{Map|@|}\textsl{n} where \textsl{n} is a
+% sequence number. Thus avoid to use such labels yourself.
+% \end{Map}
%
-% \DescribeMacro{\MapTOCname}
-% The macro |\MapTOCname| contains the text of the heading in table
-% of contents of maps for the column of map titles.
+% \begin{Map}{Configuring Maps}
+%
+% \DescribeMacro{\MapFont}
+% The macro |\MapFont| determines the font changing command to be
+% used when starting a new map.
+% \begin{verbatim}
+% \renewcommand\MapFont{\tt} \end{verbatim}
%
-% \DescribeMacro{\MapTOCpage}
-% The macro |\MapTOCpage| contains the text of the heading in table
-% of contents of maps for the column of page numbers.
+% \DescribeMacro{\MapTitleFont}
+% The macro |\MapTitleFont| determines the font changing command to
+% be used when typesetting the title of a map. The default is |\Large|.
+% \begin{verbatim}
+% \renewcommand\MapTitleFont{\huge\bfseries} \end{verbatim}
+%
+% \DescribeMacro{\MapContinued}
+% The macro |\MapContinued| contains the text appearing at the end
+% of map which are continued on the next page. It is initiated
+% when the class or package is loaded. It can overwritten
+% afterwards – for instance in the preamble.
+% \begin{verbatim}
+% \renewcommand\MapContinued{} \end{verbatim}
%
-% If you want to provide a new language \emph{lang} you can define
-% the macro |\IMAP at SelectLanguage@|\texttt{\textit{lang}} which
-% redefines the macros given above. This definition has to be
-% present before the package is loaded.
+% \DescribeMacro{\MapContinuing}
+% The macro |\MapContinuing| contains the text appearing at the
+% beginning of map which are continued from the previous page. It
+% is typeset after the map title. It is initiated
+% when the class or package is loaded. It can overwritten
+% afterwards – for instance in the preamble.
+% \begin{verbatim}
+% \renewcommand\MapContinuing{} \end{verbatim}
%
-% Note that the macro name contains a @ character. Thus the
-% definition should be made in a package of its own.
+% \DescribeMacro{\MapTitleContinuedFont}
+% This macro determines the font changing command to be used for
+% typesetting the additional text after titles on followup pages of
+% multi-page maps.
%
+% The default value is |\small|.
+% \begin{verbatim}
+% \renewcommand\MapTitleContinuedFont{\normalsize} \end{verbatim}
+%
+% \DescribeMacro{\MapNewpage}
+% The macro |\MapNewpage| is expanded whenever a new page is
+% required between maps. Thus it can be used to suppress the
+% newpages by |\let|ing it to |\relax|. Note that this is not in
+% the spirit of the Information Mapping\R method.
+%
+% \DescribeMacro{\MapTOC}
+% The macro |\MapTOC| is expanded to generate the entry in the
+% table of contents. It can be redefined to allow another
+% behavior.
+% \end{Map}
+% \end{Map}
%
-% \subsection{The Configuration File}
+% \begin{Map}{The Table of Contents}
+%
+% \Block{Everything is local}%
+% The concept of the underlying methodology is that everything
+% should be addressed relative to the current location. We see
+% this when dealing with maps (see page~\pageref{map:map}). The
+% same principle is applied to the table of contents.
%
-% When the class or package is loaded as a last action a
-% configuration file is loaded if it can be found. The name of the
-% configuration file is \texttt{limap.cfg}. This file can contain
-% redefinitions of the several macros to adjust the behaviour of
-% limap on a per directory, per user or per installation base.
+% \Block{Direct children are included}%
+% The table of contents includes all maps contained in the map in
+% which it appears. This means the immediate children of the map
+% are shown.
%
-% Note that some settings are activated before the configuration
-% file is loaded. Thus some settings may not have any effect at
-% all.
+% \Block{Block context required}%
+% The table of contents is typeset inside a block (see
+% page~\pageref{map:block}).
%
+% \DescribeMacro{\MapTableOfContents}
+% The macro |\MapTableOfContents| can be used to typeset the table
+% of contents for a map. This table of contents includes all
+% sub-maps of the map it is contained in – not recursively but
+% only one level deeper.
%
+% The macro |\MapTableOfContents| does not take any argument.
%
-% \vfill\noindent\hrulefill
+% \Block{Example}%
+% \begin{verbatim}
+% \Block{Contents}
+% And some wise words about the table of contents.
+% \MapTableOfContents \end{verbatim}
+%
+% \DescribeMacro{\MapTableOfContentsStyle}
+% The macro |\MapTableOfContentsStyle| can be used to determine
+% the style of the |\MapTableOfContents| The default style is an
+% open layout utilizing the package
+% \href{https://www.ctan.org/pkg/booktabs}{booktabs}.
%
-% \emph{To be completed}
+% The macro |\MapTableOfContentsStyle| takes one argument. This
+% argument may have one of the following values:
%
-% \noindent\hrulefill\vfill\null
+% \begin{MapTabular}{ll}\toprule
+% Argument & Meaning \\\midrule
+% open & an open style for the TOC\\\hline
+% boxed & a boxed style for the TOC\\\bottomrule
+% \end{MapTabular}%
+% \vspace*{-5ex}
+% \end{Map}
+% \begin{Map}{Tables}
%
+% \Block{Introduction}%
+% Tables play an important role as part of maps. Usually they are
+% included into a block and preceded by some useful introduction.
+%
+% \Block{Combination with booktabs}%
+% The document class |limap| and the package |limap|
+% automatically include the package
+% \href{https://www.ctan.org/pkg/booktabs}{booktabs}. This
+% package contains some support for typesetting proper tables.
+% You should have a look at the documentation of |booktabs| and
+% follow the recommendations given there.
+%
+% |booktabs| is automatically loaded by |limap| upon start-up.
+%
+% \DescribeEnv{MapTabular}
+% The environment |MapTabular| provides a convenient way to
+% include a table into a block. It produces a |tabular*|
+% environment and sets the width to the width of the text column
+% of the block.
+%
+% \Block{Example}%
+% \begin{verbatim}
+% \Block{Table block}
+% Sheding some insight on the following table.
+%
+% \begin{MapTabular}{lll}\toprule
+% a & b & \\\midrule
+% x & y & Z\\\hline
+% X & Y & Z\\\bottomrule
+% \end{MapTabular} \end{verbatim}
+% \DescribeMacro{\MapTabularFraction}
+% The tabular is always centered in the text column of the block. The
+% macro |\MapTabularFraction| contains a factor for the line
+% width occupied by the tabular. This value is used to determine
+% the width of the tabular. The default value for the macro
+% |\MapTabularFraction| is 0\MapTabularFraction.
+% \begin{verbatim}
+% \renewcommand\MapTabularFraction{.7} \end{verbatim}
+% \vspace*{-4ex}
+% \end{Map}
+%
+% \begin{Map}{Configuration}
+%
+% \Block{Introduction}%
+% |limap| is designed with a set of extension points. Those are
+% mainly definition which can be overwritten to achieve a certain
+% effect.
+%
+% \Block{Configuration in the preamble}%
+% Any configuration change performed in the preamble of a
+% document is global. It lasts until oberwritten within the
+% document.
+%
+% \Block{Configuration in the document}%
+% The configuration parameters can be overwritten in the document
+% just before they are needed. This is not recommended since it
+% makes it harder to achieve consistency.
+%
+% \Block{External configuration}%
+% The confiration can be externalised. For this purpose a special
+% file |limap.cfg| is loaded with the class or package in case it
+% exists. This file can contain configuration options for
+% |limap|. Thus it is possible to share the same appearance
+% among different documents.
+%
+% \Block{Contents}%
+% The following maps contain the various aspects of the
+% configuration of |limap|.
+% \MapTableOfContents
+%
+% \begin{Map}{The Configuration File limap.cfg}
+%
+% \Block{Default configuration file}%
+% When the class or package is loaded as a last action a
+% configuration file is loaded if it can be found. The name of
+% the configuration file is \texttt{limap.cfg}. This file can
+% contain re-definitions of the several macros to adjust the
+% behavior of |limap| on a per directory, per user or per
+% installation base.
+%
+% \Block{Note}%
+% Some settings are activated before the configuration file is
+% loaded. Thus some settings may not have any effect at all.
+% \end{Map}
+%
+% \begin{Map}{Changing or Adding Language Specific Settings}
+%
+% \Block{Overview}%
+% Several strings are used automatically by the current class or
+% package. Default values for several languages are hardwired in
+% the implementation. Nevertheless it is possible to change those
+% language specific settings.
+%
+% If you create settings for a new language it is highly
+% recommended to contact the author to integrate them into the
+% default distribution.
+%
+% The following macros can be redefined in the preamble after the
+% package or class has been loaded to reset the language specific
+% text.
+%
+% \DescribeMacro{\MapTOCname}
+% The macro |\MapTOCname| contains the text of the heading in table
+% of contents of maps for the column of map titles. It is initiated
+% when the class or package is loaded. It can overwritten
+% afterwards – for instance in the preamble.
+% \begin{verbatim}
+% \renewcommand\MapTOCname{Issue} \end{verbatim}
+%
+% \DescribeMacro{\MapTOCpage}
+% The macro |\MapTOCpage| contains the text of the heading in table
+% of contents of maps for the column of page numbers. It is initiated
+% when the class or package is loaded. It can overwritten
+% afterwards – for instance in the preamble.
+% \begin{verbatim}
+% \renewcommand\MapTOCname{Reference} \end{verbatim}
+%
+% \Block{Providing a new language}%
+% If you want to provide a new language \textit{lang} you can
+% define the macro |\LIMAP at SelectLanguage@|\textit{lang} which
+% redefines the macros given above. This definition has to be
+% present before the package is loaded.
+%
+% Note that the macro name contains the @ character. Thus the
+% definition should be made in a package of its own.
+% \end{Map}
+% \end{Map}
+%
+%
+%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \StopEventually{}
% \newpage
% \if at undefined\environment
% \newenvironment{environment}[1]{}{}
% \fi
+%
+% \begin{Map}{The Implementation}
+% \Block{Overview}%
+% This part of the document describes the implementation. Usually
+% it is not meant for the casual user. Nevertheless it might be
+% fruitful for those searching for inspiration or for tricks when
+% using this class or package.
%
+% \Block{Contents}%
+% \MapTableOfContents
%
-% \section{The Documentation Driver}
+% \begin{Map}{The Version Information}
%
-% The documentation driver is necessary to provide a self
-% documenting dtx file. With this construction the dtx file can be
-% run through \LaTeX\ to produce the documentation.
-%
-% \subsection{The Version Information}
-%
-% \begin{macro}{\LIMAP at RCS}
-% The macro |\LIMAP at RCS| is used to parse rcs information. The
-% second word enclosed in spaces is preserved. The other parts are
-% ignored.
+% \Block{Purpose}%
+% The version information is included for printing it on the
+% documentation and at start-up when the class or package is
+% loaded. It has to preceed the documentation driver to properly
+% include this information into the printed manual.
+%
+% \Block{}%
+% \begin{macro}{\filename}
+% |\filename| is the name of the dtx file containing this class
+% and package.
% \begin{macrocode}
-\def\LIMAP at RCS$#1: #2 #3${#2}
+\def\filename{limap.dtx}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% Now the usual macros are filled. Some of the informations are
-% taken from strings automatically managed by rcs.
-%
-% \begin{macro}{\filename}
-% |\filename| is the name of the dtx file.
+% \Block{}%
+% \begin{macro}{\fileversion}
+% |\fileversion| is the version number of the |dtx| file. It is
+% used as a version number for the class and package.
% \begin{macrocode}
-\def\filename{limap.dtx}
+\def\fileversion{2.1}
% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\fileversion}
-% |\fileversion| is the version number of the dtx file.
+% \end{macro}
+%
+% \Block{}%
+% \begin{macro}{\filedate}
+% |\filedate| is the change date of the |dtx| file. It is used
+% as a version date and documentation date.
% \begin{macrocode}
-\xdef\fileversion{\LIMAP at RCS$Revision: 1.2 $}
+\def\filedate{2016/05/29}
% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\filedate}
-% |\filedate| is the change date of the dtx file.
+% \end{macro}
+%
+% \Block{}%
+% \begin{macro}{\docversion}
+% |\docversion| is the version number of the documentation. It
+% is identical to the version number of the |dtx| file.
% \begin{macrocode}
-\xdef\filedate{\LIMAP at RCS$Date: 2000/03/01 20:11:42 $}
-% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\docversion}
-% |\docversion| is version number of the documentation. It is
-% identical to the version number of the dtx file.
-% \begin{macrocode}
\let\docversion=\fileversion
% \end{macrocode}
-% \end{macro}
-% \begin{macro}{\docdate}
-% |\docdate| is change date of the documentation. It is
-% identical to the change date of the dtx file.
+% \end{macro}
+%
+% \Block{}%
+% \begin{macro}{\docdate}
+% |\docdate| is the change date of the documentation. It is
+% identical to the change date of the |dtx| file.
% \begin{macrocode}
\let\docdate=\filedate
% \end{macrocode}
-% \end{macro}
+% \end{macro}
+% \end{Map}
%
-% \subsection{Producing the Documentation}
+% \begin{Map}{The Documentation Driver}
+% \Block{Purpose}%
+% The documentation driver is necessary to provide a self
+% documenting |dtx| file. With this construction the dtx file can
+% be run through \LaTeX\ to produce the documentation.
%
-% The driver section contains a complete \LaTeX\ document which
-% loads the dtx file. The special class |ltxdoc| is used and some
-% arraganements are made for this purpose.
+% The driver section contains a complete \LaTeX\ document which
+% loads the |dtx| file. The special class |ltxdoc| is used and
+% some arrangements are made for this purpose.
%
+% \Block{Driver code}%
+% The driver code is not exported by the installer.
+%
% \begin{macrocode}
%<*driver>
-\documentclass{ltxdoc}
+\documentclass[a4paper]{ltxdoc}
\RequirePackage{textcomp}
+\usepackage{limap}
+\let\LimapFilename\filename
+\let\LimapFileversion\fileversion
+\let\LimapFiledate\filedate
+\let\LimapDocdate\docdate
+% \end{macrocode}
+% \Block{Page Layout}%
+% \begin{macrocode}
+\oddsidemargin=10pt
+\evensidemargin=10pt
+\textwidth=430pt
+\textheight=650pt
+\voffset=-12mm
+% \end{macrocode}
+% \Block{Headings}%
+% \begin{macrocode}
+\usepackage{fancyhdr}
+\addtolength{\headheight}{2ex}%
+\pagestyle{fancy}%
+\cfoot{}
+\rhead{\small\sf\thepage}
+\lhead{\textit{\footnotesize limap} – Package and Class}
+% \end{macrocode}
+% \Block{Links and such}%
+% \begin{macrocode}
+\usepackage{hyperref}
+% \end{macrocode}
+% \Block{Fonts}%
+% \begin{macrocode}
+\usepackage{fontspec}
+\setmainfont{TeX Gyre Heros}
+\setsansfont{TeX Gyre Heros}%[Scale=MatchLowercase]
+\setmonofont{Inconsolata}%[Scale=MatchLowercase]
+% \end{macrocode}
+% \Block{Coloring}%
+% \begin{macrocode}
+\usepackage[svgnames]{xcolor}
+\renewcommand\MapTitleFont{\Large\bfseries\color{Navy}}
+\renewcommand\MapBlockLabelFont{\bfseries\color{Navy}}
+\definecolor{linkColor}{rgb}{.66,.2,.2}
+\hypersetup{colorlinks,
+ citecolor=linkColor,
+ filecolor=linkColor,
+ linkcolor=linkColor,
+ urlcolor=linkColor}
+\renewcommand\MapRuleStart{\color{Navy}}
+\renewcommand\MapRuleWidth{1pt}
+% \end{macrocode}
+% \Block{Graphics}%
+% \begin{macrocode}
+\usepackage{tikz}
+\usetikzlibrary{decorations.pathmorphing}
+\usetikzlibrary{shadows}
+\usetikzlibrary{mindmap}
+\usetikzlibrary{calc}
+% \end{macrocode}
+% \Block{Saving version}%
+% \begin{macrocode}
+\let\filename\LimapFilename
+\let\fileversion\LimapFileversion
+\let\filedate\LimapFiledate
+\let\docdate\LimapDocdate
+% \end{macrocode}
+% \Block{Adapting doc.sty}%
+% \begin{macrocode}
+\def\theCodelineNo{\color{DarkGreen}\rmfamily\scriptsize\arabic{CodelineNo}}%
+\makeatletter
+\renewcommand\DescribeMacro{\catcode`\\=12\Describe@@Macro}
+\def\Describe@@Macro#1{\Block{\PrintDescribeMacro{#1}}%
+ \SpecialUsageIndex{#1}\@esphack\ignorespaces}
+\renewcommand\DescribeEnv{\catcode`\\=12\Describe@@Env}
+\def\Describe@@Env#1{\Block{\PrintDescribeEnv{#1}}%
+ \SpecialEnvIndex{#1}\@esphack\ignorespaces}
+\makeatother
+\let\maketitle\MakeTitle
+% \end{macrocode}
+% \Block{Some additions}%
+% \begin{macrocode}
+\newcommand\R{\(^{\textrm{\footnotesize\textregistered}}\) }
+\let\marginpar\Block
\InputIfFileExists{limap.dcf}{}{}
\RecordChanges
\EnableCrossrefs
\CodelineIndex
+% \end{macrocode}
+% \Block{The content}%
+% Now everything is prepared. Let the show begin\ldots
+% \begin{macrocode}
\begin{document}
\DeleteShortVerb{|}
\DocInput{\filename}
+%\newpage
+%\PrintChanges
\newpage
-\PrintChanges
-\newpage
\setcounter{IndexColumns}{2}
\PrintIndex
\end{document}
%</driver>
% \end{macrocode}
+% \end{Map}
+%
%
-% \section{The Implementation}
-% The rest of the document describes the implementation. Usually it
-% is not meant for the casual user. Nevertheless it might be
-% fruitful for those searching for inspiration or for tricks when
-% using this class or style.
+% \begin{Map}{The \TeX\ Code}
%
-% \subsection{Preliminaries and Option Processing}
+% \Block{Overview}%
+% The rest of the document describes the implementation. Usually
+% it is not meant for the casual user. Nevertheless it might be
+% fruitful for those searching for inspiration or for tricks when
+% using this class or package.
%
-% First of all we request a descent version of \LaTeX\ to be used.
+% \Block{Contents}%
+% \MapTableOfContents
%
+% \begin{Map}{The Package and Class Declarations}
+%
+% \Block{Preliminaries}%
+% First of all we request a descent version of \LaTeX\ to be
+% used. I don't think ikt does not have to be too new.
+%
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
% \end{macrocode}
%
-% \subsubsection{The Package/Class Declarations}
-%
-% When the package is generated, the package identification is
-% included.
+% \Block{Package identification}%
+% When the package is generated, the package identification is
+% included.
% \begin{macrocode}
%<*package>
-\ProvidesPackage{limap}[\filedate\space gene]
+\ProvidesPackage{limap}[\filedate\space Gerd Neugebauer]
%</package>
% \end{macrocode}
%
-% When the class is generated, the class identification is
-% included.
+% \Block{Class identification}%
+% When the class is generated, the class identification is
+% included.
% \begin{macrocode}
%<*class>
-\ProvidesClass{limap}[\filedate\space gene]
+\ProvidesClass{limap}[\filedate\space Gerd Neugebauer]
%</class>
% \end{macrocode}
-%
-% \subsubsection{Language Specific Declarations}
+% \end{Map}
%
-% \begin{macro}{\LIMAP at Language}
-% The macro |\IMAP at Language| determines the language to be used for
-% several small text fragments to be inserted at certain places. It
-% is redefinded by package/class options and evaluated at the end
-% to activate the selected settings.
+% \begin{Map}{Language Specific Macros}
+%
+% \Block{Introduction}%
+% This section contains internal macros used to implement the
+% functionality. New languages can be easily be added. For this
+% purpose only a new macro has to be defined and a package/class
+% option for the convenience of the user.
+%
+% Consider you want to add a new language “latin” then you have
+% to provide the command |\LIMAP at SelectLanguage@latin|. This
+% macro should simply redefine the macros containing strings of
+% the language specific texts. Examples for other languages are
+% provided in this section.
+%
+% To enable the language settings for “latin” the macro
+% |\LIMAP at Language| has to be defined to contain the value
+% “latin”. Usually this is accomplished by providing a
+% convenient option to the package or class.
+%
+% \Block{}%
+% \begin{macro}{\defineLimapLanguage}
+% Provide the definitions for a language. The different texts
+% to be used are stored in a macro which defines the target
+% macros when expanded.
% \begin{macrocode}
+\def\defineLimapLanguage#1#2#3#4#5{%
+ \expandafter\def\csname LIMAP at SelectLanguage@#1\endcsname{%
+ \def\MapContinued{#2}%
+ \def\MapContinuing{#3}%
+ \def\MapTOCname{#4}%
+ \def\MapTOCpage{#5}%
+ }%
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \Block{Definitions for the language “austrian“}%
+% \begin{macrocode}
+\defineLimapLanguage{austrian}%
+ { Fortsetzung}{Fortsetzung\dots}%
+ {Titel}{Seite}
+% \end{macrocode}
+%
+% \Block{Definitions for the language “german“}%
+% \begin{macrocode}
+\defineLimapLanguage{german}%
+ { Fortsetzung}{Fortsetzung\dots}%
+ {Titel}{Seite}
+% \end{macrocode}
+%
+% \Block{Definitions for the language “english“}%
+% \begin{macrocode}
+\defineLimapLanguage{english}%
+ { Continued}{Continuing\dots}%
+ {Title}{Page}
+% \end{macrocode}
+%
+% \Block{Definitions for the language “USenglish“}%
+% \begin{macrocode}
+\defineLimapLanguage{USenglish}%
+ { Continued}{Continuing\dots}%
+ {Title}{Page}
+% \end{macrocode}
+%
+% \Block{Definitions for the language “french“}%
+% \begin{macrocode}
+\defineLimapLanguage{french}%
+ { continuation}{continuation\dots}%
+ {Intitulé}{Page}
+% \end{macrocode}
+%
+% \Block{}%
+% \begin{macro}{\LIMAP at Language}
+% The macro |\LIMAP at Language| determines the language to be
+% used for several small text fragments to be inserted at
+% certain places. It is redefined by package/class options and
+% evaluated at the end to activate the selected settings.
+% \begin{macrocode}
\providecommand\LIMAP at Language{english}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
+% \Block{}%
% \begin{macrocode}
\DeclareOption{austrian}{\renewcommand\LIMAP at Language{austrian}}
\DeclareOption{german}{\renewcommand\LIMAP at Language{german}}
@@ -521,35 +1418,45 @@
\DeclareOption{USenglish}{\renewcommand\LIMAP at Language{USenglish}}
% \end{macrocode}
%
-% \begin{macro}{\ifLIMAP at strict}
-% The boolean |\ifLIMAP at strict| determines if the lower sectioning
-% macros should be disabled in the class.
+% \Block{}%
+% \begin{macro}{\ifLIMAP at strict}
+% The boolean |\ifLIMAP at strict| determines if the lower
+% sectioning macros should be disabled in the class.
% \begin{macrocode}
\newif\ifLIMAP at strict \LIMAP at stricttrue
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
+% \Block{}%
% \begin{macrocode}
\DeclareOption{nonstrict}{\LIMAP at strictfalse}
% \end{macrocode}
%
-% \subsubsection{Determining the Appropriate Base Class}
+% \Block{}%
+% \begin{macrocode}
+\DeclareOption{nolines}{\def\MapRuleWidth{0pt}\ignorespaces}
+% \end{macrocode}
+%
+% \begin{Map}{Determining the Appropriate Base Class}
%
+% \Block{}%
% \begin{macrocode}
%<*class>
% \end{macrocode}
%
-% \begin{macro}{\LIMAP at ClassType}
-% The macro |\LIMAP at ClassType| determines the type of the class to
-% be used. Usually it can take the values |book|, |report|,
-% |article|, and |letter| (for completeness). This macro is
-% redefined when the options of the class are evaluated. Finally
-% this macro helps to select the appropriate base class.
+% \begin{macro}{\LIMAP at ClassType}
+% The macro |\LIMAP at ClassType| determines the type of the class
+% to be used. Usually it can take the values |book|, |report|,
+% |article|, and |letter| (for completeness). This macro is
+% redefined when the options of the class are evaluated.
+% Finally this macro helps to select the appropriate base
+% class.
% \begin{macrocode}
\providecommand\LIMAP at ClassType{report}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
+% \Block{}%
% \begin{macrocode}
\DeclareOption{book}{\renewcommand\LIMAP at ClassType{book}}
\DeclareOption{report}{\renewcommand\LIMAP at ClassType{report}}
@@ -557,23 +1464,27 @@
\DeclareOption{letter}{\renewcommand\LIMAP at ClassType{letter}}
% \end{macrocode}
%
-% \begin{macro}{\LIMAP at Variant}
-% The macro |\LIMAP at Variant| determines the variant of the class to
-% be used. Usually it can take the values |base| and |koma|. This
-% macro is redefined when the options of the class are evaluated.
-% Finally this macro helps to select the appropriate base class.
+% \Block{}%
+% \begin{macro}{\LIMAP at Variant}
+% The macro |\LIMAP at Variant| determines the variant of the
+% class to be used. Usually it can take the values |base| and
+% |koma|. This macro is redefined when the options of the class
+% are evaluated. Finally this macro helps to select the
+% appropriate base class.
% \begin{macrocode}
\providecommand\LIMAP at Variant{base}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
+% \Block{Options for selecting the variant}%
% \begin{macrocode}
\DeclareOption{koma}{\renewcommand\LIMAP at Variant{koma}}
\DeclareOption{base}{\renewcommand\LIMAP at Variant{base}}
% \end{macrocode}
%
-% Define a mapping between the variant and class type to the class
-% name to be used.
+% \Block{Mapping to document class}%
+% Define a mapping between the variant and class type to the class
+% name to be used.
% \begin{macrocode}
\newcommand\LIMAP at Class@base at article{article}
\newcommand\LIMAP at Class@base at report{report}
@@ -583,24 +1494,26 @@
\newcommand\LIMAP at Class@koma at report{scrreprt}
\newcommand\LIMAP at Class@koma at book{scrbook}
\newcommand\LIMAP at Class@koma at letter{scrlettr}
+%</class>
% \end{macrocode}
%
+% \Block{Pass on the unknown options}%
% \begin{macrocode}
+%<*class>
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{%
\csname LIMAP at Class@\LIMAP at Variant @\LIMAP at ClassType\endcsname}%
}
+%</class>
% \end{macrocode}
%
-% Thus the class specific options are completed.
-% \begin{macrocode}
-%</class>
-% \end{macrocode}
+% Thus the class specific options are completed.
%
-% Now we can process all options.
+% Now we can process all options.
% \begin{macrocode}
\ProcessOptions
% \end{macrocode}
%
+% \Block{}%
% \begin{macrocode}
%<*class>
% \end{macrocode}
@@ -607,26 +1520,36 @@
% The requested class is loaded and the options remaining are
% processed.
% \begin{macrocode}
-\LoadClass{\csname LIMAP at Class@\LIMAP at Variant @\LIMAP at ClassType\endcsname}
+\LoadClass{\csname
+ LIMAP at Class@\LIMAP at Variant @\LIMAP at ClassType\endcsname}
%</class>
% \end{macrocode}
+% \end{Map}
%
-% \subsubsection{Loading Required Packages}
+% \begin{Map}{Loading Required Packages}
%
-% The package |longtable| is used internally to implement a part of
-% the required functionality. Thus we need to ensure that it is
-% loaded.
+% \Block{longtable for breakable tables}%
+% The package
+% \href{https://www.ctan.org/pkg/longtable}{longtable} is used
+% internally to implement a part of the required functionality.
+% Thus we need to ensure that it is loaded.
% \begin{macrocode}
\RequirePackage{longtable}
% \end{macrocode}
+% \Block{etoolbox}%
+% \begin{macrocode}
+\RequirePackage{etoolbox}
+% \end{macrocode}
%
-% The package |booktabs| is used internally to implement a part of
-% the required functionality. Thus we need to ensure that it is
-% loaded.
+% \Block{booktabs for nice tables}%
+% The package \href{https://www.ctan.org/pkg/booktabs}{booktabs}
+% is used internally to implement a part of the required
+% functionality. Thus we need to ensure that it is loaded.
% \begin{macrocode}
\RequirePackage{booktabs}
% \end{macrocode}
%
+% \Block{fancyhdr for head and foot lines}%
%
% \begin{macrocode}
%<*class>
@@ -640,131 +1563,170 @@
%</class>
% \end{macrocode}
%
-% Since the blocks are not supposed to line up at the end of the
-% page we declare |\raggedbottom|.
+% \Block{No vertical adjustment of pages}%
+% Since the blocks are not supposed to line up at the end of the
+% page we declare |\raggedbottom|.
% \begin{macrocode}
\raggedbottom
% \end{macrocode}
-%
-% \subsection{Layout Parameters}
+% \end{Map}
+% \end{Map}
%
-% The layout can be influenced by a large number of
-% parameters. Thus the design decisions have been made transparent
-% (to a certain degree at least). These options are not meant to be
-% changed except when a new layout is beeing designed and implemented.
+% \begin{Map}{Layout Parameters}
%
-% \begin{macro}{\MapRuleWidth}
-% The macro |\MapRuleWidth| determines the width of the rules drawn
-% between blocks.
+% \Block{Overview}%
+% The layout can be influenced by a large number of parameters.
+% Thus the design decisions have been made transparent (to a
+% certain degree at least). These options are not meant to be
+% changed except when a new layout is being designed and
+% implemented.
+%
+% \Block{}%
+% \begin{macro}{\MapRuleWidth}
+% The macro |\MapRuleWidth| determines the width of the rules
+% drawn between blocks.
% \begin{macrocode}
-\newcommand\MapRuleWidth{.25pt}
+\providecommand\MapRuleWidth{.25pt}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapContinued}
-% This macro determines the text to be used in the title of
-% continued maps. This macro is reset when the language specific
-% initializations are performed.
+% \Block{}%
+% \begin{macro}{\MapRuleStart}
+% The macro |\MapRuleStart| is inserted before the rules
+% drawn between blocks.
% \begin{macrocode}
+\newcommand\MapRuleStart{}
+% \end{macrocode}
+% \end{macro}
+%
+% \Block{}%
+% \begin{macro}{\MapContinued}
+% This macro determines the text to be used in the title of
+% continued maps. This macro is reset when the language
+% specific initializations are performed.
+% \begin{macrocode}
\newcommand\MapContinued{}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapContinuing}
-% The macro |\MapContinuing| determines the text to be used at the
-% bottom of the map which is continued. This macro is reset when
-% the language specific initializations are performed.
+% \Block{}%
+% \begin{macro}{\MapContinuing}
+% The macro |\MapContinuing| determines the text to be used at
+% the bottom of the map which is continued. This macro is reset
+% when the language specific initializations are performed.
% \begin{macrocode}
\newcommand\MapContinuing{}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapContinuingFormat}
-% This macro determines the format of the bottom line on continued
-% maps. I.e. it includes the text as well as font changing
-% commands. The text is passed to this command as argument 1.
+% \Block{}%
+% \begin{macro}{\MapContinuingFormat}
+% This macro determines the format of the bottom line on
+% continued maps. I.e. it includes the text as well as font
+% changing commands. The text is passed to this command as
+% argument 1.
% \begin{macrocode}
\newcommand\MapContinuingFormat[1]{\textit{\footnotesize #1}}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapContinuedFormat}
-% This macro determines the format of the bottom line on continued
-% maps. I.e. it includes the text passed to it as argument 1 as
-% well as font changing commands.
+% \Block{}%
+% \begin{macro}{\MapContinuedFormat}
+% This macro determines the format of the bottom line on
+% continued maps. I.e. it includes the text passed to it as
+% argument 1 as well as font changing commands.
% \begin{macrocode}
-\newcommand\MapContinuedFormat[1]{, {\MapTitleContinuedSize #1}}
+\newcommand\MapContinuedFormat[1]{, {\MapTitleContinuedFont #1}}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapFont}
-% The macro |\MapFont| determines the font changing command to be
-% used when starting a new map.
+% \Block{}%
+% \begin{macro}{\MapFont}
+% The macro |\MapFont| determines the font changing command to
+% be used when starting a new map.
% \begin{macrocode}
\let\MapFont\textsf
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTitleSize}
-% The macro |\MapTitleSize| determines the size changing command to
-% be used when typesetting the title of a map.
+% \Block{}%
+% \begin{macro}{\MapTitleFont}
+% The macro |\MapTitleFont| determines the size changing
+% command to be used when typesetting the title of a map.
% \begin{macrocode}
-\let\MapTitleSize\Large
+\let\MapTitleFont\Large
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTitleContinuedSize}
-% This macro determines the font changing command to be used for
-% typesetting the additional text after titles on followup pages of
-% multipage maps.
+% \Block{}%
+% \begin{macro}{\MapTitleContinuedFont}
+% This macro determines the font changing command to be used
+% for typesetting the additional text after titles on followup
+% pages of multipage maps.
% \begin{macrocode}
-\let\MapTitleContinuedSize\small
+\let\MapTitleContinuedFont\small
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapParskip}
-% The macro |\MapParskip| determines the distance of the text from
-% the separating rules.
+% \Block{}%
+% \begin{macro}{\MapBlockLabelFont}
+% This macro determines the font changing command to be used
+% for typesetting the block label.
% \begin{macrocode}
+\def\MapBlockLabelFont{}
+% \end{macrocode}
+% \end{macro}
+%
+% \Block{}%
+% \begin{macro}{\MapParskip}
+% The macro |\MapParskip| determines the distance of the text
+% from the separating rules.
+% \begin{macrocode}
\newcommand\MapParskip{2ex}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTitlefraction}
-% The macro |\MapTitlefraction| determines the part of the page
-% width devoted to the title area. It is a fraction in the range
-% from 0 to 1.
+% \Block{}%
+% \begin{macro}{\MapTitleFraction}
+% The macro |\MapTitleFraction| determines the part of the page
+% width devoted to the title area. It is a fraction in the
+% range from 0 to 1.
% \begin{macrocode}
-\newcommand\MapTitlefraction{.2}
+\newcommand\MapTitleFraction{.2}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTextfraction}
-% This macro determines the part of the page width devoted to the
-% text area. It is a fraction in the range from 0 to 1.
-% |\MapTitlefraction| and |\MapTextfraction| should add up to
-% something less or equal to 1. Otherwise you will get some
-% ``overfull hbox'' messages.
+% \Block{}%
+% \begin{macro}{\MapTextFraction}
+% This macro determines the part of the page width devoted to
+% the text area. It is a fraction in the range from 0 to 1.
+% |\MapTitleFraction| and |\MapTextFraction| should add up to
+% something less or equal to 1. Otherwise you will get some
+% “overfull hbox” messages.
% \begin{macrocode}
-\newcommand\MapTextfraction{.75}
+\newcommand\MapTextFraction{.75}
% \end{macrocode}
% \end{macro}
+% \end{Map}
%
-% \subsection{Adaptable Macros}
+% \begin{Map}{Adaptable Macros}
%
-% \begin{macro}{\MapNewpage}
-% The macro |\MapNewpage| is expanded whenever a new page is
-% required between maps. Thus it can be used to suppress the
-% newpages by |\let|ing it to |\relax|.
+% \Block{Overview}%
+%
+% \begin{macro}{\MapNewpage}
+% The macro |\MapNewpage| is expanded whenever a new page is
+% required between maps. Thus it can be used to suppress the
+% newpages by |\let|ing it to |\relax|.
% \begin{macrocode}
\let\MapNewpage\newpage
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTOC}
-% The macro |\MapTOC| is expanded to generate the entry in the
-% table of contents. It can be redefined to allow another
-% behaviour.
+% \Block{}%
+% \begin{macro}{\MapTOC}
+% The macro |\MapTOC| is expanded to generate the entry in the
+% table of contents. It can be redefined to allow another
+% behavior.
% \begin{macrocode}
\newcommand\MapTOC[1]{%
\refstepcounter{\@nameuse{Map at TOC@name\the\Map at level}}%
@@ -771,146 +1733,185 @@
\addcontentsline{toc}{\@nameuse{Map at TOC@name\the\Map at level}}{#1}%
}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTOCname}
-% The macro |\MapTOCname| contains the heading for the section title
-% in contents blocks. This macro is reset when the language specific
-% initializations are performed.
+% \Block{}%
+% \begin{macro}{\MapTOCname}
+% The macro |\MapTOCname| contains the heading for the section
+% title in contents blocks. This macro is reset when the
+% language specific initializations are performed.
% \begin{macrocode}
\newcommand\MapTOCname{}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTOCpage}
-% The macro |\MapTOCpage| contains the heading for the page number
-% in contents blocks. This macro is reset when the language specific
-% initializations are performed.
+% \Block{}%
+% \begin{macro}{\MapTOCpage}
+% The macro |\MapTOCpage| contains the heading for the page
+% number in contents blocks. This macro is reset when the
+% language specific initializations are performed.
% \begin{macrocode}
\newcommand\MapTOCpage{}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\MapTOCemph}
-% The macro |\MapTOCemph|
+% \Block{}%
+% \begin{macro}{\MapTOCheadfont}
+% The macro |\MapTOCheadfont| contains the font switching
+% command for typesetting the head line of map table of
+% contents.
% \begin{macrocode}
-\let\MapTOCemph=\emph
+\newcommand\MapTOCheadfont{\scriptsize\emph}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
+% \end{Map}
%
-% \subsection{Language Specific Macros}
+% \begin{Map}{Internal Macros, Lengths, and Counters}
%
-% This section contains interanl macros used to implement the
-% functionality. New languages can be easily be added. For this
-% puropose only a new macro has to be defined and a package/class
-% option for the convenience of the user.
+% \Block{}%
+% This section contains internal macros used to implement the
+% functionality.
%
-% Consider you want to add a new language ``latin'' then you have
-% to provide the command |\LIMAP at SelectLanguage@latin|. This macro
-% should simply redefine the macros containing strings of the
-% language specific texts. Examples for other languages are
-% provided in this section.
-%
-% To enable the language settings for ``latin'' the macro
-% |\LIMAP at Language| has to be defined to contain the value
-% ``latin''. Usually this is accomplished by providing a convenient
-% option to the package or class.
-%
-% \begin{macro}{\LIMAP at SelectLanguage@austrian}
-% Provide the definition for the langauge ``austrian''.
+% \Block{}%
+% \begin{macro}{\Map at length}
+% The length register |\Map at length| is allocated to store the
+% width of the space between the columns of a block.
% \begin{macrocode}
-\providecommand\LIMAP at SelectLanguage@austrian{%
- \renewcommand\MapContinued{ Fortsetzung}%
- \renewcommand\MapContinuing{Fortsetzung\dots}
- \renewcommand\MapTOCname{Titel}
- \renewcommand\MapTOCpage{Seite}
-}
+\newlength{\Map at length}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\LIMAP at SelectLanguage@german}
-% Provide the definitions for the laguage ``german''.
+% \Block{}%
+% \begin{macro}{\Map at level}
+% The macro |\Map at level| determines the level of inclusion of
+% maps. It is used to determine the appearance in the table of
+% contents.
% \begin{macrocode}
-\providecommand\LIMAP at SelectLanguage@german{%
- \renewcommand\MapContinued{ Fortsetzung}%
- \renewcommand\MapContinuing{Fortsetzung\dots}
- \renewcommand\MapTOCname{Titel}
- \renewcommand\MapTOCpage{Seite}
-}
+\newcount\Map at level
+\Map at level=0
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\LIMAP at SelectLanguage@english}
-% Provide the definitions for the language ``english''.
+% \Block{}%
+% \begin{macro}{\Map at blockcount}
+% The macro |\Map at blockcount| is used to count the blocks per
+% map to issue a package warning if required.
% \begin{macrocode}
-\providecommand\LIMAP at SelectLanguage@english{%
- \renewcommand\MapContinued{ Continued}%
- \renewcommand\MapContinuing{Continuing\dots}
- \renewcommand\MapTOCname{Title}
- \renewcommand\MapTOCpage{Page}
-}
+\newcount\Map at blockcount
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\LIMAP at SelectLanguage@USenglish}
-% Provide the definitions for the language ``USenglish''.
+% \Block{}%
+% \begin{macro}{\LT at final@warn}
+% The macro |\LT at final@warn| is defined in |longtable|. It is
+% redefined to show |limap| are originator.
% \begin{macrocode}
-\providecommand\LIMAP at SelectLanguage@USenglish{%
- \renewcommand\MapContinued{ Continued}%
- \renewcommand\MapContinuing{Continuing\dots}
- \renewcommand\MapTOCname{Title}
- \renewcommand\MapTOCpage{Page}
-}
+\def\LT at final@warn{%
+ \AtEndDocument{%
+ \PackageWarning{limap}%
+ {Table \@width s have changed. Rerun LaTeX.\@gobbletwo}}%
+ \global\let\LT at final@warn\relax}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
+% \end{Map}
%
+% \begin{Map}{Typesetting a Map}
%
-% \subsection{Internal Macros, Lengths, and Counters}
-%
-% This section contains internal macros used to implement the
-% functionality.
-%
-% \begin{macro}{\Map at length}
-% The length register |\Map at length| is allocated to store the width
-% of the space between the columns of a block.
+% \Block{}%
+% \begin{environment}{Map}
+% The environment |Map|determines the appearance of a map. It is
+% implemented as a |longtable| environment which takes care for
+% the page breaks and inserts material at the end of the page
+% and the beginning of the new page upon page break.
+% \end{environment}
% \begin{macrocode}
-\newlength{\Map at length}
+\def\Map#1{%
% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\Map at level}
-% The macro |\Map at level| determines the level of inclusion of
-% maps. It is used to determine the appearence in the table of
-% contents.
+% First the messages of |longtable| are modified to show this
+% package name instead.
% \begin{macrocode}
-\newcount\Map at level
-\Map at level=0
+ \def\LT at err{\PackageError{limap}}%
+ \def\LT at warn{\PackageWarning{limap}}%
% \end{macrocode}
-% \end{macro}
+% \Block{}%
+% The map local macro |\Block| is
+% activated. The counter for blocks is reset.
+% \begin{macrocode}
+ \let\Block\Map at Block
+ \let\endBlock\Map at endBlock
+ \Map at blockcount=0
+% \end{macrocode}
+% \Block{}%
+% The number of the map in the internal counting is set by
+% incrementing the old value.
+% \begin{macrocode}
+ \global\advance\Map at no1
+% \end{macrocode}
+% \Block{}%
+%
+% \begin{macrocode}
+ \ifx\Map at UP\empty\else
+ \immediate\write\@auxout
+ {\string\expandafter\string\xdef\string\csname\space
+ Map at parts@\Map at UP\string\endcsname{\string\csname\space
+ Map at parts@\Map at UP\string\endcsname\the\Map at no:}}%
+ \fi
+% \end{macrocode}
+% \Block{}%
+%
+% \begin{macrocode}
+ \edef\Map at UP{\the\Map at no}%
+ \ifnum\Map at level>0
+ \xdef\Map@@up{\Map at UP}% Just to save the value across blocks.
+ \endgroup
+ \Map at end
+ \begingroup
+ \edef\Map at UP{\Map@@up}%
+ \def\@currenvir{Map}%
+ \fi
+ \edef\Map at this{\the\Map at no}%
+% \end{macrocode}
+% \Block{}%
+% The entries for future use of sub-maps are written to the |aux| file.
+% \begin{macrocode}
+ \immediate\write\@auxout
+ {\string\global\string\@namedef{Map at parts@\the\Map at no}{}}%
+% \end{macrocode}
+% \Block{}%
+%
+% \begin{macrocode}
+ \global\advance\Map at level1
+ \def\Map at TITLE{#1}%
+ \Map at start
+ }
+% \end{macrocode}
+% \Block{}%
%
-% \begin{macro}{\Map at blockcount}
-% The macro |\Map at blockcount| is used to count the blocks per map
-% to issue a style warning if required.
% \begin{macrocode}
-\newcount\Map at blockcount
+\def\endMap{%
+ \Map at end
+ \global\advance\Map at level-1
+ \ignorespaces
+}
% \end{macrocode}
-% \end{macro}
%
-% \begin{macro}{\ifMap at open@}
-% The conditional |\ifMap at open@| is used to record the opening and
-% closing of the |longtable| environment, since can not be used
-% inside itself. Thus it can be closed before a new instance is
-% opened.
+% \Block{}%
+% \begin{macro}{\ifMap at open@}
+% The conditional |\ifMap at open@| is used to record the opening
+% and closing of the |longtable| environment, since can not be
+% used inside itself. Thus it can be closed before a new
+% instance is opened.
% \begin{macrocode}
\newif\ifMap at open@
\Map at open@false
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\Map at TOC@name}
-% The macros |\Map at TOC@name|\dots provide a mapping between a
-% number and a sectioning unit. This mapping is used when the
-% entry in the table of contents is generated.
+% \Block{}%
+% \begin{macro}{\Map at TOC@name}
+% The macros |\Map at TOC@name|\dots provide a mapping between a
+% number and a sectioning unit. This mapping is used when the
+% entry in the table of contents is generated.
% \begin{macrocode}
\@namedef{Map at TOC@name0}{chapter}
\@namedef{Map at TOC@name1}{section}
@@ -926,51 +1927,62 @@
\@namedef{Map at TOC@name11}{subsubparagraph}
\@namedef{Map at TOC@name12}{subsubparagraph}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\Map at start}
-% The macro |\Map at start| is used to initiate the use of a map. It
-% uses the |longtable| environment to perform the page breaking and
-% marking of continued pages.
+% \Block{}%
+% \begin{macro}{\Map at start}
+% The macro |\Map at start| is used to initiate the use of a map.
+% It takes no arguments. The map title is passed in via the
+% macro |\Map at TITLE|.
+%
+% It uses the |longtable| environment to perform the page
+% breaking and marking of continued pages.
% \begin{macrocode}
\newcommand\Map at start{%
-% \typeout{--- MAP START}%
+ \advance\Map at counter1
\setlength{\Map at length}{\textwidth}%
- \addtolength{\Map at length}{-\MapTitlefraction\textwidth}%
- \addtolength{\Map at length}{-\MapTextfraction\textwidth}%
- \MapTOC{\Map at TITLE}%
+ \addtolength{\Map at length}{-\MapTitleFraction\textwidth}%
+ \addtolength{\Map at length}{-\MapTextFraction\textwidth}%
+ \ifx\Map at TITLE\empty\else
+ \MapTOC{\Map at TITLE}%
+ \fi
\longtable
- {@{}p{\MapTitlefraction\textwidth}@{\hspace{\Map at length}}
- p{\MapTextfraction\textwidth}@{}}%
+ {@{}p{\MapTitleFraction\textwidth}@{\hspace{\Map at length}}
+ p{\MapTextFraction\textwidth}@{}}%
\multicolumn{2}{@{}p{\textwidth}@{}}{%
- \MapFont{\MapTitleSize\rule{0pt}{3ex}%
+ \MapFont{\MapTitleFont\rule{0pt}{3ex}%
\Map at TITLE}}
\endfirsthead
\multicolumn{2}{@{}p{\textwidth}@{}}{%
- \MapFont{\MapTitleSize\rule{0pt}{3ex}%
+ \MapFont{\MapTitleFont\rule{0pt}{3ex}%
\Map at TITLE\MapContinuedFormat{\MapContinued}}}%
\endhead
- \par\vspace*{-\parskip}\vspace*{-2ex}\\
- &\rule{\MapTextfraction\textwidth}{\MapRuleWidth}\newline
- \mbox{}\hfill\raisebox{3pt}{\MapContinuingFormat{\MapContinuing}}
+ \\
+ &\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}\newline
+ \mbox{}\hfill
+ \raisebox{3pt}{\MapContinuingFormat{\MapContinuing}}
\endfoot
- &\rule{\MapTextfraction\textwidth}{\MapRuleWidth}%
+ &\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}%
\vspace{\MapParskip}
\endlastfoot
\xdef\@currentlabel{\Map at TITLE}%
+ \label{Map@\the\Map at no}%
\global\Map at open@true
}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\Map at end}
-% The macro |\Map at end| is expanded when the end of the end of the
-% |longtable| environment might be needed. The boolean |\ifMap at open@|
-% determines whether such an environment is really open.
+% \Block{}%
+% \begin{macro}{\Map at end}
+% The macro |\Map at end| is expanded when the end of the end of
+% the |longtable| environment might be needed. The boolean
+% |\ifMap at open@| determines whether such an environment is
+% really open.
% \begin{macrocode}
\newcommand\Map at end{%
-% \typeout{--- MAP END}%
- \ifMap at open@
+ \ifMap at open@\vspace*{1.5ex}
\global\Map at open@false
\endlongtable
\MapNewpage
@@ -978,7 +1990,8 @@
\iftrue
\ifnum\Map at blockcount>9
\PackageWarning{limap}%
- {*** The current map contains too much blocks: \the\Map at blockcount}%
+ {*** The current map contains too much blocks:
+ \the\Map at blockcount}%
\else\ifnum\Map at blockcount>7
\PackageWarning{limap}%
{--- The current map contains \the\Map at blockcount blocks.}%
@@ -986,231 +1999,307 @@
\fi
}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\Map at UP}
-% The macro |\Map at UP| contains the number of the parent map or the
-% empty string.
+% \Block{}%
+% \begin{macro}{\Map at UP}
+% The macro |\Map at UP| contains the number of the parent map or
+% the empty string.
% \begin{macrocode}
\newcommand\Map at UP{}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\Map at no}
-% The counter |\Map at no| contains the sequence number for all
-% maps. This value is used internally to reference single maps.
+% \Block{}%
+% \begin{macro}{\Map at no}
+% The counter |\Map at no| contains the sequence number for all
+% maps. This value is used internally to reference single maps.
% \begin{macrocode}
\newcount\Map at no
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\Map at parts@}
-% The macro |\Map at parts@| is used to store the parts of the
-% toplevel maps. This is the initialization of a feature otherwise
-% used in the aux file.
+% \Block{}%
+% \begin{macro}{\Map at counter}
+% The counter |\Map at counter| contains the number of a map in
+% the context of the containing map .
% \begin{macrocode}
+\newcount\Map at counter
+\Map at counter=0
+% \end{macrocode}
+% \end{macro}
+%
+% \Block{}%
+% \begin{macro}{\Map at parts@}
+% The macro |\Map at parts@| is used to store the parts of the
+% top-level maps. This is the initialization of a feature
+% otherwise used in the aux file.
+% \begin{macrocode}
\@namedef{Map at parts@}{}
% \end{macrocode}
% \end{macro}
+% \end{Map}
%
-% \subsection{Typesetting a Map}
+% \begin{Map}{Typesetting a Block}
%
-% \begin{environment}{Map}
-% This environment determines the apearance of a Map. It is
-% implemented as a longtable environment which takes care for the
-% page breaks and inserts material at the end of the page and the
-% beginning of the new page upon page break.
+% \Block{}%
+% Blocks are the basic building unit of maps. Here the Block is
+% defined in all it's beauty.
+%
+% \begin{environment}{Map at Block}
+% This macro is used to typeset a block inside a Map. To avoid
+% abuse outside of a map it is activated within a Map only.
% \begin{macrocode}
-\newenvironment{Map}[1]{%
+\newenvironment{Map at Block}[1]{\par
+ \vspace*{-\parskip}\vspace*{-1ex}%
+ \\\null\par
+ \vspace*{\MapParskip}%
+ \raggedright\hspace{0pt}\MapFont{\MapBlockLabelFont{#1}}%
+ \gdef\@currentlabel{#1}%
+% \global\advance\Map at blockcount1
+ &\parskip=\MapParskip
+ {\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}}\par
% \end{macrocode}
-% First the messages of |longtable| are modified to show this
-% package name instead.
+%
+% The final action is empty. Thus the block can be used as a simple
+% macro as well.
% \begin{macrocode}
- \def\LT at err{\PackageError{limap}}%
- \def\LT at warn{\PackageWarning{limap}}%
+}{%
+}
% \end{macrocode}
-% The map local macro |\Block| and the environment |Block| is
-% activated. The counter for blocks is reset.
+% \end{environment}
+%
+% \Block{}%
+% \begin{macro}{\Block}
+% The macro |\Block| issues an error when used outside of a Map
+% environment.
% \begin{macrocode}
- \let\Block\Map at Block
- \let\endBlock\Map at endBlock
- \Map at blockcount=0
+\newcommand\Block[1]{\PackageWarning{limap}{The sectioning command
+ `Block' has been encountered outside the scope of a Map
+ environment.}}
% \end{macrocode}
-% The number of the map in the internal counting is set by
-% incrementing the old value.
+% \end{macro}
+%
+% \Block{}%
+% \begin{macro}{\WideBlock}
+% The macro |\WideBlock| takes one argument which is added to
+% the current block where the whole width of the table is used.
% \begin{macrocode}
- \global\advance\Map at no1
-% \typeout{--- \the\Map at no: \Map at UP}%
+\newcommand\WideBlock{\\\multicolumn2{@{}l@{}}}
% \end{macrocode}
-%
+% \end{macro}
+% \end{Map}
+%
+% \begin{Map}{Typesetting a Table of Contents}
+%
+%
+% \Block{}%
% \begin{macrocode}
- \ifx\Map at UP\empty\else
- \immediate\write\@auxout
- {\string\expandafter\string\xdef\string\csname\space
- Map at parts@\Map at UP\string\endcsname{\string\csname\space
- Map at parts@\Map at UP\string\endcsname\the\Map at no:}}%
- \fi
+\newif\if at Map@toc at sep@
% \end{macrocode}
-%
-% \begin{macrocode}
- \edef\Map at UP{\the\Map at no}%
- \ifnum\Map at level>0
- \xdef\Map@@up{\Map at UP}% Just to save the value across blocks.
- \endgroup
-% \typeout{--- Closing Map \the\Map at level}%
- \Map at end
- \begingroup
- \edef\Map at UP{\Map@@up}%
- \def\@currenvir{Map}%
- \fi
- \edef\Map at this{\the\Map at no}%
-% \end{macrocode}
-% The entries for future use of submaps are written to the aux file.
-% \begin{macrocode}
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at title@\the\Map at no}{#1}}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at page@\the\Map at no}{\the\c at page}}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at parts@\the\Map at no}{}}%
-% \end{macrocode}
-%
-% \begin{macrocode}
-% \typeout{--- Opening Map \the\Map at level}%
- \global\advance\Map at level1
- \def\Map at TITLE{#1}%
- \Map at start
-% \end{macrocode}
%
+% \Block{}%
+% \begin{macro}{\MapTableOfContents at open}
+% The macro |\MapTableOfContents at open| produces the table of
+% contents for the current map. It produces a tabular
+% containing the titles and pages of all maps directly
+% contained in the current map. It utilizes a tabular
+% environment and booktabs.
% \begin{macrocode}
- }{%
+\def\MapTableOfContents at open{%
+ \centering
+ \begin{tabular}{p{.6\textwidth}r}\toprule
+ \MapTOCheadfont{\MapTOCname}&
+ \MapTOCheadfont{\MapTOCpage}\\\midrule
+ \ifcsdef{Map at parts@\the\Map at no}{
+ \edef\Map at tmp@{\csname Map at parts@\the\Map at no\endcsname:}%
+ \expandafter\Map at toc@loop\Map at tmp@
+ \\\bottomrule
+ }{}
+ \end{tabular}
+}
% \end{macrocode}
+% \end{macro}
%
+% \Block{}%
+% \begin{macro}{\MapTableOfContents at boxed}
+% The macro |MapTableOfContents at boxed| produces the table of
+% contents for the current map. It produces a tabular
+% containing the titles and pages of all maps directly
+% contained in the current map. It utilizes a tabular
+% environment and booktabs.
% \begin{macrocode}
- \Map at end
- \global\advance\Map at level-1
-% \typeout{--- At end of Map \Map at this level \the\Map at level}%
+\def\MapTableOfContents at boxed{%
+ \centering
+ \begin{tabular}{|p{.6\textwidth}|r|}\hline
+ \MapTOCheadfont{\MapTOCname}&
+ \MapTOCheadfont{\MapTOCpage}\\\hline
+ \ifcsdef{Map at parts@\the\Map at no}{
+ \edef\Map at tmp@{\csname Map at parts@\the\Map at no\endcsname:}%
+ \expandafter\Map at toc@loop\Map at tmp@
+ \\\hline
+ }{}
+ \end{tabular}
}
% \end{macrocode}
-% \end{environment}
+% \end{macro}
%
-% \subsection{Typesetting a Block}
-%
-% \begin{environment}{Map at Block}
-% This macro is used to typeset a block inside a Map. To avoid
-% abuse outside of a map it is activated within a Map only.
+% \Block{}%
+% \begin{macro}{\MapTableOfContentsStyle}
+% The macro |MapTableOfContentsStyle| determines the style of
+% the TOCs. It can take the values |open| or |boxed|.
% \begin{macrocode}
-\newenvironment{Map at Block}[1]{\par\vspace*{-\parskip}\vspace*{-2ex}%
- \\\null\par
- \vspace*{\MapParskip}%
- \raggedright\hspace{0pt}\MapFont{#1}%
- \gdef\@currentlabel{#1}%
-% \global\advance\Map at blockcount1
- &\parskip=\MapParskip
- \rule{\MapTextfraction\textwidth}{\MapRuleWidth}\par
+\newcommand\MapTableOfContentsStyle{open}
% \end{macrocode}
+% \end{macro}
%
-% The final action is empty. Thus the block can be used as a simple
-% macro as well.
+% \Block{}%
+% \begin{macro}{\MapTableOfContents}
+% The macro |MapTableOfContents| produces the table of
+% contents for the current map. It produces a tabular
+% containing the titles and pages of all maps directly
+% contained in the current map.
% \begin{macrocode}
-}{%
+\newcommand\MapTableOfContents{\par
+ \global\@Map at toc@sep at false
+ \csname MapTableOfContents@\MapTableOfContentsStyle\endcsname
+ \vspace*{-1.5\parskip}\par\ignorespaces
}
% \end{macrocode}
-% \end{environment}
+% \end{macro}
%
-% \begin{macro}{\WideBlock}
-% The macro |\WideBlock| takes one argument which is added to the
-% current block where the whole width of the table is used.
+% \Block{}%
+% \begin{macro}{\Map at toc@loop}
+% The macro |\Map at toc@loop| is a recursive solution to loop
+% through all elements of a list of children. The argment is
+% expected to be a colon separated list of numbers. The end is
+% marked by two colons in row.
+%
+% Each number is a reference to a map. The respective line in
+% the toc table is produced.
% \begin{macrocode}
-\newcommand\Wide at Block{\\\multicolumn2{@{}l@{}}}{}
+\def\Map at toc@loop#1:{%
+ \def\Map at tmp@{#1}%
+ \ifx\Map at tmp@\empty
+ \global\let\Map at next@=\relax
+ \else
+ \if at Map@toc at sep@
+ \gdef\Map at next@{\\
+ \ref{Map@#1}&\pageref{Map@#1}%
+ \Map at toc@loop}%
+ \else
+ \gdef\Map at next@{%
+ \ref{Map@#1}&\pageref{Map@#1}%
+ \Map at toc@loop}%
+ \global\@Map at toc@sep at true
+ \fi
+ \fi
+ \Map at next@
+}
% \end{macrocode}
% \end{macro}
+% \end{Map}
%
-% \subsection{Typesetting a Table of Contents}
+% \begin{Map}{Typesetting a Table}
%
-% \begin{macro}{\MapTableOfContents}
-% The macro |\MapTableOfContents| produces the table of contents
-% for the current map. It produces a tabular containing the
-% titels and pages of all maps directly contained in the current
-% map.
+% \Block{}%
+% \begin{macro}{\MapTabularFraction}
+% The macro |\MapTabularFraction| contains a factor for the line
+% width. This is used to determine the width of the table. The
+% tabular is centered in the text column.
% \begin{macrocode}
-\newcommand\MapTableOfContents{%
- \medskip\par
- \xdef\Map@@{\csname Map at parts@\the\Map at no\endcsname}%
- \gdef\Map@@@{}%
- \centering
- \begin{tabular}{p{.6\textwidth}r}\toprule
- \MapTOCemph{\MapTOCname}&\MapTOCemph{\MapTOCpage}\\
- \midrule
- \expandafter\Map at toc@loop \Map@@:%
- \\\bottomrule
- \end{tabular}
-}
+\newcommand\MapTabularFraction{.95}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% \begin{macro}{\Map at toc@loop}
-% The macro |\Map at toc@loop| is a recursive solution to loop throup
-% all elements of a list of children.
+% \Block{}%
+% \begin{environment}{MapTabular}
+% The environment |MapTabular| produces the |tabular| environment
+% with the width of the text column.
% \begin{macrocode}
-\def\Map at toc@loop#1:{%
- \def\Map@@{#1}%
- \ifx\Map@@\empty
- \global\let\Map@@=\relax
- \else
- \gdef\Map@@{\Map@@@\@nameuse{Map at title@#1}&\@nameuse{Map at page@#1}%
- \global\let\Map@@@=\\%
- \Map at toc@loop}%
- \fi
- \Map@@
+\newenvironment{MapTabular}{%
+ \begin{center}
+ \begin{tabular*}{\MapTabularFraction\linewidth}%
+}{%
+ \end{tabular*}
+ \end{center}\ignorespaces
}
% \end{macrocode}
-% \end{macro}
-%
-% \subsection{Typesetting a Title Page}
+% \end{environment}
+% \end{Map}
%
-% \begin{macro}{\MakeTitle}
-% The macro |\MakeTitle| can be used as a replacement for the
-% |\maketitle| macro.
+% \begin{Map}{Typesetting the Title Page}
+%
+% \Block{}%
+% \begin{macro}{\MakeTitle}
+% The macro |\MakeTitle| can be used as a replacement for the
+% |\maketitle| macro.
% \begin{macrocode}
\newcommand\MakeTitle{\thispagestyle{empty}
\rule{0pt}{.25\textheight}\par
\mbox{}\hfill
- \begin{minipage}{\MapTextfraction\textwidth}
+ \begin{minipage}{\MapTextFraction\textwidth}
\raggedright
- \rule{\textwidth}{1pt}\par
- \vspace*{5ex}%
+ \rule{\textwidth}{2pt}\par
+ \vspace*{2.5\MapParskip}%
\sf{\huge \@title\par}%
- \vspace*{5ex}%
- \rule{\textwidth}{1pt}\par
- \vspace*{5ex}%
+ \vspace*{2.5\MapParskip}%
+ \rule{\textwidth}{2pt}\par
+ \vspace*{2.5\MapParskip}%
\MapFont{\large \@author} \par
- \vspace*{10ex}%
+ \vspace*{2.5\MapParskip}%
\MapFont{\footnotesize \@date}
- \vspace*{10ex}%
+ \vspace*{\MapParskip}%
\end{minipage}%
+ \vspace*{-22ex}%
\par
}
% \end{macrocode}
-% \end{macro}
+% \end{macro}
%
-% The new |\maketitle| macro is activated for the class.
+% \Block{}%
+% \begin{environment}{Abstract}
+% This macro is used to typeset the abstract.
+% \begin{macrocode}
+\newenvironment{Abstract}{\vfill
+ \par
+ \mbox{}\hfill
+ \begin{minipage}{\MapTextFraction\textwidth}\parskip=1ex
+ \rule{\textwidth}{1pt}\medskip\par
+% \end{macrocode}
%
% \begin{macrocode}
+}{\par\rule{\textwidth}{1pt}
+ \end{minipage}%
+ \par
+}
+% \end{macrocode}
+% \end{environment}
+%
+% \Block{Use maketitle and abstract}%
+% The new |\maketitle| macro is activated for the class.
+%
+% \begin{macrocode}
%<*class>
\let\maketitle\MakeTitle
+\let\abstract\Abstract
+\let\endabstract\endAbstract
%</class>
% \end{macrocode}
-%
-% \subsection{Final Actions}
+% \end{Map}
%
-% Load the configuration file at the end if it can be found.
+% \begin{Map}{Final Actions}
+%
+% \Block{Local configuration}%
+% Load the configuration file at the end if it can be found.
% \begin{macrocode}
\InputIfFileExists{limap.cfg}{}{}
% \end{macrocode}
%
-% Finally we have to activate the proper settings for the choosen
-% language.
+% \Block{}%
+% Finally we have to activate the proper settings for the chosen
+% language.
% \begin{macrocode}
\csname LIMAP at SelectLanguage@\LIMAP at Language\endcsname
% \end{macrocode}
@@ -1217,6 +2306,8 @@
%
% \begin{macrocode}
\ifLIMAP at strict
+ \def\chapter{\PackageWarning{limap}{The sectioning command
+ `chapter' is not available.}}
% \def\section{\PackageWarning{limap}{The sectioning command
% `section' is not available.}}
\def\subsection{\PackageWarning{limap}{The sectioning command
@@ -1232,7 +2323,11 @@
\fi
% \end{macrocode}
%
-% That's all.
+% \Block{Finale}%
+% That's all for this time.
+% \end{Map}
+% \end{Map}
+% \end{Map}
%
% \Finale
%
Modified: trunk/Master/texmf-dist/source/latex/limap/limap.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/limap/limap.ins 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/source/latex/limap/limap.ins 2016-06-11 23:21:54 UTC (rev 41390)
@@ -1,46 +1,41 @@
-%%------------------------------------------------------------------
-%% Driver file to extract the dtx style and class files.
-%%
-%% Copyright (C) 1999-2000 Gerd Neugebauer
-%%
-%% limap.ins may be distributed under the terms of the LaTeX Project
-%% Public License, as described in lppl.txt in the base LaTeX
-%% distribution. Either version 1.0 or, at your option, any later
-%% version.
-%%
-%%------------------------------------------------------------------
-%%
-%% Run this file through TeX or LaTeX to extract the files.
-%% You need the docstrip package as distributed with LaTeX2e.
-%% It is also available as seperate package from any CTAN site.
-%%
-%%------------------------------------------------------------------
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% $Id: limap.ins 1.2 2000/03/01 20:11:42 gene Exp gene $
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\input docstrip.tex
-\keepsilent
-\askonceonly
-
-\generate{\file{limap.sty}{\from{limap.dtx}{package}}
- \file{limap.cls}{\from{limap.dtx}{class}}
- }
-%\usedir{tex/latex/limap}
-
-\ifToplevel{
-\Msg{****************************************************************}
-\Msg{*}
-\Msg{* To finish the installation you have to move the following}
-\Msg{* files into a directory searched by (La)TeX:}
-\Msg{*}
-\Msg{* \space\space limap.cls limap.sty}
-\Msg{*}
-\Msg{* To produce the documentation run limap.tex through LaTeX,}
-\Msg{* makeindex, and LaTeX again.}
-\Msg{*}
-\Msg{* Happy TeXing}
-\Msg{****************************************************************}
-}
-
-\endbatchfile
-\endinput
+%%------------------------------------------------------------------
+%% Driver file to extract the dtx style and class files.
+%%
+%% Copyright (C) 1999-2016 Gerd Neugebauer
+%%
+%% limap.ins may be distributed under the terms of the LaTeX Project
+%% Public License version 1.3c, as described in lppl.txt.
+%%
+%%------------------------------------------------------------------
+%%
+%% Run this file through TeX or LaTeX to extract the files.
+%% You need the docstrip package as distributed with LaTeX2e.
+%% It is also available as seperate package from any CTAN site.
+%%
+%%------------------------------------------------------------------
+
+\input docstrip.tex
+\keepsilent
+\askonceonly
+
+\generate{\file{limap.sty}{\from{limap.dtx}{package}}
+ \file{limap.cls}{\from{limap.dtx}{class}}
+ }
+
+\ifToplevel{
+\Msg{****************************************************************}
+\Msg{*}
+\Msg{* To finish the installation you have to move the following}
+\Msg{* files into a directory searched by LaTeX:}
+\Msg{*}
+\Msg{* \space\space limap.cls limap.sty}
+\Msg{*}
+\Msg{* To produce the documentation run limap.dtx through LaTeX,}
+\Msg{* makeindex, and LaTeX again.}
+\Msg{*}
+\Msg{* Happy TeXing}
+\Msg{****************************************************************}
+}
+
+\endbatchfile
+\endinput
Modified: trunk/Master/texmf-dist/tex/latex/limap/limap.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/limap/limap.cls 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/tex/latex/limap/limap.cls 2016-06-11 23:21:54 UTC (rev 41390)
@@ -21,28 +21,23 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%^^A $Id: limap.dtx 1.2 2000/03/01 20:11:42 gene Exp gene $
-%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Purpose:
%% A package for typesetting Information Maps.
%%
%% Documentation:
%% The documentation can be generated from the original file
-%% limap.dtx with the doc style/package. LaTeX the file limap.tex
-%% to get the full documentation in \textsc{dvi} format.
+%% limap.dtx with the doc class/package. LaTeX the file limap.tex
+%% to get the full documentation in pdf format.
%%
%% Author: Gerd Neugebauer
-%% Mainzer Str. 8
-%% 56321 Rhens (Germany)
-%% Mail: gerd.neugebauer at sdm.de
-%% gerd.neugebauer at gmx.de
+%% Im Lerchelsb\"ohl 5
+%% 64521 Gro\ss-Gerau (Germany)
+%% Mail: gene at gerd-neugebauer.de
%%
-%% Copyright (C) 1999-2000 Gerd Neugebauer
+%% Copyright (C) 1999-2016 Gerd Neugebauer
%%
%% limap.dtx may be distributed under the terms of the LaTeX Project
-%% Public License, as described in lppl.txt in the base LaTeX
-%% distribution. Either version 1.0 or, at your option, any later
-%% version.
+%% Public License version 1.3c, as described in lppl.txt.
%%
%% This class is still under development and may be replaced with a
%% new version which provides an enhanced functionality.
@@ -64,14 +59,36 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
%%
-\def\LIMAP at RCS$#1: #2 #3${#2}
\def\filename{limap.dtx}
-\xdef\fileversion{\LIMAP at RCS$Revision: 1.2 $}
-\xdef\filedate{\LIMAP at RCS$Date: 2000/03/01 20:11:42 $}
+\def\fileversion{2.1}
+\def\filedate{2016/05/29}
\let\docversion=\fileversion
\let\docdate=\filedate
\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{limap}[\filedate\space gene]
+\ProvidesClass{limap}[\filedate\space Gerd Neugebauer]
+\def\defineLimapLanguage#1#2#3#4#5{%
+ \expandafter\def\csname LIMAP at SelectLanguage@#1\endcsname{%
+ \def\MapContinued{#2}%
+ \def\MapContinuing{#3}%
+ \def\MapTOCname{#4}%
+ \def\MapTOCpage{#5}%
+ }%
+}
+\defineLimapLanguage{austrian}%
+ { Fortsetzung}{Fortsetzung\dots}%
+ {Titel}{Seite}
+\defineLimapLanguage{german}%
+ { Fortsetzung}{Fortsetzung\dots}%
+ {Titel}{Seite}
+\defineLimapLanguage{english}%
+ { Continued}{Continuing\dots}%
+ {Title}{Page}
+\defineLimapLanguage{USenglish}%
+ { Continued}{Continuing\dots}%
+ {Title}{Page}
+\defineLimapLanguage{french}%
+ { continuation}{continuation\dots}%
+ {Intitulé}{Page}
\providecommand\LIMAP at Language{english}
\DeclareOption{austrian}{\renewcommand\LIMAP at Language{austrian}}
\DeclareOption{german}{\renewcommand\LIMAP at Language{german}}
@@ -80,6 +97,7 @@
\DeclareOption{USenglish}{\renewcommand\LIMAP at Language{USenglish}}
\newif\ifLIMAP at strict \LIMAP at stricttrue
\DeclareOption{nonstrict}{\LIMAP at strictfalse}
+\DeclareOption{nolines}{\def\MapRuleWidth{0pt}\ignorespaces}
\providecommand\LIMAP at ClassType{report}
\DeclareOption{book}{\renewcommand\LIMAP at ClassType{book}}
\DeclareOption{report}{\renewcommand\LIMAP at ClassType{report}}
@@ -100,8 +118,10 @@
\csname LIMAP at Class@\LIMAP at Variant @\LIMAP at ClassType\endcsname}%
}
\ProcessOptions
-\LoadClass{\csname LIMAP at Class@\LIMAP at Variant @\LIMAP at ClassType\endcsname}
+\LoadClass{\csname
+ LIMAP at Class@\LIMAP at Variant @\LIMAP at ClassType\endcsname}
\RequirePackage{longtable}
+\RequirePackage{etoolbox}
\RequirePackage{booktabs}
\RequirePackage{fancyhdr}
\addtolength{\headheight}{2ex}%
@@ -111,17 +131,19 @@
\lhead{\textit{\footnotesize\@title}}
\def\@title{}
\raggedbottom
-\newcommand\MapRuleWidth{.25pt}
+\providecommand\MapRuleWidth{.25pt}
+\newcommand\MapRuleStart{}
\newcommand\MapContinued{}
\newcommand\MapContinuing{}
\newcommand\MapContinuingFormat[1]{\textit{\footnotesize #1}}
-\newcommand\MapContinuedFormat[1]{, {\MapTitleContinuedSize #1}}
+\newcommand\MapContinuedFormat[1]{, {\MapTitleContinuedFont #1}}
\let\MapFont\textsf
-\let\MapTitleSize\Large
-\let\MapTitleContinuedSize\small
+\let\MapTitleFont\Large
+\let\MapTitleContinuedFont\small
+\def\MapBlockLabelFont{}
\newcommand\MapParskip{2ex}
-\newcommand\MapTitlefraction{.2}
-\newcommand\MapTextfraction{.75}
+\newcommand\MapTitleFraction{.2}
+\newcommand\MapTextFraction{.75}
\let\MapNewpage\newpage
\newcommand\MapTOC[1]{%
\refstepcounter{\@nameuse{Map at TOC@name\the\Map at level}}%
@@ -129,35 +151,50 @@
}
\newcommand\MapTOCname{}
\newcommand\MapTOCpage{}
-\let\MapTOCemph=\emph
-\providecommand\LIMAP at SelectLanguage@austrian{%
- \renewcommand\MapContinued{ Fortsetzung}%
- \renewcommand\MapContinuing{Fortsetzung\dots}
- \renewcommand\MapTOCname{Titel}
- \renewcommand\MapTOCpage{Seite}
-}
-\providecommand\LIMAP at SelectLanguage@german{%
- \renewcommand\MapContinued{ Fortsetzung}%
- \renewcommand\MapContinuing{Fortsetzung\dots}
- \renewcommand\MapTOCname{Titel}
- \renewcommand\MapTOCpage{Seite}
-}
-\providecommand\LIMAP at SelectLanguage@english{%
- \renewcommand\MapContinued{ Continued}%
- \renewcommand\MapContinuing{Continuing\dots}
- \renewcommand\MapTOCname{Title}
- \renewcommand\MapTOCpage{Page}
-}
-\providecommand\LIMAP at SelectLanguage@USenglish{%
- \renewcommand\MapContinued{ Continued}%
- \renewcommand\MapContinuing{Continuing\dots}
- \renewcommand\MapTOCname{Title}
- \renewcommand\MapTOCpage{Page}
-}
+\newcommand\MapTOCheadfont{\scriptsize\emph}
\newlength{\Map at length}
\newcount\Map at level
\Map at level=0
\newcount\Map at blockcount
+\def\LT at final@warn{%
+ \AtEndDocument{%
+ \PackageWarning{limap}%
+ {Table \@width s have changed. Rerun LaTeX.\@gobbletwo}}%
+ \global\let\LT at final@warn\relax}
+\def\Map#1{%
+ \def\LT at err{\PackageError{limap}}%
+ \def\LT at warn{\PackageWarning{limap}}%
+ \let\Block\Map at Block
+ \let\endBlock\Map at endBlock
+ \Map at blockcount=0
+ \global\advance\Map at no1
+ \ifx\Map at UP\empty\else
+ \immediate\write\@auxout
+ {\string\expandafter\string\xdef\string\csname\space
+ Map at parts@\Map at UP\string\endcsname{\string\csname\space
+ Map at parts@\Map at UP\string\endcsname\the\Map at no:}}%
+ \fi
+ \edef\Map at UP{\the\Map at no}%
+ \ifnum\Map at level>0
+ \xdef\Map@@up{\Map at UP}% Just to save the value across blocks.
+ \endgroup
+ \Map at end
+ \begingroup
+ \edef\Map at UP{\Map@@up}%
+ \def\@currenvir{Map}%
+ \fi
+ \edef\Map at this{\the\Map at no}%
+ \immediate\write\@auxout
+ {\string\global\string\@namedef{Map at parts@\the\Map at no}{}}%
+ \global\advance\Map at level1
+ \def\Map at TITLE{#1}%
+ \Map at start
+ }
+\def\endMap{%
+ \Map at end
+ \global\advance\Map at level-1
+ \ignorespaces
+}
\newif\ifMap at open@
\Map at open@false
\@namedef{Map at TOC@name0}{chapter}
@@ -174,33 +211,40 @@
\@namedef{Map at TOC@name11}{subsubparagraph}
\@namedef{Map at TOC@name12}{subsubparagraph}
\newcommand\Map at start{%
+ \advance\Map at counter1
\setlength{\Map at length}{\textwidth}%
- \addtolength{\Map at length}{-\MapTitlefraction\textwidth}%
- \addtolength{\Map at length}{-\MapTextfraction\textwidth}%
- \MapTOC{\Map at TITLE}%
+ \addtolength{\Map at length}{-\MapTitleFraction\textwidth}%
+ \addtolength{\Map at length}{-\MapTextFraction\textwidth}%
+ \ifx\Map at TITLE\empty\else
+ \MapTOC{\Map at TITLE}%
+ \fi
\longtable
- {@{}p{\MapTitlefraction\textwidth}@{\hspace{\Map at length}}
- p{\MapTextfraction\textwidth}@{}}%
+ {@{}p{\MapTitleFraction\textwidth}@{\hspace{\Map at length}}
+ p{\MapTextFraction\textwidth}@{}}%
\multicolumn{2}{@{}p{\textwidth}@{}}{%
- \MapFont{\MapTitleSize\rule{0pt}{3ex}%
+ \MapFont{\MapTitleFont\rule{0pt}{3ex}%
\Map at TITLE}}
\endfirsthead
\multicolumn{2}{@{}p{\textwidth}@{}}{%
- \MapFont{\MapTitleSize\rule{0pt}{3ex}%
+ \MapFont{\MapTitleFont\rule{0pt}{3ex}%
\Map at TITLE\MapContinuedFormat{\MapContinued}}}%
\endhead
- \par\vspace*{-\parskip}\vspace*{-2ex}\\
- &\rule{\MapTextfraction\textwidth}{\MapRuleWidth}\newline
- \mbox{}\hfill\raisebox{3pt}{\MapContinuingFormat{\MapContinuing}}
+ \\
+ &\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}\newline
+ \mbox{}\hfill
+ \raisebox{3pt}{\MapContinuingFormat{\MapContinuing}}
\endfoot
- &\rule{\MapTextfraction\textwidth}{\MapRuleWidth}%
+ &\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}%
\vspace{\MapParskip}
\endlastfoot
\xdef\@currentlabel{\Map at TITLE}%
+ \label{Map@\the\Map at no}%
\global\Map at open@true
}
\newcommand\Map at end{%
- \ifMap at open@
+ \ifMap at open@\vspace*{1.5ex}
\global\Map at open@false
\endlongtable
\MapNewpage
@@ -208,7 +252,8 @@
\iftrue
\ifnum\Map at blockcount>9
\PackageWarning{limap}%
- {*** The current map contains too much blocks: \the\Map at blockcount}%
+ {*** The current map contains too much blocks:
+ \the\Map at blockcount}%
\else\ifnum\Map at blockcount>7
\PackageWarning{limap}%
{--- The current map contains \the\Map at blockcount blocks.}%
@@ -217,98 +262,117 @@
}
\newcommand\Map at UP{}
\newcount\Map at no
+\newcount\Map at counter
+\Map at counter=0
\@namedef{Map at parts@}{}
-\newenvironment{Map}[1]{%
- \def\LT at err{\PackageError{limap}}%
- \def\LT at warn{\PackageWarning{limap}}%
- \let\Block\Map at Block
- \let\endBlock\Map at endBlock
- \Map at blockcount=0
- \global\advance\Map at no1
- \ifx\Map at UP\empty\else
- \immediate\write\@auxout
- {\string\expandafter\string\xdef\string\csname\space
- Map at parts@\Map at UP\string\endcsname{\string\csname\space
- Map at parts@\Map at UP\string\endcsname\the\Map at no:}}%
- \fi
- \edef\Map at UP{\the\Map at no}%
- \ifnum\Map at level>0
- \xdef\Map@@up{\Map at UP}% Just to save the value across blocks.
- \endgroup
- \Map at end
- \begingroup
- \edef\Map at UP{\Map@@up}%
- \def\@currenvir{Map}%
- \fi
- \edef\Map at this{\the\Map at no}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at title@\the\Map at no}{#1}}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at page@\the\Map at no}{\the\c at page}}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at parts@\the\Map at no}{}}%
- \global\advance\Map at level1
- \def\Map at TITLE{#1}%
- \Map at start
- }{%
- \Map at end
- \global\advance\Map at level-1
-}
-\newenvironment{Map at Block}[1]{\par\vspace*{-\parskip}\vspace*{-2ex}%
+\newenvironment{Map at Block}[1]{\par
+ \vspace*{-\parskip}\vspace*{-1ex}%
\\\null\par
\vspace*{\MapParskip}%
- \raggedright\hspace{0pt}\MapFont{#1}%
+ \raggedright\hspace{0pt}\MapFont{\MapBlockLabelFont{#1}}%
\gdef\@currentlabel{#1}%
&\parskip=\MapParskip
- \rule{\MapTextfraction\textwidth}{\MapRuleWidth}\par
+ {\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}}\par
}{%
}
-\newcommand\Wide at Block{\\\multicolumn2{@{}l@{}}}{}
-\newcommand\MapTableOfContents{%
- \medskip\par
- \xdef\Map@@{\csname Map at parts@\the\Map at no\endcsname}%
- \gdef\Map@@@{}%
+\newcommand\Block[1]{\PackageWarning{limap}{The sectioning command
+ `Block' has been encountered outside the scope of a Map
+ environment.}}
+\newcommand\WideBlock{\\\multicolumn2{@{}l@{}}}
+\newif\if at Map@toc at sep@
+\def\MapTableOfContents at open{%
\centering
\begin{tabular}{p{.6\textwidth}r}\toprule
- \MapTOCemph{\MapTOCname}&\MapTOCemph{\MapTOCpage}\\
- \midrule
- \expandafter\Map at toc@loop \Map@@:%
- \\\bottomrule
+ \MapTOCheadfont{\MapTOCname}&
+ \MapTOCheadfont{\MapTOCpage}\\\midrule
+ \ifcsdef{Map at parts@\the\Map at no}{
+ \edef\Map at tmp@{\csname Map at parts@\the\Map at no\endcsname:}%
+ \expandafter\Map at toc@loop\Map at tmp@
+ \\\bottomrule
+ }{}
\end{tabular}
}
+\def\MapTableOfContents at boxed{%
+ \centering
+ \begin{tabular}{|p{.6\textwidth}|r|}\hline
+ \MapTOCheadfont{\MapTOCname}&
+ \MapTOCheadfont{\MapTOCpage}\\\hline
+ \ifcsdef{Map at parts@\the\Map at no}{
+ \edef\Map at tmp@{\csname Map at parts@\the\Map at no\endcsname:}%
+ \expandafter\Map at toc@loop\Map at tmp@
+ \\\hline
+ }{}
+ \end{tabular}
+}
+\newcommand\MapTableOfContentsStyle{open}
+\newcommand\MapTableOfContents{\par
+ \global\@Map at toc@sep at false
+ \csname MapTableOfContents@\MapTableOfContentsStyle\endcsname
+ \vspace*{-1.5\parskip}\par\ignorespaces
+}
\def\Map at toc@loop#1:{%
- \def\Map@@{#1}%
- \ifx\Map@@\empty
- \global\let\Map@@=\relax
+ \def\Map at tmp@{#1}%
+ \ifx\Map at tmp@\empty
+ \global\let\Map at next@=\relax
\else
- \gdef\Map@@{\Map@@@\@nameuse{Map at title@#1}&\@nameuse{Map at page@#1}%
- \global\let\Map@@@=\\%
- \Map at toc@loop}%
+ \if at Map@toc at sep@
+ \gdef\Map at next@{\\
+ \ref{Map@#1}&\pageref{Map@#1}%
+ \Map at toc@loop}%
+ \else
+ \gdef\Map at next@{%
+ \ref{Map@#1}&\pageref{Map@#1}%
+ \Map at toc@loop}%
+ \global\@Map at toc@sep at true
+ \fi
\fi
- \Map@@
+ \Map at next@
}
+\newcommand\MapTabularFraction{.95}
+\newenvironment{MapTabular}{%
+ \begin{center}
+ \begin{tabular*}{\MapTabularFraction\linewidth}%
+}{%
+ \end{tabular*}
+ \end{center}\ignorespaces
+}
\newcommand\MakeTitle{\thispagestyle{empty}
\rule{0pt}{.25\textheight}\par
\mbox{}\hfill
- \begin{minipage}{\MapTextfraction\textwidth}
+ \begin{minipage}{\MapTextFraction\textwidth}
\raggedright
- \rule{\textwidth}{1pt}\par
- \vspace*{5ex}%
+ \rule{\textwidth}{2pt}\par
+ \vspace*{2.5\MapParskip}%
\sf{\huge \@title\par}%
- \vspace*{5ex}%
- \rule{\textwidth}{1pt}\par
- \vspace*{5ex}%
+ \vspace*{2.5\MapParskip}%
+ \rule{\textwidth}{2pt}\par
+ \vspace*{2.5\MapParskip}%
\MapFont{\large \@author} \par
- \vspace*{10ex}%
+ \vspace*{2.5\MapParskip}%
\MapFont{\footnotesize \@date}
- \vspace*{10ex}%
+ \vspace*{\MapParskip}%
\end{minipage}%
+ \vspace*{-22ex}%
\par
}
+\newenvironment{Abstract}{\vfill
+ \par
+ \mbox{}\hfill
+ \begin{minipage}{\MapTextFraction\textwidth}\parskip=1ex
+ \rule{\textwidth}{1pt}\medskip\par
+}{\par\rule{\textwidth}{1pt}
+ \end{minipage}%
+ \par
+}
\let\maketitle\MakeTitle
+\let\abstract\Abstract
+\let\endabstract\endAbstract
\InputIfFileExists{limap.cfg}{}{}
\csname LIMAP at SelectLanguage@\LIMAP at Language\endcsname
\ifLIMAP at strict
+ \def\chapter{\PackageWarning{limap}{The sectioning command
+ `chapter' is not available.}}
\def\subsection{\PackageWarning{limap}{The sectioning command
`subsection' is not available.}}
\def\subsubsection{\PackageWarning{limap}{The sectioning command
Modified: trunk/Master/texmf-dist/tex/latex/limap/limap.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/limap/limap.sty 2016-06-11 23:21:27 UTC (rev 41389)
+++ trunk/Master/texmf-dist/tex/latex/limap/limap.sty 2016-06-11 23:21:54 UTC (rev 41390)
@@ -21,28 +21,23 @@
%% same distribution. (The sources need not necessarily be
%% in the same archive or directory.)
%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%^^A $Id: limap.dtx 1.2 2000/03/01 20:11:42 gene Exp gene $
-%%^^A%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Purpose:
%% A package for typesetting Information Maps.
%%
%% Documentation:
%% The documentation can be generated from the original file
-%% limap.dtx with the doc style/package. LaTeX the file limap.tex
-%% to get the full documentation in \textsc{dvi} format.
+%% limap.dtx with the doc class/package. LaTeX the file limap.tex
+%% to get the full documentation in pdf format.
%%
%% Author: Gerd Neugebauer
-%% Mainzer Str. 8
-%% 56321 Rhens (Germany)
-%% Mail: gerd.neugebauer at sdm.de
-%% gerd.neugebauer at gmx.de
+%% Im Lerchelsb\"ohl 5
+%% 64521 Gro\ss-Gerau (Germany)
+%% Mail: gene at gerd-neugebauer.de
%%
-%% Copyright (C) 1999-2000 Gerd Neugebauer
+%% Copyright (C) 1999-2016 Gerd Neugebauer
%%
%% limap.dtx may be distributed under the terms of the LaTeX Project
-%% Public License, as described in lppl.txt in the base LaTeX
-%% distribution. Either version 1.0 or, at your option, any later
-%% version.
+%% Public License version 1.3c, as described in lppl.txt.
%%
%% This class is still under development and may be replaced with a
%% new version which provides an enhanced functionality.
@@ -64,14 +59,36 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
%%
-\def\LIMAP at RCS$#1: #2 #3${#2}
\def\filename{limap.dtx}
-\xdef\fileversion{\LIMAP at RCS$Revision: 1.2 $}
-\xdef\filedate{\LIMAP at RCS$Date: 2000/03/01 20:11:42 $}
+\def\fileversion{2.1}
+\def\filedate{2016/05/29}
\let\docversion=\fileversion
\let\docdate=\filedate
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{limap}[\filedate\space gene]
+\ProvidesPackage{limap}[\filedate\space Gerd Neugebauer]
+\def\defineLimapLanguage#1#2#3#4#5{%
+ \expandafter\def\csname LIMAP at SelectLanguage@#1\endcsname{%
+ \def\MapContinued{#2}%
+ \def\MapContinuing{#3}%
+ \def\MapTOCname{#4}%
+ \def\MapTOCpage{#5}%
+ }%
+}
+\defineLimapLanguage{austrian}%
+ { Fortsetzung}{Fortsetzung\dots}%
+ {Titel}{Seite}
+\defineLimapLanguage{german}%
+ { Fortsetzung}{Fortsetzung\dots}%
+ {Titel}{Seite}
+\defineLimapLanguage{english}%
+ { Continued}{Continuing\dots}%
+ {Title}{Page}
+\defineLimapLanguage{USenglish}%
+ { Continued}{Continuing\dots}%
+ {Title}{Page}
+\defineLimapLanguage{french}%
+ { continuation}{continuation\dots}%
+ {Intitulé}{Page}
\providecommand\LIMAP at Language{english}
\DeclareOption{austrian}{\renewcommand\LIMAP at Language{austrian}}
\DeclareOption{german}{\renewcommand\LIMAP at Language{german}}
@@ -80,21 +97,25 @@
\DeclareOption{USenglish}{\renewcommand\LIMAP at Language{USenglish}}
\newif\ifLIMAP at strict \LIMAP at stricttrue
\DeclareOption{nonstrict}{\LIMAP at strictfalse}
+\DeclareOption{nolines}{\def\MapRuleWidth{0pt}\ignorespaces}
\ProcessOptions
\RequirePackage{longtable}
+\RequirePackage{etoolbox}
\RequirePackage{booktabs}
\raggedbottom
-\newcommand\MapRuleWidth{.25pt}
+\providecommand\MapRuleWidth{.25pt}
+\newcommand\MapRuleStart{}
\newcommand\MapContinued{}
\newcommand\MapContinuing{}
\newcommand\MapContinuingFormat[1]{\textit{\footnotesize #1}}
-\newcommand\MapContinuedFormat[1]{, {\MapTitleContinuedSize #1}}
+\newcommand\MapContinuedFormat[1]{, {\MapTitleContinuedFont #1}}
\let\MapFont\textsf
-\let\MapTitleSize\Large
-\let\MapTitleContinuedSize\small
+\let\MapTitleFont\Large
+\let\MapTitleContinuedFont\small
+\def\MapBlockLabelFont{}
\newcommand\MapParskip{2ex}
-\newcommand\MapTitlefraction{.2}
-\newcommand\MapTextfraction{.75}
+\newcommand\MapTitleFraction{.2}
+\newcommand\MapTextFraction{.75}
\let\MapNewpage\newpage
\newcommand\MapTOC[1]{%
\refstepcounter{\@nameuse{Map at TOC@name\the\Map at level}}%
@@ -102,35 +123,50 @@
}
\newcommand\MapTOCname{}
\newcommand\MapTOCpage{}
-\let\MapTOCemph=\emph
-\providecommand\LIMAP at SelectLanguage@austrian{%
- \renewcommand\MapContinued{ Fortsetzung}%
- \renewcommand\MapContinuing{Fortsetzung\dots}
- \renewcommand\MapTOCname{Titel}
- \renewcommand\MapTOCpage{Seite}
-}
-\providecommand\LIMAP at SelectLanguage@german{%
- \renewcommand\MapContinued{ Fortsetzung}%
- \renewcommand\MapContinuing{Fortsetzung\dots}
- \renewcommand\MapTOCname{Titel}
- \renewcommand\MapTOCpage{Seite}
-}
-\providecommand\LIMAP at SelectLanguage@english{%
- \renewcommand\MapContinued{ Continued}%
- \renewcommand\MapContinuing{Continuing\dots}
- \renewcommand\MapTOCname{Title}
- \renewcommand\MapTOCpage{Page}
-}
-\providecommand\LIMAP at SelectLanguage@USenglish{%
- \renewcommand\MapContinued{ Continued}%
- \renewcommand\MapContinuing{Continuing\dots}
- \renewcommand\MapTOCname{Title}
- \renewcommand\MapTOCpage{Page}
-}
+\newcommand\MapTOCheadfont{\scriptsize\emph}
\newlength{\Map at length}
\newcount\Map at level
\Map at level=0
\newcount\Map at blockcount
+\def\LT at final@warn{%
+ \AtEndDocument{%
+ \PackageWarning{limap}%
+ {Table \@width s have changed. Rerun LaTeX.\@gobbletwo}}%
+ \global\let\LT at final@warn\relax}
+\def\Map#1{%
+ \def\LT at err{\PackageError{limap}}%
+ \def\LT at warn{\PackageWarning{limap}}%
+ \let\Block\Map at Block
+ \let\endBlock\Map at endBlock
+ \Map at blockcount=0
+ \global\advance\Map at no1
+ \ifx\Map at UP\empty\else
+ \immediate\write\@auxout
+ {\string\expandafter\string\xdef\string\csname\space
+ Map at parts@\Map at UP\string\endcsname{\string\csname\space
+ Map at parts@\Map at UP\string\endcsname\the\Map at no:}}%
+ \fi
+ \edef\Map at UP{\the\Map at no}%
+ \ifnum\Map at level>0
+ \xdef\Map@@up{\Map at UP}% Just to save the value across blocks.
+ \endgroup
+ \Map at end
+ \begingroup
+ \edef\Map at UP{\Map@@up}%
+ \def\@currenvir{Map}%
+ \fi
+ \edef\Map at this{\the\Map at no}%
+ \immediate\write\@auxout
+ {\string\global\string\@namedef{Map at parts@\the\Map at no}{}}%
+ \global\advance\Map at level1
+ \def\Map at TITLE{#1}%
+ \Map at start
+ }
+\def\endMap{%
+ \Map at end
+ \global\advance\Map at level-1
+ \ignorespaces
+}
\newif\ifMap at open@
\Map at open@false
\@namedef{Map at TOC@name0}{chapter}
@@ -147,33 +183,40 @@
\@namedef{Map at TOC@name11}{subsubparagraph}
\@namedef{Map at TOC@name12}{subsubparagraph}
\newcommand\Map at start{%
+ \advance\Map at counter1
\setlength{\Map at length}{\textwidth}%
- \addtolength{\Map at length}{-\MapTitlefraction\textwidth}%
- \addtolength{\Map at length}{-\MapTextfraction\textwidth}%
- \MapTOC{\Map at TITLE}%
+ \addtolength{\Map at length}{-\MapTitleFraction\textwidth}%
+ \addtolength{\Map at length}{-\MapTextFraction\textwidth}%
+ \ifx\Map at TITLE\empty\else
+ \MapTOC{\Map at TITLE}%
+ \fi
\longtable
- {@{}p{\MapTitlefraction\textwidth}@{\hspace{\Map at length}}
- p{\MapTextfraction\textwidth}@{}}%
+ {@{}p{\MapTitleFraction\textwidth}@{\hspace{\Map at length}}
+ p{\MapTextFraction\textwidth}@{}}%
\multicolumn{2}{@{}p{\textwidth}@{}}{%
- \MapFont{\MapTitleSize\rule{0pt}{3ex}%
+ \MapFont{\MapTitleFont\rule{0pt}{3ex}%
\Map at TITLE}}
\endfirsthead
\multicolumn{2}{@{}p{\textwidth}@{}}{%
- \MapFont{\MapTitleSize\rule{0pt}{3ex}%
+ \MapFont{\MapTitleFont\rule{0pt}{3ex}%
\Map at TITLE\MapContinuedFormat{\MapContinued}}}%
\endhead
- \par\vspace*{-\parskip}\vspace*{-2ex}\\
- &\rule{\MapTextfraction\textwidth}{\MapRuleWidth}\newline
- \mbox{}\hfill\raisebox{3pt}{\MapContinuingFormat{\MapContinuing}}
+ \\
+ &\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}\newline
+ \mbox{}\hfill
+ \raisebox{3pt}{\MapContinuingFormat{\MapContinuing}}
\endfoot
- &\rule{\MapTextfraction\textwidth}{\MapRuleWidth}%
+ &\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}%
\vspace{\MapParskip}
\endlastfoot
\xdef\@currentlabel{\Map at TITLE}%
+ \label{Map@\the\Map at no}%
\global\Map at open@true
}
\newcommand\Map at end{%
- \ifMap at open@
+ \ifMap at open@\vspace*{1.5ex}
\global\Map at open@false
\endlongtable
\MapNewpage
@@ -181,7 +224,8 @@
\iftrue
\ifnum\Map at blockcount>9
\PackageWarning{limap}%
- {*** The current map contains too much blocks: \the\Map at blockcount}%
+ {*** The current map contains too much blocks:
+ \the\Map at blockcount}%
\else\ifnum\Map at blockcount>7
\PackageWarning{limap}%
{--- The current map contains \the\Map at blockcount blocks.}%
@@ -190,97 +234,114 @@
}
\newcommand\Map at UP{}
\newcount\Map at no
+\newcount\Map at counter
+\Map at counter=0
\@namedef{Map at parts@}{}
-\newenvironment{Map}[1]{%
- \def\LT at err{\PackageError{limap}}%
- \def\LT at warn{\PackageWarning{limap}}%
- \let\Block\Map at Block
- \let\endBlock\Map at endBlock
- \Map at blockcount=0
- \global\advance\Map at no1
- \ifx\Map at UP\empty\else
- \immediate\write\@auxout
- {\string\expandafter\string\xdef\string\csname\space
- Map at parts@\Map at UP\string\endcsname{\string\csname\space
- Map at parts@\Map at UP\string\endcsname\the\Map at no:}}%
- \fi
- \edef\Map at UP{\the\Map at no}%
- \ifnum\Map at level>0
- \xdef\Map@@up{\Map at UP}% Just to save the value across blocks.
- \endgroup
- \Map at end
- \begingroup
- \edef\Map at UP{\Map@@up}%
- \def\@currenvir{Map}%
- \fi
- \edef\Map at this{\the\Map at no}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at title@\the\Map at no}{#1}}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at page@\the\Map at no}{\the\c at page}}%
- \immediate\write\@auxout
- {\string\global\string\@namedef{Map at parts@\the\Map at no}{}}%
- \global\advance\Map at level1
- \def\Map at TITLE{#1}%
- \Map at start
- }{%
- \Map at end
- \global\advance\Map at level-1
-}
-\newenvironment{Map at Block}[1]{\par\vspace*{-\parskip}\vspace*{-2ex}%
+\newenvironment{Map at Block}[1]{\par
+ \vspace*{-\parskip}\vspace*{-1ex}%
\\\null\par
\vspace*{\MapParskip}%
- \raggedright\hspace{0pt}\MapFont{#1}%
+ \raggedright\hspace{0pt}\MapFont{\MapBlockLabelFont{#1}}%
\gdef\@currentlabel{#1}%
&\parskip=\MapParskip
- \rule{\MapTextfraction\textwidth}{\MapRuleWidth}\par
+ {\MapRuleStart
+ \rule{\MapTextFraction\textwidth}{\MapRuleWidth}}\par
}{%
}
-\newcommand\Wide at Block{\\\multicolumn2{@{}l@{}}}{}
-\newcommand\MapTableOfContents{%
- \medskip\par
- \xdef\Map@@{\csname Map at parts@\the\Map at no\endcsname}%
- \gdef\Map@@@{}%
+\newcommand\Block[1]{\PackageWarning{limap}{The sectioning command
+ `Block' has been encountered outside the scope of a Map
+ environment.}}
+\newcommand\WideBlock{\\\multicolumn2{@{}l@{}}}
+\newif\if at Map@toc at sep@
+\def\MapTableOfContents at open{%
\centering
\begin{tabular}{p{.6\textwidth}r}\toprule
- \MapTOCemph{\MapTOCname}&\MapTOCemph{\MapTOCpage}\\
- \midrule
- \expandafter\Map at toc@loop \Map@@:%
- \\\bottomrule
+ \MapTOCheadfont{\MapTOCname}&
+ \MapTOCheadfont{\MapTOCpage}\\\midrule
+ \ifcsdef{Map at parts@\the\Map at no}{
+ \edef\Map at tmp@{\csname Map at parts@\the\Map at no\endcsname:}%
+ \expandafter\Map at toc@loop\Map at tmp@
+ \\\bottomrule
+ }{}
\end{tabular}
}
+\def\MapTableOfContents at boxed{%
+ \centering
+ \begin{tabular}{|p{.6\textwidth}|r|}\hline
+ \MapTOCheadfont{\MapTOCname}&
+ \MapTOCheadfont{\MapTOCpage}\\\hline
+ \ifcsdef{Map at parts@\the\Map at no}{
+ \edef\Map at tmp@{\csname Map at parts@\the\Map at no\endcsname:}%
+ \expandafter\Map at toc@loop\Map at tmp@
+ \\\hline
+ }{}
+ \end{tabular}
+}
+\newcommand\MapTableOfContentsStyle{open}
+\newcommand\MapTableOfContents{\par
+ \global\@Map at toc@sep at false
+ \csname MapTableOfContents@\MapTableOfContentsStyle\endcsname
+ \vspace*{-1.5\parskip}\par\ignorespaces
+}
\def\Map at toc@loop#1:{%
- \def\Map@@{#1}%
- \ifx\Map@@\empty
- \global\let\Map@@=\relax
+ \def\Map at tmp@{#1}%
+ \ifx\Map at tmp@\empty
+ \global\let\Map at next@=\relax
\else
- \gdef\Map@@{\Map@@@\@nameuse{Map at title@#1}&\@nameuse{Map at page@#1}%
- \global\let\Map@@@=\\%
- \Map at toc@loop}%
+ \if at Map@toc at sep@
+ \gdef\Map at next@{\\
+ \ref{Map@#1}&\pageref{Map@#1}%
+ \Map at toc@loop}%
+ \else
+ \gdef\Map at next@{%
+ \ref{Map@#1}&\pageref{Map@#1}%
+ \Map at toc@loop}%
+ \global\@Map at toc@sep at true
+ \fi
\fi
- \Map@@
+ \Map at next@
}
+\newcommand\MapTabularFraction{.95}
+\newenvironment{MapTabular}{%
+ \begin{center}
+ \begin{tabular*}{\MapTabularFraction\linewidth}%
+}{%
+ \end{tabular*}
+ \end{center}\ignorespaces
+}
\newcommand\MakeTitle{\thispagestyle{empty}
\rule{0pt}{.25\textheight}\par
\mbox{}\hfill
- \begin{minipage}{\MapTextfraction\textwidth}
+ \begin{minipage}{\MapTextFraction\textwidth}
\raggedright
- \rule{\textwidth}{1pt}\par
- \vspace*{5ex}%
+ \rule{\textwidth}{2pt}\par
+ \vspace*{2.5\MapParskip}%
\sf{\huge \@title\par}%
- \vspace*{5ex}%
- \rule{\textwidth}{1pt}\par
- \vspace*{5ex}%
+ \vspace*{2.5\MapParskip}%
+ \rule{\textwidth}{2pt}\par
+ \vspace*{2.5\MapParskip}%
\MapFont{\large \@author} \par
- \vspace*{10ex}%
+ \vspace*{2.5\MapParskip}%
\MapFont{\footnotesize \@date}
- \vspace*{10ex}%
+ \vspace*{\MapParskip}%
\end{minipage}%
+ \vspace*{-22ex}%
\par
}
+\newenvironment{Abstract}{\vfill
+ \par
+ \mbox{}\hfill
+ \begin{minipage}{\MapTextFraction\textwidth}\parskip=1ex
+ \rule{\textwidth}{1pt}\medskip\par
+}{\par\rule{\textwidth}{1pt}
+ \end{minipage}%
+ \par
+}
\InputIfFileExists{limap.cfg}{}{}
\csname LIMAP at SelectLanguage@\LIMAP at Language\endcsname
\ifLIMAP at strict
+ \def\chapter{\PackageWarning{limap}{The sectioning command
+ `chapter' is not available.}}
\def\subsection{\PackageWarning{limap}{The sectioning command
`subsection' is not available.}}
\def\subsubsection{\PackageWarning{limap}{The sectioning command
More information about the tex-live-commits
mailing list