Command/setuptolerance

Unofficial ConTeXt Wiki mirror

Last modified: 2025-10-08

Summary

The command \setuptolerance configures space stretching

Settings

\setuptolerance[...,...]
[...,...] horizontal vertical verystrict strict tolerant verytolerant space stretch

Option Explanation
verystrict horizontal: \tolerance 200 vertical: \def\bottomtolerance{0}
strict horizontal: \tolerance 1500 vertical: \def\bottomtolerance{0.050}
tolerant horizontal: \tolerance 3000 vertical: \def\bottomtolerance{0.075}
verytolerant horizontal: \tolerance 4500 vertical: \def\bottomtolerance{0.100}
space horizontal: \spaceskip 0.5em plus 0.25em minus 0.25em
stretch horizontal: \emergencystretch\bodyfontsize

Description

Set up how tolerant TeX should be of ‘ugly’ stretching of spaces. The more stretching you allow, the easier it is for TeX to choose a stretched-out underfull line instead of a margin-invading overfull line.

Use \setuptolerance[horizontal,...] for interword spacing and \setuptolerance[vertical,...] for column stretching. Don't try to combine these two.

The default orientation is horizontal, so the following two are equivalent:

\setuptolerance[horizontal,tolerant]
% and
\setuptolerance[tolerant]

The only horizontal option that you can’t also set via \setupalign or “align” in several other setup commands, is “space”.

The vertical tolerance doesn’t have much influence, mostly with \startcolumns.

Examples

Tolerance of framed texts

Framed texts don't inherit the global tolerance setting, but instead use their own tolerance as well:

%% global tolerance
\setuptolerance
  [tolerant]

%% tolerance for framed texts
\setupframedtext
  [align=verytolerant]

Tolerance of float captions

Float captions don't inherit the global tolerance setting, but instead use their own tolerance:

%% global tolerance
\setuptolerance
  [tolerant]

%% tolerance for captions
\setupcaption
  [figure, table]
  [align={middle, tolerant}]

middle is required, otherwise the caption placement is changed from the default placement (middle).

Notes

See also

Help from ConTeXt-Mailinglist/Forum

All issues with: