bugThe GNU Hurd - Bugs: bug #48464, term in IUCLC aka ILCASE mode does...


bug #48464: term in IUCLC aka ILCASE mode does not treat backslash as escape

Submitter:  Kalle Olavi Niemitalo <kon>
Submitted:  Mon 11 Jul 2016 11:37:52 AM UTC
Category:  Hurd Servers Severity:  3 - Normal
Priority:  5 - Normal Item Group:  Hardware Support
Status:  None Privacy:  Public
Assigned to:  None Originator Name: 
Open/Closed:  Open Reproducibility:  Every Time
Size (loc):  None Planned Release:  None
Effort:  0.00
Wiki-like text discussion box: 

* Mandatory Fields

Add a New Comment Rich Markup

Mon 11 Jul 2016 11:42:34 PM UTC, comment #1: 

OpenBSD implements IUCLC:

It also has a backslash-escape mechanism: its TS_BKSL is similar to the Hurd's LAST_SLASH.  However, that code is only active if the ICANON and XCASE local modes and the IUCLC input mode are all set.  It also makes some other substitutions, for the sake of terminals that do not support e.g. pipe characters.  It does not seem to echo the backslash that causes the TS_BKSL flag to be set.

<termios.h> on GNU/Hurd does not define XCASE.

Kalle Olavi Niemitalo <kon>
Mon 11 Jul 2016 11:37:52 AM UTC, original submission:  

If the IUCLC (also known as ILCASE) input mode is enabled and an upper-case letter comes from the terminal, then the term translator replaces it with the lower-case equivalent.  I believe this is intended to let the user type lower-case characters even on terminals that support only upper case.

The term translator also supports the LAST_SLASH flag to temporarily suspend this translation.  It however never sets that flag.  A comment in term/term.h says LAST_SLASH means the last input character was a backslash.  In term/munge.c (input_character), the part that checks the LAST_SLASH seems to assume that the backslash was also stored to the rawq, and erases it from there.  I don't know whether the backslash was also supposed to be echoed back to the terminal.

The symbol IUCLC was removed in Open Group Base Specifications Issue 6.  NetBSD and Linux do not implement it.  The GNU C Library manual does not document it.  Upper-case-only terminals are not common nowadays.  I suggest removing this feature from the Hurd.

Kalle Olavi Niemitalo <kon>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by kon (Submitted the item)

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.


    No changes have been made to this item

    Back to the top

    Powered by Savane 3.12.
    Corresponding source code