Verzeichnis macros/latex/contrib/math-shorthandz
math-shorthandz — smart shorthands for typesetting math in LaTeX
The math-shorthandz package has shorthand macros for typesetting the most common mathematical expressions in LaTeX. It provides compact commands to construct symbols with features such as multi-underlines, pre/succeeding scripts, fractions, differentials/derivatives and integrals with highly customizable positioning and (auto-)scaling. All commands are safe in text and distinguish their customization between display, inline, script and/or scriptscript contexts.
Every distance is measured in the math style of the operand, so commands look good in inline, display and exponent contexts. All tunable parameters are package options, read at call time, so they can be changed anywhere with \setkeys{shorthand}{key=value}. The package name ends in "z" on purpose: every command starts with z (e.g. \zdot instead of \cdot), which gives them a unified style and keeps them distinct from other commands.
Commands
\zint— integrals: single, multiple, contour or bridged; slant, stacked or right-side limits\zdiff— differentials and derivatives\zfrac— fractions (\frac,\nicefracor slash) with optional parentheses\zscript— up to four scripts around a nucleus\zprime— primes as superscript or accent\zlim— limit operator with variable and value\zarg— scaled function argument\zcond— "evaluated at" bar\zdot— heavier dot-product operator\zscale— style-aware scaling of math content\zline,\zvec,\zmat— stacked underlines for vectors and matrices\zpunct— punctuation at the end of a display line
\usepackage[zint-math-after=-0.3, zarg-kern=1mu]{math-shorthandz} ... \zint[0][T] f\zarg{t}\zdiff+{t} = \zfrac[\beta+1] \zpunct{.}
Requirements
LuaLaTeX or XeLaTeX (the package loads unicode-math), LaTeX kernel 2020-10-01 or newer, the packages amsmath, graphicx, nicefrac and xkeyval, and the XITS Math font (used for the integral glyphs; xits in TeX Live).
Installation
Install it from your TeX distribution (tlmgr install math-shorthandz), or copy math-shorthandz.sty into your local TEXMF tree under tex/latex/math-shorthandz/ (kpsewhich -var-value TEXMFHOME prints its location), or simply next to your document. Then load it with \usepackage{math-shorthandz}.
Documentation
The manual is math-shorthandz.pdf. To rebuild it from math-shorthandz.tex (which needs math-shorthandz.sty and math-shorthandz-listings.tex, plus the packages tcolorbox, listings, tikz, hypdoc and a few common ones):
lualatex math-shorthandz makeindex -s gind.ist math-shorthandz.idx lualatex math-shorthandz lualatex math-shorthandz
or run l3build doc in the repository. The gind.ist index style is required; -shell-escape is not. With latexmk, add $makeindex = 'makeindex -s gind.ist %O -o %D %S'; to a latexmkrc.
Contributing and releasing
Issues and pull requests are welcome at https://github.com/tplobo/math-shorthandz.
Code and documentation guidelines
math-shorthandz.styhas one section per public command, in dependency order. Each section keeps the same internal order: options and constants, helper functions, then the public command, each with a short comment (docstring) describing arguments and behaviour. Follow the existing spacing, indentation and comment style.- Every tunable value is a package option (family
shorthand, key names prefixed with the command name), read at call time. Positions and margins are ratios of the x-height or quad of the math style; scales follow the four-factor scheme described in the manual. - Any change to a command must be reflected in its section of
math-shorthandz.tex(syntax box, option table, examples) and in the Change History. Examples are introduced by a short paragraph ending in ":". - There is no automated test suite: the manual itself is the test. A change is ready when
l3build docruns without errors and the examples look right.
Versioning
Version numbers follow Semantic Versioning (MAJOR.MINOR.PATCH):
- MAJOR: renamed or removed commands or option keys, or changes that alter the output of existing input;
- MINOR: new commands or options that keep existing input working;
- PATCH: bug fixes and documentation changes without behaviour change.
Below 1.0.0, anything may change at any time. The Change History in the manual lists every version, newest first.
Releasing a new version
Maintainers only. Replace vX.Y.Z by the new version.
- Make sure the working tree is clean and on the main branch.
- Add the
vX.Y.Zentry to the Change History inmath-shorthandz.tex(l3build tagdoes not touch it). - Update version and date in
math-shorthandz.styand in the manual title:
l3build tag vX.Y.Z
- Build the manual and check the log for errors and warnings:
l3build doc
- Commit and tag:
git add -A git commit -m "Release vX.Y.Z" git tag -a vX.Y.Z -m "math-shorthandz vX.Y.Z" git push origin main git push origin vX.Y.Z
- Build the CTAN archive:
l3build ctan
- Validate the upload without sending it (
CTAN_EMAILmust hold the uploader address, or pass--email). For updates, replace the announcement with-m "text"or-F file; the default inbuild.luais the text of the first release:
export CTAN_EMAIL=you@example.org
l3build upload --debug
- Upload:
l3build upload
License
Copyright (C) 2020-2026 Tiago Pomella Lobo. Distributed and modified under the LaTeX Project Public License, version 1.3c or later (https://www.latex-project.org/lppl.txt). Maintenance status: author-maintained.
Author and support
Tiago Pomella Lobo — https://github.com/tplobo/math-shorthandz (source, issues and releases).
Herunterladen des vollständigen Inhalts dieses Pakets in einem Zip-Archiv (317.2k).
Math-shorthandz – Smart shorthands for typesetting math in LaTeX
The package provides shorthand macros for typesetting in compact manner the most common mathematical expressions in LaTeX. It provides compact commands to construct symbols with features such as:
- zline – multi-underlines,
- zscript – pre/succeding scripts,
- zfrac – fractions,
- zdiff – differentials/derivatives,
- zint – integrals with highly customizable positioning and (auto-)scaling,
- and more!
All commands are safe in text and distinguish their customization between display, inline, script and/or scriptscript contexts.
| Paket | Math-shorthandz |
| Fehlermeldungen | |
| Repository | |
| Version | 1.0.0 |
| Lizenzen | The LaTeX Project Public License 1.3c |
| Copyright | 2020–2026 Tiago Pomella Lobo |
| Betreuer | Tiago Pomella Lobo |
| Themen | Mathematik |