Par 1.53.0

Par 1.53.0 is a package containing documentation and ANSI C source code for the filter par.

Contents

Description
The Package Itself
Building It
Apologies

Description

par is a paragraph reformatter, vaguely similar to fmt, but better.

For example, the command “par 44gqr”, given the input:

        John Q. Public writes:
        > Jane Doe writes:
        > >
        > > May I remind people that this newsgroup
        > > is for posting binaries only.  Please keep
        > > all discussion in .d where it belongs.
        > Who appointed you net.god?
        > I'll discuss things here if I feel like it.
        Could you two please take this to e-mail?

        **********************************************
        ** Main's Law: For every action there is an **
        ** equal and opposite government program.   **
        **********************************************

Would produce the output:

        John Q. Public writes:

        > Jane Doe writes:
        >
        > > May I remind people that this
        > > newsgroup is for posting
        > > binaries only.  Please keep
        > > all discussion in .d where it
        > > belongs.
        >
        > Who appointed you net.god?  I'll
        > discuss things here if I feel like
        > it.

        Could you two please take this to
        e-mail?

        ************************************
        ** Main's Law: For every action   **
        ** there is an equal and opposite **
        ** government program.            **
        ************************************

See also:

The Package Itself

git repository
You can browse the source, use the issue tracker, and download any release (with cryptic filenames, unfortunately). The last few releases can also be downloaded below, with reasonable filenames.

Par-1.53.0.tar.gz
The latest version of Par, released on 2020-Mar-14, tar'd and gzip'd. It mainly adds more complete locale support for single-byte character sets, but see also the release notes.

Par-1.53.0.zip
Same package as above, but zip'd.

Par152.tar.gz
The previous version of Par, released on 2001-Apr-29, tar'd and gzip'd. Incomplete locale support.

Par152.zip
Same package as above, but zip'd.

par152wc.zip, par152ex.zip
A Win32 Console application and a DOS executable, respectively (take your pick), both zip'd, for DOS/Windows users who don't have C compilers. The former was provided by Rajas Sambhare, the latter by Stanislav Sitar. (I can't maintain these myself because I have no DOS/Windows capabilities.)

par_1.52-i18n.3.diff.gz
A patch by Jérôme Pouiller that adds support for multibyte charsets (like UTF-8), plus Debian packaging. Copied from http://sysmic.org/dl/par/debian/. See also his original announcement.

Par151.tar.gz
The previous version of Par, released on 2000-Feb-24, tar'd and gzip'd. No locale support.

Par151.zip
Same package as above, but zip'd.

Building It

On most UNIX-like systems, “make -f protoMakefile” will work, but you might want to read the comments in protoMakefile, or use the autoconf add-on for Par 1.52 contributed by Nelson H. F. Beebe, or take a look at some hints for building par on various platforms.

Apologies

Par began in July 1993 as a small program designed to do one narrow task: reformat a single paragraph that might have a border on either side. It was pretty clean back then. Over the next three months, it very rapidly expanded to handle multiple paragraphs, offer more options, and take better guesses, at the cost of becoming extremely complex, and very unclean. It is nowhere near the optimal design for the larger task it now tries to address. Its only redeeming features are that it is extremely useful (I find it indispensable), extremely portable, and very stable since version 1.41 released on 1993-Oct-31.

Back in 1993 I had very little experience at writing documentation for users, so the documentation for Par became rather nightmarish. There is no separation between how-it-works (which is painfully complex) and how-to-use-it (which is fairly simple, if you can ever figure it out).

Someday I ought to reexamine the problem, and redesign a new, clean solution from scratch. I don't know when I might get enough free time to start on such a project. Text files may be obsolete by then.


[AMC]  Prepared by Adam M. Costello
 Last modified: 2020-Mar-16-Mon 09:16:54 GMT
[Any Browser]