[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #61401] [grohtml] doesn't remap \- in device escapes
From: |
G. Branden Robinson |
Subject: |
[bug #61401] [grohtml] doesn't remap \- in device escapes |
Date: |
Sat, 30 Oct 2021 19:42:40 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0 |
Update of bug #61401 (project groff):
Status: In Progress => Fixed
Open/Closed: Open => Closed
Planned Release: None => 1.23.0
_______________________________________________________
Follow-up Comment #2:
commit eb695ab2b5e2bae54afa102355c493bda6e29d3e
Author: G. Branden Robinson <g.branden.robinson@gmail.com>
Date: Sat Oct 30 15:45:29 2021 +1100
[troff]: Fix Savannah #61401.
[troff]: Handle special character escape sequences that map to basic
Latin glyphs in device control escape sequences consistently among
output devices.
* src/roff/troff/input.cpp (encode_char): Rearrange conditionals. This
is the logic that puts the "whatever" within a \X'whatever' escape
sequence into GNU troff's intermediate output. Handle stretchable and
unstretchable space escape sequences ("\ " and \~") first. Then, if
the token is a special character escape sequence, retrieve its
"contents" (glyph name). Move the basic Latin mapping for the seven
glyph names '-', 'aq', 'dq', 'ga', 'ha', 'rs', and 'ti' here, before
checking whether the device description issued the
'use_charnames_in_special' directive. This way, the 'html' and
'xhtml' output devices can straightforwardly embed these basic Latin
characters in device control escapes (notably, "html:", for which the
present convention is to follow the this tag immediately with a
literal HTML URI, complete with `<a href>` element syntax). If the
special character is none of these and we should
'use_charnames_in_special', proceed as groff 1.22.4 and earlier did.
This is a behavior change, as was my addition of this translation
mechanism in the first place, so...
* doc/groff.texi (Postprocessor Access): Document it.
* src/roff/groff/tests/device_control_escapes_express_basic_latin.sh:
Test it.
* src/roff/groff/groff.am (groff_TESTS): Run test.
Fixes <https://savannah.gnu.org/bugs/?61401>.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?61401>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/