summaryrefslogtreecommitdiffstats
path: root/contrib/groff/src/utils
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/groff/src/utils')
-rw-r--r--contrib/groff/src/utils/addftinfo/Makefile.sub6
-rw-r--r--contrib/groff/src/utils/addftinfo/addftinfo.cc5
-rw-r--r--contrib/groff/src/utils/afmtodit/afmtodit.man59
-rw-r--r--contrib/groff/src/utils/afmtodit/afmtodit.pl5
-rw-r--r--contrib/groff/src/utils/hpftodit/Makefile.sub4
-rw-r--r--contrib/groff/src/utils/hpftodit/hpftodit.cc23
-rw-r--r--contrib/groff/src/utils/indxbib/Makefile.sub6
-rw-r--r--contrib/groff/src/utils/indxbib/indxbib.cc26
-rw-r--r--contrib/groff/src/utils/indxbib/signal.c6
-rw-r--r--contrib/groff/src/utils/lkbib/Makefile.sub4
-rw-r--r--contrib/groff/src/utils/lkbib/lkbib.cc5
-rw-r--r--contrib/groff/src/utils/lookbib/Makefile.sub4
-rw-r--r--contrib/groff/src/utils/lookbib/lookbib.cc9
-rw-r--r--contrib/groff/src/utils/pfbtops/Makefile.sub4
-rw-r--r--contrib/groff/src/utils/pfbtops/pfbtops.c5
-rw-r--r--contrib/groff/src/utils/tfmtodit/Makefile.sub4
-rw-r--r--contrib/groff/src/utils/tfmtodit/tfmtodit.cc5
-rw-r--r--contrib/groff/src/utils/tfmtodit/tfmtodit.man20
18 files changed, 124 insertions, 76 deletions
diff --git a/contrib/groff/src/utils/addftinfo/Makefile.sub b/contrib/groff/src/utils/addftinfo/Makefile.sub
index 23848d5..af5bf70 100644
--- a/contrib/groff/src/utils/addftinfo/Makefile.sub
+++ b/contrib/groff/src/utils/addftinfo/Makefile.sub
@@ -1,9 +1,9 @@
-PROG=addftinfo
+PROG=addftinfo$(EXEEXT)
MAN1=addftinfo.n
XLIBS=$(LIBGROFF)
OBJS=\
- addftinfo.o \
- guess.o
+ addftinfo.$(OBJEXT) \
+ guess.$(OBJEXT)
CCSRCS=\
$(srcdir)/addftinfo.cc \
$(srcdir)/guess.cc
diff --git a/contrib/groff/src/utils/addftinfo/addftinfo.cc b/contrib/groff/src/utils/addftinfo/addftinfo.cc
index eb222d9..931d836 100644
--- a/contrib/groff/src/utils/addftinfo/addftinfo.cc
+++ b/contrib/groff/src/utils/addftinfo/addftinfo.cc
@@ -18,13 +18,12 @@ You should have received a copy of the GNU General Public License along
with groff; see the file COPYING. If not, write to the Free Software
Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-#include <stdio.h>
+#include "lib.h"
+
#include <ctype.h>
-#include <string.h>
#include <assert.h>
#include <stdlib.h>
#include <errno.h>
-#include "lib.h"
#include "errarg.h"
#include "error.h"
#include "stringclass.h"
diff --git a/contrib/groff/src/utils/afmtodit/afmtodit.man b/contrib/groff/src/utils/afmtodit/afmtodit.man
index 585c229..2d4c866 100644
--- a/contrib/groff/src/utils/afmtodit/afmtodit.man
+++ b/contrib/groff/src/utils/afmtodit/afmtodit.man
@@ -1,5 +1,5 @@
.ig
-Copyright (C) 1989-2000, 2001 Free Software Foundation, Inc.
+Copyright (C) 1989-2000, 2001, 2002 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -16,15 +16,23 @@ versions, except that this permission notice may be included in
translations approved by the Free Software Foundation instead of in
the original English.
..
+.
+.
.\" Like TP, but if specified indent is more than half
.\" the current line-length - indent, use the default indent.
.de Tp
.ie \\n(.$=0:((0\\$1)*2u>(\\n(.lu-\\n(.iu)) .TP
.el .TP "\\$1"
..
+.
+.
.TH AFMTODIT @MAN1EXT@ "@MDATE@" "Groff Version @VERSION@"
+.
+.
.SH NAME
afmtodit \- create font files for use with groff \-Tps
+.
+.
.SH SYNOPSIS
.nr a \n(.j
.ad l
@@ -36,6 +44,7 @@ afmtodit \- create font files for use with groff \-Tps
.ie \\n(.$-1 .RI "[\ \fB\\$1\fP" "\\$2" "\ ]"
.el .RB "[\ " "\\$1" "\ ]"
..
+.
.OP \-nsv
.OP \-d desc_file
.OP \-e enc_file
@@ -46,16 +55,21 @@ afmtodit \- create font files for use with groff \-Tps
.I font
.br
.ad \na
+.
+.
.SH DESCRIPTION
.B afmtodit
creates a font file for use with groff and
.BR grops .
+.
.B afmtodit
is written in perl;
-you must have perl version 3 installed in order to run
+you must have perl version 3 or newer installed in order to run
.BR afmtodit .
+.
.I afm_file
is the AFM (Adobe Font Metric) file for the font.
+.
.I map_file
is a file that says which groff character names map onto
each PostScript character name;
@@ -69,15 +83,22 @@ where
is the PostScript name of the character
and
.I groff_char
-is the groff name of the character (as used in the groff font file.)
+is the groff name of the character (as used in the groff font file).
+.
The same
.I ps_char
can occur multiple times in the file;
each
.I groff_char
must occur at most once.
+.
+Lines starting with
+.B #
+and blank lines are ignored.
+.
.I font
is the groff name of the font.
+.
If a PostScript character is in the encoding to be used for the font
but is not mentioned in
.I map_file
@@ -88,14 +109,17 @@ which can be accessed by the
.B \eN
escape sequence in
.BR troff .
+.
The groff font file will be output to a file called
.IR font .
+.
.LP
If there is a downloadable font file for the font, it may be listed in
the file
.BR @FONTDIR@/devps/download ;
see
.BR grops (@MAN1EXT@).
+.
.LP
If the
.B \-i
@@ -123,53 +147,67 @@ is the PostScript name of the character,
and
.I n
is the desired value of the corresponding parameter in thousandths of an em.
+.
These parameters are normally needed only for italic (or oblique) fonts.
+.
+.
.SH OPTIONS
.TP
.B \-v
Print version.
+.
.TP
.B \-n
Don't output a
.B ligatures
command for this font.
+.
Use this with constant-width fonts.
+.
.TP
.B \-s
The font is special.
+.
The effect of this option is to add the
.B special
command to the font file.
+.
.TP
.BI \-d desc_file
The device description file is
.I desc_file
rather than the default
.BR DESC .
+.
.TP
.BI \-e enc_file
The PostScript font should be reencoded to use the encoding described
in enc_file.
+.
The format of
.I enc_file
is described in
.BR grops (@MAN1EXT@).
+.
.TP
.BI \-a n
Use
.I n
as the slant parameter in the font file;
this is used by groff in the positioning of accents.
+.
By default
.B afmtodit
uses the negative of the ItalicAngle specified in the afm file;
with true italic fonts it is sometimes desirable to use
a slant that is less than this.
+.
If you find that characters from an italic font have accents
placed too far to the right over them,
then use the
.B \-a
option to give the font a smaller slant.
+.
.TP
.BI \-i n
Generate an italic correction for each character so that
@@ -179,15 +217,19 @@ is equal to
thousandths of an em
plus the amount by which the right edge of the character's bounding
is to the right of the character's origin.
+.
If this would result in a negative italic correction, use a zero
italic correction instead.
+.
.IP
Also generate a subscript correction equal to the
product of the tangent of the slant of the font and
four fifths of the x-height of the font.
+.
If this would result in a subscript correction greater than the italic
correction, use a subscript correction equal to the italic correction
instead.
+.
.IP
Also generate a left italic correction for each character
equal to
@@ -195,29 +237,40 @@ equal to
thousandths of an em
plus the amount by which the left edge of the character's bounding box
is to the left of the character's origin.
+.
The left italic correction may be negative.
+.
.IP
This option is normally needed only with italic (or oblique) fonts.
+.
The font files distributed with groff were created using an option of
.B \-i50
for italic fonts.
+.
+.
.SH FILES
.Tp \w'\fB@FONTDIR@/devps/download'u+2n
.B @FONTDIR@/devps/DESC
Device description file.
+.
.TP
.BI @FONTDIR@/devps/ F
Font description file for font
.IR F .
+.
.TP
.B @FONTDIR@/devps/download
List of downloadable fonts.
+.
.TP
.B @FONTDIR@/devps/text.enc
Encoding used for text fonts.
+.
.TP
.B @FONTDIR@/devps/generate/textmap
Standard mapping.
+.
+.
.SH "SEE ALSO"
.BR groff (@MAN1EXT@),
.BR grops (@MAN1EXT@),
diff --git a/contrib/groff/src/utils/afmtodit/afmtodit.pl b/contrib/groff/src/utils/afmtodit/afmtodit.pl
index bfc058a..67c0f682 100644
--- a/contrib/groff/src/utils/afmtodit/afmtodit.pl
+++ b/contrib/groff/src/utils/afmtodit/afmtodit.pl
@@ -1,6 +1,6 @@
-#! /usr/bin/perl -P-
+#! /usr/bin/perl
# -*- Perl -*-
-# Copyright (C) 1989-2000 Free Software Foundation, Inc.
+# Copyright (C) 1989-2000, 2001, 2002 Free Software Foundation, Inc.
# Written by James Clark (jjc@jclark.com)
#
# This file is part of groff.
@@ -145,6 +145,7 @@ if ($opt_e) {
open(ENCODING, $opt_e) || die "$prog: can't open \`$opt_e': $!\n";
while (<ENCODING>) {
+ next if /^#/;
chop;
@field = split(' ');
if ($#field == 1) {
diff --git a/contrib/groff/src/utils/hpftodit/Makefile.sub b/contrib/groff/src/utils/hpftodit/Makefile.sub
index f5ff13e..7a16531 100644
--- a/contrib/groff/src/utils/hpftodit/Makefile.sub
+++ b/contrib/groff/src/utils/hpftodit/Makefile.sub
@@ -1,6 +1,6 @@
-PROG=hpftodit
+PROG=hpftodit$(EXEEXT)
MAN1=hpftodit.n
XLIBS=$(LIBGROFF)
MLIB=$(LIBM)
-OBJS=hpftodit.o
+OBJS=hpftodit.$(OBJEXT)
CCSRCS=$(srcdir)/hpftodit.cc
diff --git a/contrib/groff/src/utils/hpftodit/hpftodit.cc b/contrib/groff/src/utils/hpftodit/hpftodit.cc
index 15f6f7f..ecbc8a8 100644
--- a/contrib/groff/src/utils/hpftodit/hpftodit.cc
+++ b/contrib/groff/src/utils/hpftodit/hpftodit.cc
@@ -28,13 +28,12 @@ make it work with TrueType fonts
put filename in error messages (or fix lib)
*/
-#include <stdio.h>
+#include "lib.h"
+
#include <stdlib.h>
#include <math.h>
-#include <string.h>
#include <errno.h>
#include "assert.h"
-#include "lib.h"
#include "posix.h"
#include "errarg.h"
#include "error.h"
@@ -309,24 +308,6 @@ File::File(const char *s)
fatal("read unexpected number of bytes");
ptr_ = buf_;
end_ = buf_ + sb.st_size;
- // These are actually text files, so we must get rid of the `\r'
- // characters. This is also enabled for Posix systems, in case the
- // input came from Windows...
- unsigned char *p = buf_, *q = buf_;
- while (q < end_)
- {
- if (*q == '\r')
- {
- if (*++q != '\n')
- *p++ = '\r';
- }
-#if defined(__MSDOS__) || defined(_MSC_VER)
- if (*q == '\032') // ^Z means ``software EOF''
- break;
-#endif
- *p++ = *q++;
- }
- end_ = p;
}
void File::skip(int n)
diff --git a/contrib/groff/src/utils/indxbib/Makefile.sub b/contrib/groff/src/utils/indxbib/Makefile.sub
index f45a7a7..01e43b2 100644
--- a/contrib/groff/src/utils/indxbib/Makefile.sub
+++ b/contrib/groff/src/utils/indxbib/Makefile.sub
@@ -1,10 +1,10 @@
-PROG=indxbib
+PROG=indxbib$(EXEEXT)
MAN1=indxbib.n
XLIBS=$(LIBBIB) $(LIBGROFF)
MLIB=$(LIBM)
OBJS=\
- indxbib.o \
- signal.o
+ indxbib.$(OBJEXT) \
+ signal.$(OBJEXT)
CCSRCS=\
$(srcdir)/indxbib.cc
CSRCS=\
diff --git a/contrib/groff/src/utils/indxbib/indxbib.cc b/contrib/groff/src/utils/indxbib/indxbib.cc
index 4b2477f..9fced93 100644
--- a/contrib/groff/src/utils/indxbib/indxbib.cc
+++ b/contrib/groff/src/utils/indxbib/indxbib.cc
@@ -1,5 +1,5 @@
// -*- C++ -*-
-/* Copyright (C) 1989-1992, 2000, 2001 Free Software Foundation, Inc.
+/* Copyright (C) 1989-1992, 2000, 2001, 2002 Free Software Foundation, Inc.
Written by James Clark (jjc@jclark.com)
This file is part of groff.
@@ -18,14 +18,13 @@ You should have received a copy of the GNU General Public License along
with groff; see the file COPYING. If not, write to the Free Software
Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-#include <stdio.h>
+#include "lib.h"
+
#include <stdlib.h>
-#include <string.h>
#include <assert.h>
#include <errno.h>
#include "posix.h"
-#include "lib.h"
#include "errarg.h"
#include "error.h"
#include "stringclass.h"
@@ -39,12 +38,6 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
extern "C" const char *Version_string;
-#ifndef HAVE_MKSTEMP_PROTO
-extern "C" {
- extern int mkstemp(char *);
-}
-#endif
-
#define DEFAULT_HASH_TABLE_SIZE 997
#define TEMP_INDEX_TEMPLATE "indxbibXXXXXX"
@@ -229,7 +222,7 @@ int main(int argc, char **argv)
name_max = file_name_max(".");
const char *filename = p ? p + 1 : basename;
if (name_max >= 0 &&
- long(strlen(filename) + sizeof(INDEX_SUFFIX) - 1) > name_max)
+ (strlen(filename) + sizeof(INDEX_SUFFIX) - 1) > name_max)
fatal("`%1.%2' is too long for a filename", filename, INDEX_SUFFIX);
if (p) {
p++;
@@ -240,16 +233,8 @@ int main(int argc, char **argv)
else {
temp_index_file = strsave(TEMP_INDEX_TEMPLATE);
}
-#ifndef HAVE_MKSTEMP
- if (!mktemp(temp_index_file) || !temp_index_file[0])
- fatal("cannot create file name for temporary file");
-#endif
catch_fatal_signals();
-#ifdef HAVE_MKSTEMP
int fd = mkstemp(temp_index_file);
-#else
- int fd = creat(temp_index_file, S_IRUSR|S_IRGRP|S_IROTH);
-#endif
if (fd < 0)
fatal("can't create temporary index file: %1", strerror(errno));
indxfp = fdopen(fd, FOPEN_WB);
@@ -300,6 +285,9 @@ int main(int argc, char **argv)
strcpy(index_file, basename);
strcat(index_file, INDEX_SUFFIX);
#ifdef HAVE_RENAME
+#ifdef __EMX__
+ unline(index_file);
+#endif /* __EMX__ */
if (rename(temp_index_file, index_file) < 0) {
#ifdef __MSDOS__
// RENAME could fail on plain MSDOS filesystems because
diff --git a/contrib/groff/src/utils/indxbib/signal.c b/contrib/groff/src/utils/indxbib/signal.c
index 8078472..fccd289 100644
--- a/contrib/groff/src/utils/indxbib/signal.c
+++ b/contrib/groff/src/utils/indxbib/signal.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1992 Free Software Foundation, Inc.
+/* Copyright (C) 1992, 2001 Free Software Foundation, Inc.
Written by James Clark (jjc@jclark.com)
This file is part of groff.
@@ -20,6 +20,10 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* Unfortunately vendors seem to have problems writing a <signal.h>
that is correct for C++, so we implement all signal handling in C. */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
#include <sys/types.h>
#include <signal.h>
#ifdef HAVE_UNISTD_H
diff --git a/contrib/groff/src/utils/lkbib/Makefile.sub b/contrib/groff/src/utils/lkbib/Makefile.sub
index 8f31e10..899236a 100644
--- a/contrib/groff/src/utils/lkbib/Makefile.sub
+++ b/contrib/groff/src/utils/lkbib/Makefile.sub
@@ -1,6 +1,6 @@
-PROG=lkbib
+PROG=lkbib$(EXEEXT)
MAN1=lkbib.n
XLIBS=$(LIBBIB) $(LIBGROFF)
MLIB=$(LIBM)
-OBJS=lkbib.o
+OBJS=lkbib.$(OBJEXT)
CCSRCS=$(srcdir)/lkbib.cc
diff --git a/contrib/groff/src/utils/lkbib/lkbib.cc b/contrib/groff/src/utils/lkbib/lkbib.cc
index 50e4e9b..42156ea 100644
--- a/contrib/groff/src/utils/lkbib/lkbib.cc
+++ b/contrib/groff/src/utils/lkbib/lkbib.cc
@@ -18,13 +18,12 @@ You should have received a copy of the GNU General Public License along
with groff; see the file COPYING. If not, write to the Free Software
Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-#include <stdio.h>
+#include "lib.h"
+
#include <stdlib.h>
#include <errno.h>
-#include <string.h>
#include <assert.h>
-#include "lib.h"
#include "errarg.h"
#include "error.h"
diff --git a/contrib/groff/src/utils/lookbib/Makefile.sub b/contrib/groff/src/utils/lookbib/Makefile.sub
index 91b1404..7a08f0a 100644
--- a/contrib/groff/src/utils/lookbib/Makefile.sub
+++ b/contrib/groff/src/utils/lookbib/Makefile.sub
@@ -1,7 +1,7 @@
-PROG=lookbib
+PROG=lookbib$(EXEEXT)
MAN1=lookbib.n
XLIBS=$(LIBBIB) $(LIBGROFF)
MLIB=$(LIBM)
-OBJS=lookbib.o
+OBJS=lookbib.$(OBJEXT)
CCSRCS=$(srcdir)/lookbib.cc
NAMEPREFIX=$(g)
diff --git a/contrib/groff/src/utils/lookbib/lookbib.cc b/contrib/groff/src/utils/lookbib/lookbib.cc
index b742a4b..65e89bc 100644
--- a/contrib/groff/src/utils/lookbib/lookbib.cc
+++ b/contrib/groff/src/utils/lookbib/lookbib.cc
@@ -18,22 +18,23 @@ You should have received a copy of the GNU General Public License along
with groff; see the file COPYING. If not, write to the Free Software
Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-#include <stdio.h>
+#include "lib.h"
+
#include <stdlib.h>
-#include <string.h>
#include <assert.h>
#include <errno.h>
#include "errarg.h"
#include "error.h"
-#include "lib.h"
#include "cset.h"
#include "refid.h"
#include "search.h"
+/* for isatty() */
+#include "posix.h"
+
extern "C" {
- int isatty(int);
const char *Version_string;
}
diff --git a/contrib/groff/src/utils/pfbtops/Makefile.sub b/contrib/groff/src/utils/pfbtops/Makefile.sub
index f731ff5..a8ed92a 100644
--- a/contrib/groff/src/utils/pfbtops/Makefile.sub
+++ b/contrib/groff/src/utils/pfbtops/Makefile.sub
@@ -1,6 +1,6 @@
-PROG=pfbtops
+PROG=pfbtops$(EXEEXT)
MAN1=pfbtops.n
-OBJS=pfbtops.o
+OBJS=pfbtops.$(OBJEXT)
CSRCS=$(srcdir)/pfbtops.c
XLIBS=$(LIBGROFF)
MLIB=$(LIBM)
diff --git a/contrib/groff/src/utils/pfbtops/pfbtops.c b/contrib/groff/src/utils/pfbtops/pfbtops.c
index 0964ede..3417dcb 100644
--- a/contrib/groff/src/utils/pfbtops/pfbtops.c
+++ b/contrib/groff/src/utils/pfbtops/pfbtops.c
@@ -19,7 +19,12 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
/* This translates ps fonts in .pfb format to ASCII ps files. */
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
#include <stdio.h>
+#include <stdlib.h>
#include <getopt.h>
#include <limits.h>
diff --git a/contrib/groff/src/utils/tfmtodit/Makefile.sub b/contrib/groff/src/utils/tfmtodit/Makefile.sub
index 057bb3e..ee56ce6 100644
--- a/contrib/groff/src/utils/tfmtodit/Makefile.sub
+++ b/contrib/groff/src/utils/tfmtodit/Makefile.sub
@@ -1,6 +1,6 @@
-PROG=tfmtodit
+PROG=tfmtodit$(EXEEXT)
MAN1=tfmtodit.n
XLIBS=$(LIBGROFF)
MLIB=$(LIBM)
-OBJS=tfmtodit.o
+OBJS=tfmtodit.$(OBJEXT)
CCSRCS=$(srcdir)/tfmtodit.cc
diff --git a/contrib/groff/src/utils/tfmtodit/tfmtodit.cc b/contrib/groff/src/utils/tfmtodit/tfmtodit.cc
index 06b5d18..9fbbe25 100644
--- a/contrib/groff/src/utils/tfmtodit/tfmtodit.cc
+++ b/contrib/groff/src/utils/tfmtodit/tfmtodit.cc
@@ -47,12 +47,11 @@ This need only be done for a font for which math_fitting is false;
When it's true, the left_correction and subscript_correction should
both be zero. */
-#include <stdio.h>
+#include "lib.h"
+
#include <stdlib.h>
#include <math.h>
-#include <string.h>
#include <errno.h>
-#include "lib.h"
#include "errarg.h"
#include "error.h"
#include "assert.h"
diff --git a/contrib/groff/src/utils/tfmtodit/tfmtodit.man b/contrib/groff/src/utils/tfmtodit/tfmtodit.man
index b141c77..51f806d 100644
--- a/contrib/groff/src/utils/tfmtodit/tfmtodit.man
+++ b/contrib/groff/src/utils/tfmtodit/tfmtodit.man
@@ -1,5 +1,5 @@
.ig
-Copyright (C) 1989-2000, 2001 Free Software Foundation, Inc.
+Copyright (C) 1989-2000, 2001, 2002 Free Software Foundation, Inc.
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
@@ -121,8 +121,26 @@ def ignore_math_fit(expr left_adjustment,right_adjustment) =
.fi
.ft R
.LP
+For the EC font family, load the following definition after
+.B exbase
+(it is probably easiest to patch
+.B exbase.mf
+locally):
+.IP
+.nf
+.ft B
+def ignore_math_fit(expr left_adjustment,right_adjustment) =
+ ori_special "adjustment";
+ ori_numspecial left_adjustment*16/designsize;
+ ori_numspecial right_adjustment*16/designsize;
+ enddef;
+.fi
+.ft R
+.LP
The gf file created using this modified
.B cm.base
+or
+.B exbase
should be specified with the
.B \-g
option.
OpenPOWER on IntegriCloud