# Package `scrhack` Copyright © 2008–2024 Markus Kohm Release: 2024-09-04 v3.42 License: LPPL 1.3c KOMA presents the compatibility package to emulate the former [KOMA-Script](https://www.ctan.org/pkg/koma-script) package `scrhack` as part of the *third-party enhancements* project. ------------------------------------------------------------------------------ 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. This work has the LPPL maintenance status "maintained". The Current Maintainer and author of this work is Markus Kohm. ------------------------------------------------------------------------------ # Abstract For several years [KOMA-Script](https://www.sourceforge.net/project/koma-script) provided a package `scrhack`, that has been made not only to improve the compatibility of third-party packages with [KOMA-Script](https://www.ctan.org/pkg/koma-script) classes, but also to generally improve third-party packages. The package consisted not only in the package file `scrhack.sty` but also in several so called hacks as separate files with extension `.hak`. In the course of splitting off former [KOMA-Script](https://www.ctan.org/pkg/koma-script) packages from the [KOMA-Script](https://www.ctan.org/pkg/koma-script) collection, it was decided to create independent packages from the individual hacks. These new independent packages then serve as replacements for the original packages they were intended to improve. In addition, to preserve the functionality of loading the enhancements only when the corresponding original package is loaded, a new `scrhack` was created to do just that. # Installation for Users If you are a user, you should wait until all the packages of the third-party enhancement project have been added to your preferred TeX distribution. Then you can use the package manager of your TeX distribution to install all the packages at once. Note: If you have installed a [KOMA-Script](https://www.ctan.org/pkg/koma-script) before version 3.42, you should also update [KOMA-Script](https://www.ctan.org/pkg/koma-script) using the package manager of your TeX distribution as soon as such an update is availiabe. Otherwise it could happen, that the old integrated `scrhack` of [KOMA-Script](https://www.ctan.org/pkg/koma-script) is used instead of the new installed version. On the one hand, KOMA-Script 3.41 works with both the integrated `scrhack` and the new standalone `scrhack`. On the other hand, KOMA-Script from version 3.42 does not provide an integrated `scrhack`. So installing the new standalone `scrhack` before or at least with KOMA-Script version 3.42 is the best option. # Unpacking for Distributors Distributors should download [the distribution from CTAN](https://www.ctan.org/pkg/scrhack). This consists in: * `scrhack.dtx` * `scrhack-2023-07-07.dtx` * `README.md` * `LICENSE.md` * `scrhack.pdf` * `scrhack-2023-07-07.pdf` If distributors also want to distribute `scrhack.sty`, `scrhack-2023-07-07.sty`, `float.hak`, `floatrow.hak`, `hyperref.hak`, `listings.hak`, `lscape.hak`, `nomencl.hak`, `setspace.hak`, and `standardsectioning.hak` they can unpack these using: tex scrhack.dtx tex scrhack-2023-07-07.dtx Note, that you have to use `tex` not `latex`, `pdflatex`, `xelatex` or `lualatex`! Note also, that a legal distribution consists at least in: * `scrhack.dtx` * `scrhack-2023-07-07.dtx` * `README.md` The following files are optionally, but must not be distributed without the previous ones: * `LICENSE.md` * `scrhack.sty` * `scrhack.pdf` * `scrhack-2023-07-07.sty` * `scrhack-2023-07-07.pdf` * `float.hak` * `floatrow.hak` * `hyperref.hak` * `listings.hak` * `lscape.hak` * `nomencl.hak` * `setspace.hak` * `standardsectioning.hak` # Unpacking and Installation for Developers Developers who want the current developer version of the code to be installed for testing, should clone [the `third-party-enhancements` repository](https://github.com/komascript/third-party-enhancements), e.g., using git clone https://github.com/komascript/third-party-enhancements.git You can than either unpack and install all the third-party enhancements using: l3build install --full from within the main directory of the cloned respository. For installation of `scrhack` only you could run the same command from within the `scrhack` subdirectory. For installation without the manual omit option `--full`, but this is not recommended for developers. Note: Installation of `scrhack` does make sense only if all other packages of the third-party enhancement project are also installed. The new `scrhack` does not work without these packages. Note: If you have already an installation of [KOMA-Script](https://www.ctan.org/pkg/koma-script) before version 3.42 in the user's texmf tree (`TEXMFHOME`), kpathsearch will usually find the old integrated version of `scrhack`. Therefore LaTeX also will use that old integrated version of `scrhack`. To prioritize the new standalone version of `scrhack`, you would either have to remove [KOMA-Script](https://www.ctan.org/pkg/koma-script) from the user's texmf tree or copy `scrhack.sty` to the working directory from within you are running LaTeX. Instead of the [KOMA-Script](https://www.ctan.org/pkg/koma-script) version before 3.42 you can, after removing that installation, also install a [KOMA-Script](https://www.ctan.org/pkg/koma-script) version from 3.42, e.g., [the current pre-release](https://komascript.de/current) or [the developer version from SourceForge](https://sourceforge.net/p/koma-script/code/HEAD/tree/trunk/). # How to get the Manual After installation you should get the user manual using: texdoc scrhack See the manual of your TeX distribution for more information. Developers or distributors can also build the manual from the source using: l3build doc # How to Contribute To become a contributor, e.g., do heavy testing. If you find an issue, please report it using [the issue tracker](https://github.com/komascript/third-party-enhancements/issues). You can also become a developer and, e.g., make new test files to the packages. See the [`l3build`](https://ctan.org/pkg/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](https://github.com/komascript/third-party-enhancements/issues/new/choose) and include your test file. Another kind of contribution would be to contact an author of one of the third-party packages and convince her or him to integrate the code of the corresponding enhancement package from this project into her or his package. # How to Report Issues If you think you have found a bug (or another kind of issue) using `scrhack` you should use [the issue tracker](https://github.com/komascript/third-party-enhancements/issues). 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](https://github.com/komascript/third-party-enhancements/issues). 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](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/creating-and-highlighting-code-blocks) 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. # How to Say Thank You for my Work 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](https://komascript.de/wunschliste) if you want to give more. If you don't understand German, just click to links at that page.