Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F109972984
D42066.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
2 KB
Referenced Files
None
Subscribers
None
D42066.diff
View Options
diff --git a/bin/stty/modes.c b/bin/stty/modes.c
--- a/bin/stty/modes.c
+++ b/bin/stty/modes.c
@@ -126,6 +126,8 @@
{ "-decctlq", IXANY, 0 },
{ "imaxbel", IMAXBEL, 0 },
{ "-imaxbel", 0, IMAXBEL },
+ { "iutf8", IUTF8, 0 },
+ { "-iutf8", 0, IUTF8 },
{ NULL, 0, 0 },
};
diff --git a/bin/stty/print.c b/bin/stty/print.c
--- a/bin/stty/print.c
+++ b/bin/stty/print.c
@@ -127,6 +127,7 @@
put("-inpck", INPCK, 0);
put("-ignpar", IGNPAR, 0);
put("-parmrk", PARMRK, 0);
+ put("-iutf8", IUTF8, 1);
/* output flags */
tmp = tp->c_oflag;
diff --git a/bin/stty/stty.1 b/bin/stty/stty.1
--- a/bin/stty/stty.1
+++ b/bin/stty/stty.1
@@ -224,6 +224,9 @@
.Cm imaxbel
is unset and the input queue is full, the next input character causes
the entire input and output queues to be discarded.
+.It Cm iutf8 Pq Fl iutf8
+Assume that input characters are UTF-8 encoded. Setting this flag
+causes backspace to properly delete multibyte characters in canonical mode.
.El
.Ss Output Modes:
This corresponds to the c_oflag of the termios structure.
diff --git a/share/man/man4/termios.4 b/share/man/man4/termios.4
--- a/share/man/man4/termios.4
+++ b/share/man/man4/termios.4
@@ -884,6 +884,8 @@
/* any char will restart after stop */
.It Dv IMAXBEL
/* ring bell on input queue full */
+.It Dv IUTF8
+/* assume input is UTF-8 encoded */
.El
.Pp
In the context of asynchronous serial data transmission, a break
diff --git a/sys/kern/tty.c b/sys/kern/tty.c
--- a/sys/kern/tty.c
+++ b/sys/kern/tty.c
@@ -85,8 +85,8 @@
/*
* Flags that are supported and stored by this implementation.
*/
-#define TTYSUP_IFLAG (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK|ISTRIP|\
- INLCR|IGNCR|ICRNL|IXON|IXOFF|IXANY|IMAXBEL)
+#define TTYSUP_IFLAG (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK|ISTRIP|INLCR|\
+ IGNCR|ICRNL|IXON|IXOFF|IXANY|IMAXBEL|IUTF8)
#define TTYSUP_OFLAG (OPOST|ONLCR|TAB3|ONOEOT|OCRNL|ONOCR|ONLRET)
#define TTYSUP_LFLAG (ECHOKE|ECHOE|ECHOK|ECHO|ECHONL|ECHOPRT|\
ECHOCTL|ISIG|ICANON|ALTWERASE|IEXTEN|TOSTOP|\
diff --git a/sys/sys/_termios.h b/sys/sys/_termios.h
--- a/sys/sys/_termios.h
+++ b/sys/sys/_termios.h
@@ -97,6 +97,7 @@
#endif
#if __BSD_VISIBLE
#define IMAXBEL 0x00002000 /* ring bell on input queue full */
+#define IUTF8 0x00004000 /* assume input is utf-8 encoded */
#endif
/*
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Wed, Feb 12, 10:32 PM (10 h, 49 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16618182
Default Alt Text
D42066.diff (2 KB)
Attached To
Mode
D42066: (s)tty: add support for IUTF8 input flag
Attached
Detach File
Event Timeline
Log In to Comment