[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Groff-commit] groff ./ChangeLog ./NEWS doc/groff.texinfo man/...
From: |
Werner LEMBERG |
Subject: |
[Groff-commit] groff ./ChangeLog ./NEWS doc/groff.texinfo man/... |
Date: |
Mon, 27 Mar 2006 18:12:30 +0000 |
CVSROOT: /cvsroot/groff
Module name: groff
Branch:
Changes by: Werner LEMBERG <address@hidden> 06/03/27 18:12:29
Modified files:
. : ChangeLog NEWS
doc : groff.texinfo
man : groff.man groff_diff.man
src/roff/troff : input.cpp
Log message:
Add two request `.device' and `.devicem' which are equivalent to
`\X' and `\Y', respectively.
* src/roff/troff/input.cpp (device_request, device_macro_request):
New functions.
(init_input_requests): Register them.
* doc/groff.texinfo, man/groff_diff.man, man/groff.man, NEWS:
Document them.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/groff/groff/ChangeLog.diff?tr1=1.944&tr2=1.945&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/groff/groff/NEWS.diff?tr1=1.212&tr2=1.213&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/groff/groff/doc/groff.texinfo.diff?tr1=1.235&tr2=1.236&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/groff/groff/man/groff.man.diff?tr1=1.77&tr2=1.78&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/groff/groff/man/groff_diff.man.diff?tr1=1.54&tr2=1.55&r1=text&r2=text
http://cvs.savannah.gnu.org/viewcvs/groff/groff/src/roff/troff/input.cpp.diff?tr1=1.34&tr2=1.35&r1=text&r2=text
Patches:
Index: groff/ChangeLog
diff -u groff/ChangeLog:1.944 groff/ChangeLog:1.945
--- groff/ChangeLog:1.944 Mon Mar 27 17:31:06 2006
+++ groff/ChangeLog Mon Mar 27 18:12:29 2006
@@ -1,3 +1,15 @@
+2006-03-27 Werner LEMBERG <address@hidden>
+
+ Add two request `.device' and `.devicem' which are equivalent to
+ `\X' and `\Y', respectively.
+
+ * src/roff/troff/input.cpp (device_request, device_macro_request):
+ New functions.
+ (init_input_requests): Register them.
+
+ * doc/groff.texinfo, man/groff_diff.man, man/groff.man, NEWS:
+ Document them.
+
2006-03-27 Gaius Mulley <address@hidden>
* src/roff/troff/input.cpp (encode_char): Emit special characters
Index: groff/NEWS
diff -u groff/NEWS:1.212 groff/NEWS:1.213
--- groff/NEWS:1.212 Tue Mar 21 12:48:10 2006
+++ groff/NEWS Mon Mar 27 18:12:29 2006
@@ -17,6 +17,11 @@
Note that latin-9 input encoding is used for French (to support the `oe'
ligature).
+o Swedish macro localization has been added also.
+
+o Two new requests `device' and `devicem' have been added which are
+ equivalents to the \X and \Y escapes, respectively.
+
Pic
---
@@ -2333,3 +2338,8 @@
now provided by `char' definitions in tmac.ps. TSymbol.ps has also
been removed, and the tweaks it provided are now provided by `char'
definitions.
+
+Local Variables:
+version-control: never
+coding: latin-1
+End:
Index: groff/doc/groff.texinfo
diff -u groff/doc/groff.texinfo:1.235 groff/doc/groff.texinfo:1.236
--- groff/doc/groff.texinfo:1.235 Mon Mar 27 17:31:06 2006
+++ groff/doc/groff.texinfo Mon Mar 27 18:12:29 2006
@@ -13088,7 +13088,8 @@
postprocessor. This is particularly useful for embedding
@sc{PostScript} into the final document.
address@hidden {\\X, ', xxx, '}
address@hidden {device, xxx}
address@hidden {\\X, ', xxx, '}
Embeds its argument into the @code{gtroff}
output preceded with @address@hidden X}}.
@@ -13106,6 +13107,9 @@
space characters. All other escapes (except @code{\\} which produces a
backslash) cause an error.
+Contrary to @code{\X}, the @code{device} request simply processes its
+argument in copy mode (@pxref{Copy-in Mode}).
+
@kindex use_charnames_in_special
@pindex address@hidden, and @code{use_charnames_in_special}}
@cindex @code{\X}, and special characters
@@ -13116,7 +13120,8 @@
@samp{use_charnames_in_special} is currently used by @code{grohtml} only.
@endDefesc
address@hidden {\\Y, , n, }
address@hidden {devicem, xx}
address@hidden {\\Y, , n, }
@DefescItem {\\Y, @Lparen{}, nm, }
@DefescListEnd {\\Y, @Lbrack{}, name, @Rbrack{}}
This is approximately equivalent to @samp{\X'address@hidden'}
Index: groff/man/groff.man
diff -u groff/man/groff.man:1.77 groff/man/groff.man:1.78
--- groff/man/groff.man:1.77 Mon Mar 13 23:11:09 2006
+++ groff/man/groff.man Mon Mar 27 18:12:29 2006
@@ -2,7 +2,7 @@
.ig
groff.man
-Last update: 13 Mar 2006
+Last update: 27 Mar 2006
This file is part of groff, the GNU roff type-setting system.
@@ -1330,7 +1330,7 @@
.I trap
location
to
-.I N .
+.IR N .
.
.REQ .char c anything
Define character
@@ -1464,12 +1464,22 @@
.request .dei
but with compatibility mode switched off during macro expansion.
.
+.REQ .device anything
+Write
+.I anything
+to the intermediate output as a device control function.
+.
+.REQ .devicem name
+Write contents of macro or string
+.I name
+uninterpreted to the intermediate output as a device control function.
+.
.REQ .di
End current diversion.
.
.REQ .di macro
Divert to
-.I macro .
+.IR macro .
.
.REQ .do name
Interpret
Index: groff/man/groff_diff.man
diff -u groff/man/groff_diff.man:1.54 groff/man/groff_diff.man:1.55
--- groff/man/groff_diff.man:1.54 Mon Mar 13 22:36:02 2006
+++ groff/man/groff_diff.man Mon Mar 27 18:12:29 2006
@@ -3,7 +3,7 @@
.ig
groff_diff.man
-Last update : 24 Feb 2006
+Last update : 27 Mar 2006
This file is part of groff, the GNU roff type-setting system.
It is the source of the man-page groff_diff(7).
@@ -1297,6 +1297,23 @@
request but compatibility mode is switched off during execution.
.
.TP
+.BI .device\ anything
+This is (almost) the same as the
+.B \[rs]X
+escape.
+.I anything
+is read in copy mode; a leading\~\c
+.B \[dq]
+is stripped.
+.
+.TP
+.BI .devicem\ xx
+This is the same as the
+.B \[rs]Y
+escape (to embed the contents of a macro into the intermediate
+output preceded with `x\~X').
+.
+.TP
.BI .do\ xxx
Interpret
.I .xxx
Index: groff/src/roff/troff/input.cpp
diff -u groff/src/roff/troff/input.cpp:1.34 groff/src/roff/troff/input.cpp:1.35
--- groff/src/roff/troff/input.cpp:1.34 Mon Mar 27 17:31:06 2006
+++ groff/src/roff/troff/input.cpp Mon Mar 27 18:12:29 2006
@@ -5248,6 +5248,41 @@
return new special_node(mac);
}
+void device_request()
+{
+ if (!tok.newline() && !tok.eof()) {
+ int c;
+ macro mac;
+ for (;;) {
+ c = get_copy(0);
+ if (c == '"') {
+ c = get_copy(0);
+ break;
+ }
+ if (c != ' ' && c != '\t')
+ break;
+ }
+ for (; c != '\n' && c != EOF; c = get_copy(0))
+ mac.append(c);
+ curenv->add_node(new special_node(mac));
+ }
+ tok.next();
+}
+
+void device_macro_request()
+{
+ symbol s = get_name(1);
+ if (!(s.is_null() || s.is_empty())) {
+ request_or_macro *p = lookup_request(s);
+ macro *m = p->to_macro();
+ if (m)
+ curenv->add_node(new special_node(*m));
+ else
+ error("can't transparently throughput a request");
+ }
+ skip_line();
+}
+
void output_request()
{
if (!tok.newline() && !tok.eof()) {
@@ -7565,6 +7600,8 @@
init_request("defcolor", define_color);
init_request("dei", define_indirect_macro);
init_request("dei1", define_indirect_nocomp_macro);
+ init_request("device", device_request);
+ init_request("devicem", device_macro_request);
init_request("do", do_request);
init_request("ds", define_string);
init_request("ds1", define_nocomp_string);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Groff-commit] groff ./ChangeLog ./NEWS doc/groff.texinfo man/...,
Werner LEMBERG <=