Follow-up Comment #11, bug #66653 (group groff): On Saturday, 30 August 2025 13:12:05 BST you wrote: > Follow-up Comment #10, bug #66653 (group groff): > > Hi Deri, > [...] > I think I have this licked. > > I'm attaching (or trying too--let's see if Savannah's email gateway can > cope) a diff of my changes since my last push (just a couple of hours > ago). > > Here it is in action: > > > $ cat ATTIC/unicode-char-in-diversion.groff > .box DIV > hello \[u260E] world > \#hello \[ru] world > .br > .box > .DIV > .\"pm DIV > .chop DIV > .asciify DIV > .\"pm DIV > .DIV > \X'pdf: ignoreme \*[DIV]' > $ ./build/test-groff -Z ATTIC/unicode-char-in-diversion.groff > x T ps > x res 72000 1 1 > x init > p1 > x font 5 TR > f5 > s10000 > md > DFd > V12000 > H72000 > thello > wx font 12 ZD > f12 > h2500 > Cu260E > wf5 > h9690 > tw > H111310 > torld > wh2500 > thello > wf12 > h2500 > Cu260E > wf5 > h9690 > tw > H169230 > torld > V12000 > H185340 > x X pdf: ignoreme hello \[u260E] world > n12000 0 > x trailer > V792000 > x stop > > > Please try this out and let me know if it is satisfactory, or isn't. > Hi Branden,
I like it a lot. One problem outstanding, it does not like your name! If I use
this as a test:-
.box DIV
hello \[u260E] world and G.\& \fBBranden\fP Robinson
\#hello \[ru] world
.br
.box
.
.\"pm DIV
.chop DIV
.asciify DIV
.\"pm DIV
.DIV
\X'pdf: ignoreme \*[DIV]'
.pdfinfo /Title "\*[DIV]"
Using:-
test-groff -Tpdf -Z G.trf
You will notice:-
troff:G.trf:12: warning: a node is not encodable in device-independent output
('asciify' might help)
x X ps:exec [/Title (hello \[u260E] world and G.) /DOCINFO pdfmark
Cut off in your prime! However, if you apply:-
--- ../src/roff/troff/node.cpp 2025-08-31 21:06:24.050087492 +0100
+++ node.cpp 2025-08-31 21:08:58.421762137 +0100
@@ -3883,7 +3883,8 @@
void node::asciify(macro *m)
{
- m->append(this);
+ if (strcmp("dummy_node", this->type()) != 0 && strcmp("tag_node", this-
> type()) != 0)
+ m->append(this);
}
// XXX: Member function is identical to `composite_node::asciify()`.
The problem (and the error) disappear. This is probably not the best way to
stop dummy_nodes depositing null chars into c-string (which is what causes the
truncation), I don't know anything about C++ inheritance, it might just
require a dummy_node::asciify routine which does nothing!
Cheers
Deri
> (file #57604)
>
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?66653>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
signature.asc
Description: PGP signature
