diff --git a/src/cmd/ksh93/tests/pty.sh b/src/cmd/ksh93/tests/pty.sh index 8221158df..bed9564ef 100755 --- a/src/cmd/ksh93/tests/pty.sh +++ b/src/cmd/ksh93/tests/pty.sh @@ -453,7 +453,6 @@ w fg u yes-yes ! -# ====== # err_exit # # Test file name completion in vi mode mkdir /tmp/fakehome @@ -477,6 +476,8 @@ L raw Bourne mode literal tab characters with wide characters disabled # This gets handled by ed_read() in edit.c; it does not expand tab # characters on the command line. +d 10 +p :test-1: w set +o vi +o emacs p :test-2: w true /de\tv/nu\tl\tl @@ -491,21 +492,17 @@ L raw Bourne mode literal tab characters with wide characters enabled # This gets handled by ed_viread() in vi.c (even though vi mode is off); # it expands tab characters to spaces on the command line. +d 10 +p :test-1: w set +o vi +o emacs p :test-2: w true /de\tv/nu\tl\tl - -# TODO: there is some race condition in either pty or in ksh's default edit -# mode, which causes it to expect/generate either tabs ('\t') or expanded -# spaces, randomly, intermittently. This is functionally equivalent as it -# only affects either pty or (invisibly) the editing command line, so not a -# high priority. Until this is tracked down and fixed, accept both. - -r ^:test-2: true (/de\tv/nu\tl\tl|/de v/nu l l)\r\n$ +r ^:test-2: true /de v/nu l l\r\n$ p :test-3: ! -LC_ALL=C.UTF8 tst $LINENO <<"!" +# err_exit # +LC_ALL=C.UTF-8 tst $LINENO <<"!" L raw Bourne mode backslash handling # The escaping backslash feature should be disabled in the raw Bourne mode. @@ -522,6 +519,8 @@ w true incorrect\\\cXtrue correct r ^:test-3: true correct\r\n$ ! +# err_exit # +# err_exit # for mode in emacs vi; do tst $LINENO << ! L escaping backslashes in $mode mode