URL: <https://savannah.gnu.org/bugs/?57219>
Summary: Manual's Texinfo macro "@value{esc}" mis-rendered as "{No value for `esc'}" in non-Info media Project: GNU Screen Submitted by: nachanon Submitted on: Wed 13 Nov 2019 06:11:06 PM +07 Category: Documentation Severity: 3 - Normal Priority: 5 - Normal Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any Release: Cur Dev Sources Fixed Release: None Planned Release: None Work Required: None _______________________________________________________ Details: I was browsing GNU Screen manual (gnu.org HTML version) on the topic of window title (section 10.1.3), and I encountered something that *looked like document rendering errors <http://www.gnu.org/software/screen/manual/html_node/Title-Prompts.html#Title-Prompts>* on code sample and its description: set prompt='{No value for `esc'}[0000m{No value for `esc'}k{No value for `esc'}\% ' The escape-sequence `{No value for `esc'}[0000m' not only normalizes the character attributes, but all the zeros round the length of the invisible characters up to 8. * As you could see, the parts which say *{No value for `esc'}* are definitely not a correct escape sequence. This rendered the code sample useless. The passage corresponds to line 2488 in Screen 4.7.0's Texinfo source code <http://git.savannah.gnu.org/cgit/screen.git/tree/src/doc/screen.texinfo?h=v.4.7.0#n2488>: @example set prompt='@value{esc}[0000m@value{esc}k@value{esc}\% ' @end example The escape-sequence @samp{@value{esc}[0000m} not only normalizes the character attributes, but all the zeros round the length of the invisible characters up to 8. WWW search engines (DuckDuckGo <https://duckduckgo.com/html/?q=%22No%20value%20for%22%20site:www.gnu.org/software/screen/manual/html_node/>/Google <https://www.google.com/search?q=%22No+value+for%22+site:www.gnu.org/software/screen/manual/html_node/>) also revealed that *section 17.1 <http://www.gnu.org/software/screen/manual/html_node/Privacy-Message.html#Privacy-Message> is affected by the same error*: echo "{No value for `esc'}^Hello world from window $WINDOW{No value for `esc'}\" where `{No value for `esc'}' is ASCII ESC and the `^' that follows it is a literal caret or up-arrow. This passage corresponds to line 4920 in Screen 4.7.0's Texinfo source code <http://git.savannah.gnu.org/cgit/screen.git/tree/src/doc/screen.texinfo?h=v.4.7.0#n4920>: @example echo "@value{esc}^Hello world from window $WINDOW@value{esc}\" @end example where @samp{@value{esc}} is ASCII ESC and the @samp{^} that follows it is a literal caret or up-arrow. The offending `esc` macro itself seems to be defined around line 17 of Screen 4.7.0's Texinfo source code <http://git.savannah.gnu.org/cgit/screen.git/tree/src/doc/screen.texinfo?h=v.4.7.0#n17> as following: @c For examples, use a literal escape in info. @ifinfo @set esc ^[ @end ifinfo @iftex @set esc <ESC> @end iftex I am knowledgeable in neither TeX nor GNU Texinfo; so I cannot follow further on how exactly this macro got defined or mis-defined in each kind of target media; *especially HTML, DocBook, Texinfo XML, or plain text*, in contrast to TeX and GNU Info. However, downloading the 4.7.0's `screen.texinfo` source code <http://git.savannah.gnu.org/cgit/screen.git/plain/src/doc/screen.texinfo?h=v.4.7.0>, and running `makeinfo` for various output formats revealed the list of formats affected by this problem: * GNU Info: not affected * Plain text: not affected * HTML: *affected* * DocBook: *affected* * Texinfo XML: *affected* The result pretty much pointed back to the conditionals used in this offending `esc` macro definition. Please investigate and fix. Makeinfo: GNU Texinfo 4.13 System: Debian GNU/Linux 7.0 "Wheezy" i386 P.S. I have yet to perform a Git bisect test to see when exactly the problem started; but I'm quite sure that even a really old version like db59704 Git snapshot from March 2012 <http://git.savannah.gnu.org/cgit/screen.git/tree/src/doc/screen.texinfo?h=db59704#n16> (used in Debian 7.0) is also affected by this problem, as evident on GNU website at the time: * http://web.archive.org/web/20121226203910/http://www.gnu.org/software/screen/manual/html_node/Title-Prompts.html#Title-Prompts * http://web.archive.org/web/20121226203207/http://www.gnu.org/software/screen/manual/html_node/Privacy-Message.html#Privacy-Message _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?57219> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/