Follow-up Comment #33, bug #63074 (group groff):

This more or less does it for `\X` escape sequences, without (as far as I can
tell [and we _do_ have 200+ automated tests]) regressing anything.

But there's much more ground to cover.  See my discussion with Deri in bug
#64484.


commit c8332c5c1acdd16072672f2fa401cd77805e7264
Author: G. Branden Robinson <g.branden.robin...@gmail.com>
Date:   Sun Aug 25 18:56:54 2024 -0500

    [troff]: Begin fixing Savannah #63074.
    
    Support construction of arbitrary byte sequences in device control
    commands.
    
    * src/roff/troff/input.cpp (encode_special_character_for_device_output):
      Enhance.  When constructing the content of a device control escape
      sequence (and, in the future, that of a `device` request), try harder
      to convert special characters into something meaningful.  Is a special
      character identifier looks like something other than an attempt at a
      Unicode special character escape sequence already, try to convert it
      into one.  Otherwise, write any valid Unicode special character
      identifier (in groff notation: `\[u123ABC]`) to the macro being
      assembled (and thence the `special` node, and ultimately the `x X`
      command this node type produces).
    * src/roff/groff/tests/device-control-special-character-handling.sh:
      Update test expectations.  "\[u1F6C3]" is now correctly passed
      through, and "\[`a]" correctly coverted to "\[u00E0]".  Shorten test
      cases a little.


And of course NOW I see a typo.  Sigh.


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?63074>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/

Attachment: signature.asc
Description: PGP signature

Reply via email to