screen-devel
[Top][All Lists]
Advanced

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

[screen-devel] [bug #57219] Manual's Texinfo macro "@value{esc}" mis-ren


From: Nutchanon Wetchasit
Subject: [screen-devel] [bug #57219] Manual's Texinfo macro "@value{esc}" mis-rendered as "{No value for `esc'}" in non-Info media
Date: Wed, 13 Nov 2019 06:11:10 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Linux i686; rv:25.8) Gecko/20151123 Firefox/31.9 PaleMoon/25.8.1

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/




reply via email to

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