OpenBSD Journal

mandoc-1.14.4 released

Contributed by rueda on from the i'm-mandoc(1)-fly-me dept.

Ingo Schwarze (schwarze@ when wearing OpenBSD-only hat) wrote in to let us know about the new release:

From: Ingo Schwarze [elided]
Date: Wed, 8 Aug 2018 22:21:13 +0200
Subject: mandoc-1.14.4 released


after a full year of tranquil development, i just released mandoc-1.14.4.
This is a regular maintenance release.  As there are no major structural
changes, i expect it to be very stable, so all downstream systems are
encouraged to upgrade from any earlier version.
As usual, the release is available from

There are two important new features:

1. In -T ascii output mode, rendering of mathematical symbols
   and Greek letters is decisively improved.  When no unambiguous
   rendering as a single ASCII character is possible, symbols are
   now rendered as strings describing the meaning of the symbol.
   Here is an example from the lgamma(3) manual page:

   <Gamma>(x) = <integral>_0^<infinity> t^(x - 1) e^(-t) dt  for x > 0 and
   <Gamma>(x) = <pi>/(<Gamma>(1 - x) sin(<pi> x))            for x < 1

   Traditionally, ASCII rendering (mostly unsuccessfully) attempted
   to imitate the graphical shape of the symbols, which caused
   generally unintelligible results.
   An equivalent change was also performed in groff-current, is
   already patched into the OpenBSD groff port, and will be contained
   in the upcoming groff-1.22.4 release.  Consequently, in pages
   where unusually complicated mathematical formulae constitute
   the crucial content, full eqn(7) formatting can now be used.
   Of course, please still refrain from gratuitiously employing
   character escape sequences merely because an isolated symbol
   appears somewhere in a normal manual page - such cases are
   usually better handled by simply expressing the content in
   normal English words and sentences.

2. Mandoc HTML/CSS output, and hence man.cgi(8) presentation
   on the web, is now significantly better in many respects.
   In particular, first steps were taken towards better usability
   on small screen and mobile devices (responsive design):
   There are no more style= attributes containing fixed dimensions,
   but all indentations and distances are controlled by CSS, and
   the default style sheet uses a @media directive for adapting
   to the available space.  In several cases, the choice of HTML
   elements was improved, several HTML syntax violations were
   fixed, and the overall quality of the default CSS sytlesheet
   was improved in many respects.
   Almost all of these improvements were only possible due to
   sustained and detailed feedback from John Gardner, see, who taught me a lot about
   HTML and CSS.  Many thanks for that invaluable help!

Minor new features include:

* When a man(1) argument contains a slash, imply -l like in man-db.
* Use TIOCGWINSZ to reduce the default -Owidth and -Oindent during
  interactive use on terminals narrower than 79 columns.
* Generated PostScript files are now more than 50% smaller.
  Thanks to Marc Espie for developing and committing that patch!
* Terminal rendering of eqn(7) is improved in several respects.
* Simplified and nicer output from the mdoc(7) .Lk macro, formatting
  all links in-line, even long ones.
* roff(7) \n+ and \n- numerical register auto-increment and -decrement
* roff(7) .nr optional third argument (auto-increment step size)
* Many bug fixes.

For more details, see:

For doing a manual installation or setting up a packaging system,
please have a look at the INSTALL file in the tarball:

The release was tested on the following systems:
* OpenBSD -current and -stable
* NetBSD -current
* Debian Linux -current and -oldstable
* Void Linux glibc and musl
* illumos
* SunOS 5.11.2, 5.10, and 5.9

As usual, many thanks to the various developers who provided patches,
bug reports, advice, suggestions, and release testing!  For a full
list of contributors to this release, see:


(Comments are closed)


Copyright © - Daniel Hartmeier. All rights reserved. Articles and comments are copyright their respective authors, submission implies license to publish on this web site. Contents of the archive prior to as well as images and HTML templates were copied from the fabulous original with Jose's and Jim's kind permission. This journal runs as CGI with httpd(8) on OpenBSD, the source code is BSD licensed. undeadly \Un*dead"ly\, a. Not subject to death; immortal. [Obs.]