summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwlemb <wlemb>2002-04-04 06:47:46 +0000
committerwlemb <wlemb>2002-04-04 06:47:46 +0000
commitcb27182780094168b4e0ba8634d6c5a14d8d36e5 (patch)
treec82a89da1116d2d6ae05b16b2caa96342fa1aed3
parent195deb9abb9017b91effa6c1dd7889ffc1f44ec0 (diff)
downloadgroff-cb27182780094168b4e0ba8634d6c5a14d8d36e5.tar.gz
* src/drivers/grops/psrm.cc (resource_manager::do_begin_binary):
Fix typo. * doc/homepage.ms: Reduce title size. * doc/groff.texinfo: Fix documentation of .t register. * src/roff/troff/input.cc (exit_troff): Emit LAST_PAGE_EJECTOR only if page length is positive to avoid a loop. * tmac/an-old.tmac (ne): Increase page length to avoid problems with tbl.
-rw-r--r--ChangeLog16
-rw-r--r--doc/groff.texinfo12
-rwxr-xr-xdoc/homepage.ms2
-rw-r--r--src/devices/grops/psrm.cc2
-rw-r--r--src/roff/troff/input.cc28
-rw-r--r--tmac/an-old.tmac8
6 files changed, 51 insertions, 17 deletions
diff --git a/ChangeLog b/ChangeLog
index 82993013..2f9e7dee 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2002-04-03 Michael Selway <mas@ssl.co.uk>
+
+ * src/drivers/grops/psrm.cc (resource_manager::do_begin_binary):
+ Fix typo.
+
+2002-04-03 Werner Lemberg <wl@gnu.org>
+
+ * doc/homepage.ms: Reduce title size.
+ * doc/groff.texinfo: Fix documentation of .t register.
+
+ * src/roff/troff/input.cc (exit_troff): Emit LAST_PAGE_EJECTOR
+ only if page length is positive to avoid a loop.
+
+ * tmac/an-old.tmac (ne): Increase page length to avoid problems with
+ tbl.
+
2002-04-02 P. Alejandro Lopez-Valencia <dradul@yahoo.com>
* src/include/nonposix.h, src/roff/groff/pipeline.c:
diff --git a/doc/groff.texinfo b/doc/groff.texinfo
index 1282ea82..bcec0fff 100644
--- a/doc/groff.texinfo
+++ b/doc/groff.texinfo
@@ -4437,6 +4437,7 @@ line length of 3.5@w{ }inches and their results:
3.5i @result{} 3.5i
7/2 @result{} 0i
7/2i @result{} 0i
+(7 / 2)u @result{} 0i
7i/2 @result{} 0.1i
7i/2u @result{} 3.5i
@endExample
@@ -4447,7 +4448,8 @@ is assumed that 1@dmn{i} equals@w{ }240@dmn{u}, and 1@dmn{m} equals@w{
}10@dmn{p} (thus 1@dmn{m} equals@w{ }33@dmn{u}). The value 7@dmn{i}/2
is first handled as 7@dmn{i}/2@dmn{m}, then converted to
1680@dmn{u}/66@dmn{u} which is 25@dmn{u}, and this is approximately
-0.1@dmn{i}.
+0.1@dmn{i}. As can be seen, a scaling indicator after a closing
+parenthesis is simply ignored.
@cindex measurements, specifying safely
Thus, the safest way to specify measurements is to always
@@ -9367,7 +9369,7 @@ The @code{als} request can make a macro have more than one name.
This would be called as
@Example
-.vl $Id: groff.texinfo,v 1.110 2002/03/27 04:37:04 wlemb Exp $
+.vl $Id: groff.texinfo,v 1.111 2002/04/04 06:47:48 wlemb Exp $
@endExample
@endDefesc
@@ -9888,6 +9890,12 @@ set headers and footers.
@cindex trap, distance, register (@code{.t})
@Defreg {.t}
A read-only number register holding the distance to the next trap.
+
+If there are no traps between the current position and the bottom of the
+page, it contains the distance to the page bottom. In a diversion, the
+distance to the page bottom is infinite (the returned value is the biggest
+integer which can be represented in @code{groff}) if there are no diversion
+traps.
@endDefreg
@cindex changing trap location (@code{ch})
diff --git a/doc/homepage.ms b/doc/homepage.ms
index a04c4502..b4668ffd 100755
--- a/doc/homepage.ms
+++ b/doc/homepage.ms
@@ -32,7 +32,7 @@ Home of Groff (GNU Troff).
.
.HTML-IMAGE-LEFT
.PSPIC -L gnu.eps 2i 2i
-\v'-0.75i'\h'2.0i'\s[70]\*[GNU] Troff\s0
+\v'-0.75i'\h'2.0i'\s[60]\*[GNU] Troff\s0
.HTML-IMAGE-END
.
.HnS 1
diff --git a/src/devices/grops/psrm.cc b/src/devices/grops/psrm.cc
index 21b95244..7e5c56df 100644
--- a/src/devices/grops/psrm.cc
+++ b/src/devices/grops/psrm.cc
@@ -826,7 +826,7 @@ int resource_manager::do_begin_binary(const char *ptr, int, FILE *fp,
if (cc != '\n')
current_lineno++;
if (cc != EOF)
- ungetc(c, fp);
+ ungetc(cc, fp);
}
else if (c == '\n')
current_lineno++;
diff --git a/src/roff/troff/input.cc b/src/roff/troff/input.cc
index fdccb4b9..d5edf824 100644
--- a/src/roff/troff/input.cc
+++ b/src/roff/troff/input.cc
@@ -2264,19 +2264,21 @@ void exit_troff()
tok.next();
process_input_stack();
end_diversions();
- done_end_macro = 1;
- topdiv->set_ejecting();
- static unsigned char buf[2] = { LAST_PAGE_EJECTOR, '\0' };
- input_stack::push(make_temp_iterator((char *)buf));
- topdiv->space(topdiv->get_page_length(), 1);
- tok.next();
- process_input_stack();
- seen_last_page_ejector = 1; // should be set already
- topdiv->set_ejecting();
- push_page_ejector();
- topdiv->space(topdiv->get_page_length(), 1);
- tok.next();
- process_input_stack();
+ if (topdiv->get_page_length() > 0) {
+ done_end_macro = 1;
+ topdiv->set_ejecting();
+ static unsigned char buf[2] = { LAST_PAGE_EJECTOR, '\0' };
+ input_stack::push(make_temp_iterator((char *)buf));
+ topdiv->space(topdiv->get_page_length(), 1);
+ tok.next();
+ process_input_stack();
+ seen_last_page_ejector = 1; // should be set already
+ topdiv->set_ejecting();
+ push_page_ejector();
+ topdiv->space(topdiv->get_page_length(), 1);
+ tok.next();
+ process_input_stack();
+ }
// This will only happen if a trap-invoked macro starts a diversion,
// or if vertical position traps have been disabled.
cleanup_and_exit(0);
diff --git a/tmac/an-old.tmac b/tmac/an-old.tmac
index 72bf8c7f..9a6d5c7a 100644
--- a/tmac/an-old.tmac
+++ b/tmac/an-old.tmac
@@ -63,8 +63,16 @@
.if \n[an-html] .nr C 1
.if r ps4html .nr C 1
.
+.\" we redefine .ne to avoid page breaks; instead, the page length is
+.\" increased to the necessary amount (this is needed for tables)
.if n \{\
. de ne
+. ie \\n[.$] \
+. nr an-ne \\$*
+. el \
+. nr an-ne 1v
+. if (\\n[an-ne] >= \\n[.t]) \
+. pl +(\\n[an-ne]u - \\n[.t]u + 1v)
. .
.\}
.