1
0
mirror of git://git.sv.gnu.org/coreutils.git synced 2026-08-02 05:52:36 +02:00

stty: document the 'discard' character setting

The equivalent of this is 'flush', but that was never documented
as an option (though was output with stty -a).  Therefore use
the more descriptive name, also generally used on BSD systems.
Note even though this setting seems ineffective on Linux, supporting
the setting is useful to allow terminal programs to receive
the default ^O character code.

* doc/coreutils.texi (stty invocation): Document the 'discard' option.
* src/stty.c (struct control_info): Add 'discard'; same as 'flush'.
(display_all): Show 'discard' rather than 'flush' char.
(display_changed): Likewise.
(usage): Document the 'discard' option.
This commit is contained in:
Pádraig Brady
2015-01-23 00:43:58 +00:00
parent ed38d9d1ce
commit 81e5b59d8c
2 changed files with 23 additions and 1 deletions
+5
View File
@@ -14438,6 +14438,11 @@ End the line.
@opindex eol2
Alternate character to end the line. Non-POSIX.
@item discard
@opindex discard
@opindex flush
Alternate character to toggle discarding of output. Non-POSIX.
@item swtch
@opindex swtch
Switch to a different shell layer. Non-POSIX.
+18 -1
View File
@@ -417,7 +417,8 @@ static struct control_info const control_info[] =
{"lnext", CLNEXT, VLNEXT},
#endif
#ifdef VFLUSHO
{"flush", CFLUSHO, VFLUSHO},
{"flush", CFLUSHO, VFLUSHO}, /* deprecated compat option. */
{"discard", CFLUSHO, VFLUSHO},
#endif
#ifdef VSTATUS
{"status", CSTATUS, VSTATUS},
@@ -544,6 +545,11 @@ settings. The underlying system defines which settings are available.\n\
fputs (_("\
\n\
Special characters:\n"), stdout);
#ifdef VFLUSHO
fputs (_("\
* discard CHAR CHAR will toggle discarding of output\n\
"), stdout);
#endif
#ifdef VDSUSP
fputs (_("\
* dsusp CHAR CHAR will send a terminal stop signal once input flushed\n\
@@ -1697,6 +1703,12 @@ display_changed (struct termios *mode)
{
if (mode->c_cc[control_info[i].offset] == control_info[i].saneval)
continue;
#ifdef VFLUSHO
/* 'flush' is the deprecated equivalent of 'discard'. */
if (STREQ (control_info[i].name, "flush"))
continue;
#endif
/* If swtch is the same as susp, don't print both. */
#if VSWTCH == VSUSP
if (STREQ (control_info[i].name, "swtch"))
@@ -1787,6 +1799,11 @@ display_all (struct termios *mode, char const *device_name)
for (i = 0; ! STREQ (control_info[i].name, "min"); ++i)
{
#ifdef VFLUSHO
/* 'flush' is the deprecated equivalent of 'discard'. */
if (STREQ (control_info[i].name, "flush"))
continue;
#endif
/* If swtch is the same as susp, don't print both. */
#if VSWTCH == VSUSP
if (STREQ (control_info[i].name, "swtch"))