Update of bug #66675 (group groff):
Status: Confirmed => In Progress
_______________________________________________________
Follow-up Comment #14:
The fix for the character resolution part is simple.
$ git diff
diff --git a/font/devps/TR b/font/devps/TR
index 91581dfd1..6f3a0f46b 100644
--- a/font/devps/TR
+++ b/font/devps/TR
@@ -552,3 +552,4 @@ tdi 564,516,10 0 247 divide -- 00F7
Tp 500,683,217 3 254 thorn -- 00FE
:y 500,623,218 3 255 ydieresis -- 00FF
u2026 1000,100,11 0 256 ellipsis -- 0102
+u202Z "
diff --git a/src/roff/troff/input.cpp b/src/roff/troff/input.cpp
index 6ad60425a..7c50ae5e7 100644
--- a/src/roff/troff/input.cpp
+++ b/src/roff/troff/input.cpp
@@ -2564,14 +2564,8 @@ void token::next()
char errbuf[ERRBUFSZ];
const char *sc = s.contents();
const char *gn = 0 /* nullptr */;
- if ((strlen(sc) > 2) && (sc[0] == 'u')) {
- gn = valid_unicode_code_sequence(sc, errbuf);
- if (0 /* nullptr */ == gn) {
- error("special character '%1' is invalid: %2", sc,
- errbuf);
- break;
- }
- }
+ if ((strlen(sc) > 2) && (sc[0] == 'u'))
+ gn = valid_unicode_code_sequence(sc, 0 /* nullptr */);
if (gn != 0 /* nullptr */) {
const char *gn_decomposed = decompose_unicode(gn);
if (gn_decomposed)
$ printf 'Hello\\[u202Z]world\n' | ./build/test-groff -Z
x T ps
x res 72000 1 1
x init
p1
x font 5 TR
f5
s10000
V12000
H72000
md
DFd
tHello
Cu202Z
h10000
tw
H111340
torld
n12000 0
x trailer
V792000
x stop
$ printf 'Hello\\[u202Z]world\n' | ./build/test-groff -a
<beginning of page>
Hello<u202Z>world
Not shown: the ellipsis appearing fine in the PostScript. But it's there.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?66675>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
