summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog15
-rw-r--r--NEWS3
-rw-r--r--doc/groff.texinfo57
-rw-r--r--font/devdvi/CWITC2
-rw-r--r--font/devdvi/CWTC2
-rw-r--r--font/devdvi/HBITC2
-rw-r--r--font/devdvi/HBTC2
-rw-r--r--font/devdvi/HITC2
-rw-r--r--font/devdvi/HRTC2
-rw-r--r--font/devdvi/TBITC2
-rw-r--r--font/devdvi/TBTC2
-rw-r--r--font/devdvi/TITC2
-rw-r--r--font/devdvi/TRTC2
-rw-r--r--font/devdvi/generate/tc.map2
-rw-r--r--man/groff.man5
-rw-r--r--man/groff_diff.man7
-rw-r--r--src/include/printer.h2
-rw-r--r--src/roff/troff/div.cc52
-rw-r--r--tmac/dvi.tmac1
-rw-r--r--tmac/ec.tmac3
20 files changed, 122 insertions, 45 deletions
diff --git a/ChangeLog b/ChangeLog
index 1d75358e..c30b50b0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2002-12-02 Werner LEMBERG <wl@gnu.org>
+
+ * font/devdvi/generate.tc.map: s/%O/%0/.
+ * font/devdvi/*TC: Regenerated.
+
+ * src/roff/troff/div.cc (init_div_requests): Sorted.
+
+ * tmac/dvi.tmac: Remove `Ye'.
+ * tmac/ec.tmac: Remove `Ye'.
+ Add .rchar entry for `de'.
+
+ * man/groff.man, man/groff_diff.man: Document register `.pe'.
+ * doc/groff.texinfo: Document registers `.pe', `.n', and `.w'.
+ * NEWS: Updated.
+
2002-11-30 Werner LEMBERG <wl@gnu.org>
Add PS font for various Euro glyphs.
diff --git a/NEWS b/NEWS
index 9b5e9ff5..18c24083 100644
--- a/NEWS
+++ b/NEWS
@@ -54,6 +54,9 @@ o A new request `schar' has been added to define global fallback
characters. They are searched after the list of fonts declared with the
`special' request but before the already mounted special fonts.
+o The `.pe' number register isn't new but hasn't been documented before.
+ It is set to 1 during a page ejection caused by the `bp' request.
+
Grops
-----
diff --git a/doc/groff.texinfo b/doc/groff.texinfo
index 860bf818..190b801d 100644
--- a/doc/groff.texinfo
+++ b/doc/groff.texinfo
@@ -7595,6 +7595,9 @@ cause a break or actually eject a page.
@cindex diversion, top-level, and @code{bp}
@code{bp} has no effect if not called within the top-level diversion
(@pxref{Diversions}).
+
+The number register @code{.pe} is set to@tie{}1 while @code{bp} is
+active. @xref{Page Location Traps}.
@endDefreq
@Defreq {ne, [@Var{space}]}
@@ -10793,7 +10796,7 @@ that was needed in the last @code{ne} request that caused a trap to be
sprung. Useful in conjunction with the @code{.trunc} register.
@xref{Page Control}, for more information.
-Since the @code{.ne} register is only set by traps and it doesn't make
+Since the @code{.ne} register is only set by traps it doesn't make
much sense to use it outside of trap macros.
@endDefreg
@@ -10812,6 +10815,35 @@ Since the @code{.trunc} register is only set by traps and it doesn't make
much sense to use it outside of trap macros.
@endDefreg
+@Defreg {.pe}
+@cindex @code{bp} request, and traps (@code{.pe})
+@cindex traps, sprung by @code{bp} request (@code{.pe})
+@cindex page ejecting register (@code{.pe})
+A read-only register which is set to@tie{}1 while a page is ejected with
+the @code{bp} request (or by the end of input).
+
+Outside of traps this register is always zero. In the following example,
+only the second call to@tie{}@code{x} is caused by @code{bp}.
+
+@Example
+.de x
+\&.pe=\\n[.pe]
+.br
+..
+.wh 1v x
+.wh 4v x
+A line.
+.br
+Another line.
+.br
+ @result{} A line.
+ .pe=0
+ Another line.
+
+ .pe=1
+@endExample
+@endDefreg
+
@c ---------------------------------------------------------------------
@node Diversion Traps, Input Line Traps, Page Location Traps, Traps
@@ -11320,10 +11352,20 @@ The number of consecutive hyphenated lines (set to zero).
@end itemize
@endDefreq
-@DefregList {.cht}
+@DefregList {.w}
+@DefregItem {.cht}
@DefregItem {.cdp}
@DefregListEnd {.csk}
-@cindex environment, last glyph
+@cindex environment, dimensions of last glyph (@code{.w}, @code{.cht}, @code{.cdp}, @code{.csk})
+@cindex width, of last glyph (@code{.w})
+@cindex height, of last glyph (@code{.cht})
+@cindex depth, of last glyph (@code{.cdp})
+@cindex skew, of last glyph (@code{.csk})
+@cindex last glyph, dimensions (@code{.w}, @code{.cht}, @code{.cdp}, @code{.csk})
+@cindex glyph, last, dimensions (@code{.w}, @code{.cht}, @code{.cdp}, @code{.csk})
+The @code{\n[.w]} register contains the
+width of the last glyph added to the current environment.
+
The @code{\n[.cht]} register contains the
height of the last glyph added to the current environment.
@@ -11337,6 +11379,15 @@ that @code{gtroff} should place an accent)
of the last glyph added to the current environment.
@endDefreg
+@Defreg {.n}
+@cindex environment, previous line length (@code{.n})
+@cindex line length, previous (@code{.n})
+@cindex length of previous line (@code{.n})
+@cindex previous line length (@code{.n})
+The @code{\n[.n]} register contains the
+length of the previous output line in the current environment.
+@endDefreg
+
@c =====================================================================
diff --git a/font/devdvi/CWITC b/font/devdvi/CWITC
index ccdb1b0f..72157d90 100644
--- a/font/devdvi/CWITC
+++ b/font/devdvi/CWITC
@@ -78,7 +78,7 @@ ti 550368,130000,0,182000 0 0176
dg 550368,640640,232960,182000 3 0204
dd 550368,640640,232960,182000 3 0205
--- 550368,728000,87360,182000 3 0206
-%O 550368,728000,87360,182000 3 0207
+%0 550368,728000,87360,182000 3 0207
bu 550368,534352,-106288,182000 2 0210
--- 550368,640640,0,182000 2 0211
--- 550368,728000,87360,182000 3 0212
diff --git a/font/devdvi/CWTC b/font/devdvi/CWTC
index 1c40144e..183e769b 100644
--- a/font/devdvi/CWTC
+++ b/font/devdvi/CWTC
@@ -77,7 +77,7 @@ ti 550368,130000 0 0176
dg 550368,640640,232960 3 0204
dd 550368,640640,232960 3 0205
--- 550368,728000,87360 3 0206
-%O 550368,728000,87360 3 0207
+%0 550368,728000,87360 3 0207
bu 550368,534352,-106288 2 0210
--- 550368,640640 2 0211
--- 550368,728000,87360 3 0212
diff --git a/font/devdvi/HBITC b/font/devdvi/HBITC
index 4efcb6da..295e808f 100644
--- a/font/devdvi/HBITC
+++ b/font/devdvi/HBITC
@@ -78,7 +78,7 @@ ti 704704,137072 0 0176
dg 512512,757120,203840 3 0204
dd 512512,757120,203840 3 0205
--- 576576,786240,262080 3 0206
-%O 1463224,786240,29120,32339 3 0207
+%0 1463224,786240,29120,32339 3 0207
bu 576576,483392,-37856 2 0210
--- 992992,728000,0,122707,-78454,61354 2 0211
--- 704704,786240,29120,122707 3 0212
diff --git a/font/devdvi/HBTC b/font/devdvi/HBTC
index 32712814..3dac4e30 100644
--- a/font/devdvi/HBTC
+++ b/font/devdvi/HBTC
@@ -77,7 +77,7 @@ ti 704704,137072 0 0176
dg 512512,757120,203840 3 0204
dd 512512,757120,203840 3 0205
--- 576576,786240,262080 3 0206
-%O 1463224,786240,29120 3 0207
+%0 1463224,786240,29120 3 0207
bu 576576,483392,-37856 2 0210
--- 992992,728000,0,0,-32032 2 0211
--- 704704,786240,29120 3 0212
diff --git a/font/devdvi/HITC b/font/devdvi/HITC
index 0cb1dca5..5e4aa880 100644
--- a/font/devdvi/HITC
+++ b/font/devdvi/HITC
@@ -78,7 +78,7 @@ ti 640640,133120 0 0176
dg 465920,757120,203840 3 0204
dd 465920,757120,203840 3 0205
--- 524160,786240,262080 3 0206
-%O 1223040,786240,29120,35251 3 0207
+%0 1223040,786240,29120,35251 3 0207
bu 524160,465920,-58240 0 0210
--- 902720,728000,0,125619,-75542,62810 2 0211
--- 640640,786240,29120,116955 3 0212
diff --git a/font/devdvi/HRTC b/font/devdvi/HRTC
index b365754e..7e3dbac7 100644
--- a/font/devdvi/HRTC
+++ b/font/devdvi/HRTC
@@ -77,7 +77,7 @@ ti 640640,133120 0 0176
dg 465920,757120,203840 3 0204
dd 465920,757120,203840 3 0205
--- 524160,786240,262080 3 0206
-%O 1223040,786240,29120 3 0207
+%0 1223040,786240,29120 3 0207
bu 524160,465920,-58240 0 0210
--- 902720,728000,0,0,-29120 2 0211
--- 640640,786240,29120 3 0212
diff --git a/font/devdvi/TBITC b/font/devdvi/TBITC
index b5223c8c..11e7f9c9 100644
--- a/font/devdvi/TBITC
+++ b/font/devdvi/TBITC
@@ -78,7 +78,7 @@ ti 743142,133120 0 0176
dg 557939,723632,203840 3 0204
dd 557939,723632,203840 3 0205
--- 619674,786240,262080 3 0206
-%O 1360486,786240,58240,134826 3 0207
+%0 1360486,786240,58240,134826 3 0207
bu 619674,472035,-46010 2 0210
--- 1113549,723632,0,148949,-84813,74475 2 0211
--- 743142,786240,58240,138029 3 0212
diff --git a/font/devdvi/TBTC b/font/devdvi/TBTC
index 2c5bc0d9..b680bcca 100644
--- a/font/devdvi/TBTC
+++ b/font/devdvi/TBTC
@@ -77,7 +77,7 @@ ti 736736,133120 0 0176
dg 535808,723632,203840 3 0204
dd 535808,723632,203840 3 0205
--- 602784,786240,262080 3 0206
-%O 1406496,786240,58240 3 0207
+%0 1406496,786240,58240 3 0207
bu 602784,495768,-27664 2 0210
--- 1138592,723632,0,0,-33488 2 0211
--- 736736,786240,58240 3 0212
diff --git a/font/devdvi/TITC b/font/devdvi/TITC
index 4bfcb84f..9f96e871 100644
--- a/font/devdvi/TITC
+++ b/font/devdvi/TITC
@@ -78,7 +78,7 @@ ti 642970,128960 0 0176
dg 482227,728000,203840 3 0204
dd 482227,728000,203840 3 0205
--- 535808,786240,262080 3 0206
-%O 1178778,786240,58240,142979 3 0207
+%0 1178778,786240,58240,142979 3 0207
bu 535808,450486,-74547 0 0210
--- 964454,716352,0,152298,-80517,76149 2 0211
--- 642970,786240,58240,142106 3 0212
diff --git a/font/devdvi/TRTC b/font/devdvi/TRTC
index 346e70ae..4b0b584b 100644
--- a/font/devdvi/TRTC
+++ b/font/devdvi/TRTC
@@ -77,7 +77,7 @@ ti 640640,128960 0 0176
dg 465920,722176,203840 3 0204
dd 465920,722176,203840 3 0205
--- 524160,786240,262080 3 0206
-%O 1223040,786240,58240 3 0207
+%0 1223040,786240,58240 3 0207
bu 524160,458640,-58240 2 0210
--- 990080,722176,0,0,-29120 2 0211
--- 640640,786240,58240 3 0212
diff --git a/font/devdvi/generate/tc.map b/font/devdvi/generate/tc.map
index 404eb5ea..d35814d7 100644
--- a/font/devdvi/generate/tc.map
+++ b/font/devdvi/generate/tc.map
@@ -26,7 +26,7 @@
126 ~ ti
132 dg
133 dd
-135 %O
+135 %0
136 bu
140 Fn
151 tm
diff --git a/man/groff.man b/man/groff.man
index 8ec485fd..b1d3a0c9 100644
--- a/man/groff.man
+++ b/man/groff.man
@@ -2,7 +2,7 @@
.ig
groff.man
-Last update: 10 Nov 2002
+Last update: 3 Dec 2002
This file is part of groff, the GNU roff type-setting system.
@@ -3136,6 +3136,9 @@ Current page offset.
.REG .p
Current page length.
.
+.REG .pe
+1\~during page ejection, 0\~otherwise.
+.
.REG .pn
The number of the next page: either the value set by a
.request pn
diff --git a/man/groff_diff.man b/man/groff_diff.man
index 83d44cf6..1a0b9784 100644
--- a/man/groff_diff.man
+++ b/man/groff_diff.man
@@ -3,7 +3,7 @@
.ig
groff_diff.man
-Last update : 10 Nov 2002
+Last update : 3 Dec 2002
This file is part of groff, the GNU roff type-setting system.
It is the source of the man-page groff_diff(7).
@@ -2658,6 +2658,11 @@ register.
.B \[rs]n[.ns]
1\~if no-space mode is active, 0\~otherwise.
.
+.TP \[rs]n[.pe]
+1\~during a page ejection caused by the
+.B bp
+request, 0\~otherwise.
+.
.TP
.B \[rs]n[.pn]
The number of the next page, either the value set by a
diff --git a/src/include/printer.h b/src/include/printer.h
index 4d5cbf52..dc2dcb11 100644
--- a/src/include/printer.h
+++ b/src/include/printer.h
@@ -30,7 +30,7 @@
/* Description
The class `printer' performs the postprocessing. Each
- postprocessor only need to implement a derived class of `printer' and
+ postprocessor only needs to implement a derived class of `printer' and
a suitable function `make_printer' for the device-dependent tasks.
Then the methods of class `printer' are called automatically by
`do_file()' in `input.cc'.
diff --git a/src/roff/troff/div.cc b/src/roff/troff/div.cc
index 52e99e9a..94ca7883 100644
--- a/src/roff/troff/div.cc
+++ b/src/roff/troff/div.cc
@@ -1136,47 +1136,47 @@ const char *no_space_mode_reg::get_string()
void init_div_requests()
{
- init_request("wh", when_request);
- init_request("ch", change_trap);
- init_request("pl", page_length);
- init_request("po", page_offset);
- init_request("rs", restore_spacing);
- init_request("ns", no_space);
- init_request("sp", space_request);
- init_request("di", divert);
- init_request("da", divert_append);
init_request("box", box);
init_request("boxa", box_append);
init_request("bp", begin_page);
+ init_request("ch", change_trap);
+ init_request("da", divert_append);
+ init_request("di", divert);
+ init_request("dt", diversion_trap);
+ init_request("fl", flush_output);
+ init_request("mk", mark);
init_request("ne", need_space);
+ init_request("ns", no_space);
+ init_request("os", output_saved_vertical_space);
+ init_request("pl", page_length);
init_request("pn", page_number);
- init_request("dt", diversion_trap);
+ init_request("po", page_offset);
+ init_request("ptr", print_traps);
+ init_request("rs", restore_spacing);
init_request("rt", return_request);
- init_request("mk", mark);
+ init_request("sp", space_request);
init_request("sv", save_vertical_space);
- init_request("os", output_saved_vertical_space);
- init_request("fl", flush_output);
init_request("vpt", vertical_position_traps);
- init_request("ptr", print_traps);
+ init_request("wh", when_request);
number_reg_dictionary.define(".a",
new constant_int_reg(&last_post_line_extra_space));
- number_reg_dictionary.define(".z", new diversion_name_reg);
- number_reg_dictionary.define(".o", new page_offset_reg);
- number_reg_dictionary.define(".p", new page_length_reg);
- number_reg_dictionary.define(".ns", new no_space_mode_reg);
number_reg_dictionary.define(".d", new vertical_position_reg);
number_reg_dictionary.define(".h", new high_water_mark_reg);
+ number_reg_dictionary.define(".ne",
+ new constant_vunits_reg(&needed_space));
+ number_reg_dictionary.define(".ns", new no_space_mode_reg);
+ number_reg_dictionary.define(".o", new page_offset_reg);
+ number_reg_dictionary.define(".p", new page_length_reg);
+ number_reg_dictionary.define(".pe", new page_ejecting_reg);
+ number_reg_dictionary.define(".pn", new next_page_number_reg);
number_reg_dictionary.define(".t", new distance_to_next_trap_reg);
+ number_reg_dictionary.define(".trunc",
+ new constant_vunits_reg(&truncated_space));
+ number_reg_dictionary.define(".vpt",
+ new constant_int_reg(&vertical_position_traps_flag));
+ number_reg_dictionary.define(".z", new diversion_name_reg);
number_reg_dictionary.define("dl", new variable_reg(&dl_reg_contents));
number_reg_dictionary.define("dn", new variable_reg(&dn_reg_contents));
number_reg_dictionary.define("nl", new nl_reg);
- number_reg_dictionary.define(".vpt",
- new constant_int_reg(&vertical_position_traps_flag));
number_reg_dictionary.define("%", new page_number_reg);
- number_reg_dictionary.define(".pn", new next_page_number_reg);
- number_reg_dictionary.define(".trunc",
- new constant_vunits_reg(&truncated_space));
- number_reg_dictionary.define(".ne",
- new constant_vunits_reg(&needed_space));
- number_reg_dictionary.define(".pe", new page_ejecting_reg);
}
diff --git a/tmac/dvi.tmac b/tmac/dvi.tmac
index 0d216395..8f528f82 100644
--- a/tmac/dvi.tmac
+++ b/tmac/dvi.tmac
@@ -119,7 +119,6 @@ D\v'-.33m'\s0\v'.33m'
.fchar \[Fo] \v'-.1m'\s-3<\h'-.3m'<\s+3\v'+.1m'
.fchar \[Fc] \v'-.1m'\s-3>\h'-.3m'>\s+3\v'+.1m'
.fchar \[bb] |
-.fchar \[Ye] \o'-Y'
.fchar \[Cs] \o'\[mu]o'
.
.fchar \[IJ] IJ
diff --git a/tmac/ec.tmac b/tmac/ec.tmac
index f343be83..f302d0f2 100644
--- a/tmac/ec.tmac
+++ b/tmac/ec.tmac
@@ -48,7 +48,8 @@
.rchar \[12] \[14] \[34]
.rchar \[S1] \[S2] \[S3]
.rchar \[Of] \[Om]
-.rchar \[Ye] \[Cs]
+.rchar \[Cs]
+.rchar \[de]
.
.\" an ID register
.nr ECFONTS 1