Index: tests/io/.expect/manipulatorsInput.arm64.txt
===================================================================
--- tests/io/.expect/manipulatorsInput.arm64.txt	(revision 6a1f553a360e410cdd669481c70d508194d900e1)
+++ tests/io/.expect/manipulatorsInput.arm64.txt	(revision f0c9c9b16cd1d7a36d8412b7e46a990e61d51543)
@@ -20,4 +20,12 @@
 14 rc=1, cccc
 15 rc=0, q
+16 get this line
+17 @# this line 1)-{}
+18 abc
+19 abc  
+20  d d
+
+d 
+21 		ZC44%
 1 yyyyyyyyyyyyyyyyyyyy
 2 abcxxx
@@ -35,4 +43,12 @@
 14 cccc
 15
+16 get this line
+17 @# this line 1)-{}
+18 abc
+19 abc  
+20 d d
+
+d 
+21		ZC44%
 a
 a
Index: tests/io/.expect/manipulatorsInput.x64.txt
===================================================================
--- tests/io/.expect/manipulatorsInput.x64.txt	(revision 6a1f553a360e410cdd669481c70d508194d900e1)
+++ tests/io/.expect/manipulatorsInput.x64.txt	(revision f0c9c9b16cd1d7a36d8412b7e46a990e61d51543)
@@ -20,4 +20,12 @@
 14 rc=1, cccc
 15 rc=0, q
+16 get this line
+17 @# this line 1)-{}
+18 abc
+19 abc  
+20  d d
+
+d 
+21 		ZC44%
 1 yyyyyyyyyyyyyyyyyyyy
 2 abcxxx
@@ -35,4 +43,12 @@
 14 cccc
 15
+16 get this line
+17 @# this line 1)-{}
+18 abc
+19 abc  
+20 d d
+
+d 
+21		ZC44%
 a
 a
Index: tests/io/.expect/manipulatorsInput.x86.txt
===================================================================
--- tests/io/.expect/manipulatorsInput.x86.txt	(revision 6a1f553a360e410cdd669481c70d508194d900e1)
+++ tests/io/.expect/manipulatorsInput.x86.txt	(revision f0c9c9b16cd1d7a36d8412b7e46a990e61d51543)
@@ -20,4 +20,12 @@
 14 rc=1, cccc
 15 rc=0, q
+16 get this line
+17 @# this line 1)-{}
+18 abc
+19 abc  
+20  d d
+
+d 
+21 		ZC44%
 1 yyyyyyyyyyyyyyyyyyyy
 2 abcxxx
@@ -35,4 +43,12 @@
 14 cccc
 15
+16 get this line
+17 @# this line 1)-{}
+18 abc
+19 abc  
+20 d d
+
+d 
+21		ZC44%
 a
 a
Index: tests/io/.in/manipulatorsInput.txt
===================================================================
--- tests/io/.in/manipulatorsInput.txt	(revision 6a1f553a360e410cdd669481c70d508194d900e1)
+++ tests/io/.in/manipulatorsInput.txt	(revision f0c9c9b16cd1d7a36d8412b7e46a990e61d51543)
@@ -10,4 +10,12 @@
 aaaaaaaaxxxxxxxxaabbccbbdddwwwbbbbbbbbwwwwwwwwaaaaaaaawwwwwwww
 uuuuuccccuuuuu
+get this line
+@# this line 1)-{}%
+"abc"
+'abc  '
+{ d d
+
+d }
+X		ZC44%Y
 abc 
 cccccb 
@@ -17,4 +25,12 @@
 aaaaaaaaxxxxxxxxaabbccbbdddwwwbbbbbbbbwwwwwwwwaaaaaaaawwwwwwww
 uuuuuccccuuuuu
+get this line
+@# this line 1)-{}%
+"abc"
+'abc  '
+{ d d
+
+d }
+X		ZC44%Y
 ab
 0xff 017 15-15
Index: tests/io/manipulatorsInput.cfa
===================================================================
--- tests/io/manipulatorsInput.cfa	(revision 6a1f553a360e410cdd669481c70d508194d900e1)
+++ tests/io/manipulatorsInput.cfa	(revision f0c9c9b16cd1d7a36d8412b7e46a990e61d51543)
@@ -7,6 +7,6 @@
 // Created On       : Sat Jun  8 17:58:54 2019
 // Last Modified By : Peter A. Buhr
-// Last Modified On : Sat Sep  2 14:27:46 2023
-// Update Count     : 65
+// Last Modified On : Wed Jan  3 11:15:04 2024
+// Update Count     : 103
 // 
 
@@ -77,6 +77,17 @@
 		s[0] = 'q'; s[1] = '\0'; rc = 99;
 		rc = scanf( "%[^u]", s );						printf( "15 rc=%d, %s\n", rc, s );
-		scanf( "%*[u]" );
-		scanf("\n");
+		scanf( "%*[u]\n" );
+		scanf( "%[^\n]\n", s );							printf( "16 %s\n", s );
+		scanf( "%[^%%]%%\n", s );						printf( "17 %s\n", s );
+
+		scanf( "%*[ \f\n\r\t\v]" );						// ignore whitespace
+		scanf( "\"%[^\"]\"", s );						printf( "18 %s\n", s );
+		scanf( "%*[ \f\n\r\t\v]" );						// ignore whitespace
+		scanf( "'%[^']'", s );							printf( "19 %s\n", s );
+		scanf( "%*[ \f\n\r\t\v]" );						// ignore whitespace
+		scanf( "{%[^}]}", s );							printf( "20 %s\n", s );
+		scanf( "%*[ \f\n\r\t\v]" );						// ignore whitespace
+		scanf( "X%[^Y]Y", s );							printf( "21 %s\n", s );
+		scanf( "\n" );									// must start next line
 	}
 	{
@@ -102,8 +113,14 @@
 		s[0] = 'q'; s[1] = '\0';
 		sin | excl( "u", wdi( sizeof(s), s ) );			sout | "15" | s;
-		sin | skip( "u" );
-		sin | "\n";
-	}
-    /* Keep harmonized with collections/string-istream-manip */
+		sin | skip( "u" ) | "\n";
+		sin | getline( wdi( sizeof(s), s ) );			sout | "16" | s;
+		sin | getline( wdi( sizeof(s), s ), '%' ) | "\n"; sout | "17" | s;
+
+		sin | quoted( wdi( sizeof(s), s ) );			sout | "18" | s;
+		sin | quoted( wdi( sizeof(s), s ), '\'' );		sout | "19" | s;
+		sin | quoted( wdi( sizeof(s), s ), '{', '}' );	sout | "20" | s;
+		sin | quoted( wdi( sizeof(s), s ), 'X', 'Y' );	sout | "21" | s;
+	}
+    // Keep harmonized with collections/string-istream-manip
 	{
 		char c;
