Copyright © 2007–2024 Markus Kohm
Release: 2024-06-07 v0.92
License: LPPL 1.3c
KOMA presents the KOMA-Script spin-off contract. Package contract provides
environments for legal contracts, sections, paragraphs and similar. It is the
official successor to the former KOMA-Script package scrjura.
This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, version 1.3c of the license. The latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3c or later is part of all distributions of LaTeX version 2005/12/01 or later.
The Current Maintainer and author of this work is Markus Kohm.
This work consists of the files listed in MANIFEST.md.
For several years
KOMA-Script provides
package scrjura. The package was developed at the request of and in
co-operation with a German lawyer. In 2024, the package was separated from
KOMA-Script and has since been called contract. The new name was chosen to
avoid confusion with KOMA-Script packages. Secondly, it better reflects the
purpose of the package.
-
Markus Kohm aka KOMA aka komascript:
Maintainer, Developer, “go-to guy” -
Keks-Dose:
CTAN Release Manager, Tester, “idea man”
If you are a user, you should usually wait until the package has been added to your preferred TeX distribution. Then you can use the package manager of your TeX distribution to install the package.
Distributors should download the current
release. See
MANIFEST.md
for information about the files, that build the distribution.
If distributors also want to distribute contract.sty, they can
unpack it using:
tex contract.dtx
or temporary install contract into a TEXMF tree using:
l3build install --full --texmfhome <TDS root directory>
and then use the files from the selected <TDS root directory>.
Developers who want the current developer version of the code to be installed
for testing, should clone the latex-contract
repository, e.g.,
using
git clone https://github.com/komascript/latex-contract.git
You can than unpack and install contract using:
l3build install
from within the main directory of the cloned respository.
Important Note: The user manual of contract uses some packages, which
are still under development and therefore currently may not be available on
CTAN. So you usually cannot use l3build doc to generate the documentation or
l3build install --full to install contract with the documentation. Instead
you either have to read contract.dtx or use the contract.pdf available at
the newest contract
release or the
release
branch. You can
copy such PDFs to the doc/latex/contract/ folder of any TEXMF tree.
After installation of contract and the user manual you can use:
texdoc contract
Without installation you can get contract.pdf as part of the corresponding
contract
release or the
release
branch.
To become a contributor, e.g., do heavy testing. If you find an issue, please
report it. You can also become a developer and, e.g.,
make new test files to the packageP. See the
l3build manual for more information about
tests. If you've created a new test and think that it would be useful, please
either do a pull request or add a new issue and
include your test file.
If you think you have found a bug (or another kind of issue) using
contract you should use the issue
tracker. Please
first search for similar issues already reported and maybe also already fixed
and closed. Maybe the replies to such a similar report would help you too.
If your issue is new, you should report it also using the issue
tracker. Please be kind,
not only when writing the report but also when reading replies and commenting
or answering. And please always add a minimal working example and usually the
relevant parts of the log-file to your report. Please use the markdown for
code
to add such files into the text of your report. The correct language
identifier for LaTeX code would be latex. For log-files you won't need any
language identifier. Usually you should not use attachments for code or
log-files unless you've been asked to do so. And please note, reports should
always be self-containing. External links often break and so the report become
useles.
Hey, I'm doing this as a hobby. So no need to say thank you. But I'm a vain fop, so I'm certainly up for a quick thank you by email. On komascript.de you can find an explanation of my wishes if you want to give more. If you don't understand German, just click to links at that page.
The development has just begun. Currently the first milestone:
- creating a new repository
- copying
scrjura.dtxfrom KOMA-Script ascontract.dtxto the new repository - creating a new build environment:
-
README.md -
LICENSE.md -
MANIFEST.md -
build.lua - test files
-
- renaming several internals of
contract - adding user documentation based on the
scrjurachapters of the English KOMA-Script manual - improving user documentation
has been reached.
Further milestones could be:
- replacing
scrjuraby acontractwrapper in KOMA-Script for compatibility only - reimplementing several internals of
contract:- replacing KOMA-Script options by LaTeX key-value options
- replacing \newkomafont, \setkomafont by something not KOMA-Script
related or alterntively replacing the the internally used
scrkbasebyscrextend, - using
expl3, - using the new paragraph hooks of LaTeX,
- using the extended referencing mechanism of LaTeX.
If you have been using the scrjura package and are now switching to the
contract package, you should read chapter “From scrjura to contract” in
the contract user manual. The most important and incompatible change IMHO
is, that the argument of \Clause and \SubClause isn't mandaroty any longer
but optional. So the syntax has changed to \Clause[<options>]
resp. \SubClause[<options>].
Note: For a transitional period, KOMA-Script will continue to contain a
package scrjura, which is a wrapper to contract and attempts to increase
compatibility. With this package, the argument of \Clause and \SubClause
will remain mandatory for the time being. However, this package is expected to
disappear from KOMA-Script after a reasonable period of smooth transition.