groff
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Tears in my eyes, joy in my heart (was: gropdf-ng merge status


From: Oliver Corff
Subject: Re: Tears in my eyes, joy in my heart (was: gropdf-ng merge status
Date: Thu, 8 Feb 2024 03:25:17 +0100
User-agent: Mozilla Thunderbird

Hi Deri,

just as Peter said: this news just unmade my day.

My contributions to groff are tiny, I am just an avid user who follows
groff development with great interest but little of own competence for
substantial contributions. All the more I appreciate the work you have
been making with groff and pdf, notably with regard to embedded fonts
etc.; something which is essential for the type of documents I process
with groff. So it is a good occasion to thank you for everything.

Sometimes, it takes a long time before a notion of discomfort with a
given situation erupts in the form of a seemingly irreversable choice.

I wish that that notion won't become terminal and that the joy of doing
creative and constructive work will not miss to return to you.

My best wishes to you for New Year! --- tomorrow will be New Year in
Mongolia where I happen to be for the moment.

Cheers,

Oliver.


On 07/02/2024 19:10, Deri wrote:
Hi Branden,

It is with a heavy heart that I announce I shall be leaving the groff mailing
list, I'm finding it too much work. Yesterday, you managed over 2900 words in
approx 80 minutes whilst also doing a code review, and probably 3 other things
as well! I am so jealous my paltry sub 10 words a minutes (on a good day) just
can't cope, particularly as you sometimes have difficulty getting the points I
am trying to make and reply with points which are not relevant. An example was
your "unease" with adding an extra field to afmtodit output, you pointed me to
some documentation rather than a swift perusal of the code in afmtodit where
you can see that it ALWAYS outputs 5 tab characters and never outputs -- so no
comments. And talking of "unease", you wrote, in reply to my request for help
with merging: "Sure.  Once we're _both_ happy with it!  :D", and this was
eight months ago, so unease really does mean rejection. In November it
became:-

1.  Changing the format of font description files to add yet
another field, mapping character names to Unicode code points.
In the rest of groff, this is not necessary because we have
glyphuni.cpp.


https://git.savannah.gnu.org/cgit/groff.git/tree/src/libs/libgroff/
glyphuni
.cpp

I'd like to honor the DRY principle here.  What's a good way
to achieve that?
Given that afmtodit does not use glyphuni.cpp (and can't) the DRY principle
here means to let afmtodit plant the needed data in the font files for gropdf
to use, but you didn't seem to see how irrelevant your comment was.

Anyway, enough of this useless banter. This is a joyful moment, I'm freeing up
so much time to pursue other projects that will be equally rewarding as
writing gropdf has been, like:-

Detection of bias in UK news channels

In the UK there is a legal obligation for "Due impartiality and due accuracy"
(https://www.ofcom.org.uk/tv-radio-and-on-demand/broadcast-codes/broadcast-code/section-five-due-impartiality-accuracy).
 For the past 4 years, I have
been converting the dvb-t subtitles for news channels into text using an OCR
program I wrote. It's about time I fooled around with the data using NLP and
see if it is possible to detect bias within the data, at a minimum I can
extract statistics on the political persuasion of guests, but I've got a
feeling I might be able to go further.

GB News, a right wing channel, keeps getting fined. I'd love to be able to
write something which automatically emailed a complaint to Ofcom if it caught
them breaking the rules, without having to watch the channel all day. :-)

My autobiography

Well, I've got the title - "A life more ordinary"!!

If I ever get the gropdf itch in the future, this is my todo list:-

A) Underlining text.

Peter asked if I could do this, ages ago because he has a method for
postscript, from Tadziu. It is half done.

B) Watermarking

Given a pdf scale to full page size and place it under the groff output, or
stamp, put it above it. I have worked out the last wrinkle. Normally, if you
rotate the page with -P-l any pdfpic will be rotated as well, so that the
picture orientation stays with the text orientation but the watermark
orientation is controlled by the page orientation.

C) Ttf/otf in pdfs

This is a lot of work, but I was starting to get a handle on it. Incidentally,
if I ever do get this done, the Tibet ligatures issue will be solved. The
reason it seems to be Ok everywhere else except in groff, is because the
"rules" for the ligature placement/resizing are in sub-tables within the ttf
font file, but in the fontforge conversion to a pfa file most of this
information is discarded because type 1 fonts have no concept of vertical
adjustments so all that gets through is the horizontal adjustment which
ensures the glyphs print over each other, but without the correct vertical
adjustment/sizing. Still a lot of research to do.

I've just seen your last email with a lot of nice things, but sometimes you
confuse "code review" with "design review". If someone wants to know how to
get to the doctor it is not helpful to say "Well I would not start from here”.
I have told you right from the beginning that all I needed was a way to pass
anything to gropdf, and so I coded on the expectation I could receive anything
and dealt with it appropriately. This is all working code. Later you expressed
a preference for a method where you would clean the data within troff so I
would not need to, but I already had working code and so far any alternative
is vapourware, and the only pseudo code I've seen (a for loop with a flag to
indicate whether the next item is a node or a character), with the expectation
that nodes will be discarded, would not cut the mustard because I believe
special characters (i.e. \[uXXXX] or \[em]) are actually held as nodes within
troff so would be discarded as not a character. So the criticism is of my
design, hardly what I call a code review and far too late to initiate a design
review after all the code has been written.

One could see the current changes to \X and .device as a futile attempt to
prevent my design from working by introducing a new error (not in 1.23.0)
which prevents special characters being passed to output drivers. On current
master try this:-

[derij@pip Russian]$ printf "\&\n.device \\[u0403]\n"|./test-groff -Tpdf -z
troff:<standard input>:2: error: special character 'u0413_0301' is invalid
within a device control command

And it has been like that for weeks, is this a case of Branden trying to force
his design? At some point he will have to reverse the change since his design
requires the ability to pass special characters to the output driver. Maybe
this will finally get reversed when the vapourware is ready. :-) Or may be
soon after reading this. :-) Futile because circumvention of the new error was
fairly simple.

Since I won't be around to change gropdf to use the new vapourware, and given
the amount of new code in gropdf to handle font subsetting it will probably be
sensible to revert to the 1.23.0 version of gropdf before the next release,
since that code base has been well tested and although the font subsetting has
been tested on about a hundred fonts there are thousands of different fonts
out there which it has not been tested with, and disassembling a rogue font
and comparing it to the subsetting code is not an easy task. If you do chance
your arm with the new code, please could you remove my authorship since I have
asked you not to release it when I can't support it.

I started this at 9:30 this morning (after a particularly sleepless night, one
coffee break, and cooked the other half's lunch (she's the girl next door -
known her for 65 years - also has cerebral palsy like me - she thinks us being
together is divine providence, but I think everyone's unlucky sometimes. No,
no no, don't mean it, I love her.)), it is now 17:45 and I'm starting to get
excited this is my last monster typing marathon, and I say farewell to the
lovely people on the list, I shall be clocking off the list probably tomorrow,
I can't say I won't be back at some point, but I definitely need a good 6
months at least. You have warn me out Branden, you should have agreed to video
calls when I suggested it. :-)

Cheers

Deri x




--

Dr. Oliver Corff
Mail:oliver.corff@email.de


reply via email to

[Prev in Thread] Current Thread [Next in Thread]