aboutsummaryrefslogtreecommitdiff
path: root/packages/ncurses/6.5/ncurses-6.5-20240922.patch
blob: 14aa07cf599c7aa30809ca5a020b532e172e5bd9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
# ncurses 6.5 - patch 20240922 - Thomas E. Dickey
#
# ------------------------------------------------------------------------------
#
# Ncurses 6.5 is at
#   https://invisible-island.net/archives/ncurses/
#   https://invisible-mirror.net/archives/ncurses/
#   https://ftp.gnu.org/gnu/ncurses/
#
# Patches for ncurses 6.5 can be found at
#   https://invisible-island.net/archives/ncurses/6.5
#   https://invisible-mirror.net/archives/ncurses/6.5
#
# ------------------------------------------------------------------------------
# https://invisible-island.net/archives/ncurses/6.5/ncurses-6.5-20240922.patch.gz
# patch by Thomas E. Dickey <dickey@invisible-island.net>
# created  Sun Sep 22 23:25:11 UTC 2024
# ------------------------------------------------------------------------------
# NEWS                                |   16 +
# VERSION                             |    2 
# dist.mk                             |    4 
# doc/html/man/curs_addch.3x.html     |  133 +++++------
# doc/html/man/curs_attr.3x.html      |   14 -
# doc/html/man/curs_bkgd.3x.html      |   89 +++----
# doc/html/man/curs_bkgrnd.3x.html    |   71 +++--
# doc/html/man/curs_delch.3x.html     |   16 -
# doc/html/man/curs_deleteln.3x.html  |   31 +-
# doc/html/man/curs_initscr.3x.html   |  166 +++++++------
# doc/html/man/curs_inopts.3x.html    |   10 
# doc/html/man/curs_kernel.3x.html    |   12 -
# doc/html/man/curs_move.3x.html      |   10 
# doc/html/man/curs_scr_dump.3x.html  |   25 +-
# doc/html/man/curs_scroll.3x.html    |   22 -
# doc/html/man/curs_termcap.3x.html   |   75 +++---
# doc/html/man/curs_util.3x.html      |   12 -
# doc/html/man/curs_variables.3x.html |   10 
# doc/html/man/infocmp.1m.html        |   57 ++--
# doc/html/man/ncurses.3x.html        |   36 +--
# doc/html/man/tabs.1.html            |   20 -
# doc/html/man/terminfo.5.html        |    4 
# doc/html/man/wresize.3x.html        |   33 +-
# man/curs_addch.3x                   |    9 
# man/curs_attr.3x                    |    6 
# man/curs_bkgd.3x                    |   53 ++--
# man/curs_bkgrnd.3x                  |   50 ++--
# man/curs_delch.3x                   |    6 
# man/curs_deleteln.3x                |   15 -
# man/curs_initscr.3x                 |  406 +++++++++++++++++++++++-----------
# man/curs_inopts.3x                  |    6 
# man/curs_kernel.3x                  |    8 
# man/curs_move.3x                    |   10 
# man/curs_scr_dump.3x                |   22 +
# man/curs_scroll.3x                  |    8 
# man/curs_termcap.3x                 |   15 -
# man/curs_util.3x                    |    6 
# man/curs_variables.3x               |    6 
# man/infocmp.1m                      |   89 ++++---
# man/ncurses.3x                      |   20 -
# man/tabs.1                          |   21 -
# man/terminfo.tail                   |    6 
# man/wresize.3x                      |   11 
# misc/ncurses-config.in              |   25 --
# ncurses/base/MKlib_gen.sh           |   50 +++-
# ncurses/base/lib_refresh.c          |    8 
# ncurses/base/lib_screen.c           |   31 +-
# ncurses/base/resizeterm.c           |   15 -
# ncurses/tinfo/access.c              |   39 +++
# ncurses/wcwidth.h                   |    3 
# package/debian-mingw/changelog      |    4 
# package/debian-mingw64/changelog    |    4 
# package/debian/changelog            |    4 
# package/mingw-ncurses.nsi           |    4 
# package/mingw-ncurses.spec          |    2 
# package/ncurses.spec                |    2 
# package/ncursest.spec               |    2 
# test/back_ground.c                  |   26 +-
# test/background.c                   |   38 ++-
# 59 files changed, 1126 insertions(+), 772 deletions(-)
# ------------------------------------------------------------------------------
Index: NEWS
Prereq:  1.4175 
--- ncurses-6.5-20240914+/NEWS	2024-09-14 23:14:09.000000000 +0000
+++ ncurses-6.5-20240922/NEWS	2024-09-22 20:50:07.000000000 +0000
@@ -26,7 +26,7 @@
 -- sale, use or other dealings in this Software without prior written        --
 -- authorization.                                                            --
 -------------------------------------------------------------------------------
--- $Id: NEWS,v 1.4175 2024/09/14 23:14:09 tom Exp $
+-- $Id: NEWS,v 1.4182 2024/09/22 20:50:07 tom Exp $
 -------------------------------------------------------------------------------
 
 This is a log of changes that ncurses has gone through since Zeyd started
@@ -46,6 +46,20 @@
 Changes through 1.9.9e did not credit all contributions;
 it is not possible to add this information.
 
+20240922
+	+ add a few null-pointer checks in ncurses
+	+ improve test-driver in ncurses/link_test.c
+	+ restore background character in manpages as described in X/Open
+	  Curses section 3.3.6, and add option "-c" to test programs to
+	  illustrate a non-blank character in the window background property.
+	+ improve formatting/style of manpages (patches by Branden Robinson).
+	+ modify ncurses*-config to add -I option in --cflag where needed for
+	  --disable-overwrite to match ".pc" files.
+	+ disallow directories and block/character devices in safe-open.
+	+ amend scr_restore() and scr_init() to remove the target window only
+	  after validating the source window which will replace the target
+	  (report by Zixi Liu).
+
 20240914
 	+ modify _nc_flush() to also flush stderr to help the flash capability
 	  to work in bash (patch by Harm te Hennepe, cf: 20201128)
Index: VERSION
--- ncurses-6.5-20240914+/VERSION	2024-09-14 12:14:00.000000000 +0000
+++ ncurses-6.5-20240922/VERSION	2024-09-22 18:38:38.000000000 +0000
@@ -1 +1 @@
-5:0:10	6.5	20240914
+5:0:10	6.5	20240922
Index: dist.mk
Prereq:  1.1631 
--- ncurses-6.5-20240914+/dist.mk	2024-09-14 12:14:00.000000000 +0000
+++ ncurses-6.5-20240922/dist.mk	2024-09-22 18:38:38.000000000 +0000
@@ -26,7 +26,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: dist.mk,v 1.1631 2024/09/14 12:14:00 tom Exp $
+# $Id: dist.mk,v 1.1633 2024/09/22 18:38:38 tom Exp $
 # Makefile for creating ncurses distributions.
 #
 # This only needs to be used directly as a makefile by developers, but
@@ -38,7 +38,7 @@
 # These define the major/minor/patch versions of ncurses.
 NCURSES_MAJOR = 6
 NCURSES_MINOR = 5
-NCURSES_PATCH = 20240914
+NCURSES_PATCH = 20240922
 
 # We don't append the patch to the version, since this only applies to releases
 VERSION = $(NCURSES_MAJOR).$(NCURSES_MINOR)
Index: doc/html/man/curs_addch.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_addch.3x.html	2024-07-27 23:11:31.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_addch.3x.html	2024-09-21 18:35:26.000000000 +0000
@@ -28,19 +28,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_addch.3x,v 1.98 2024/07/27 20:08:58 tom Exp @
+  * @Id: curs_addch.3x,v 1.100 2024/09/21 18:03:23 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_addch 3x 2024-07-27 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_addch 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_addch 3x 2024-07-27 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_addch 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
 
@@ -110,22 +110,23 @@
 
 </PRE><H3><a name="h3-wechochar">wechochar</a></H3><PRE>
        <STRONG>echochar</STRONG> and <STRONG>wechochar</STRONG> are equivalent to calling (<STRONG>w</STRONG>)<STRONG>addch</STRONG>  followed  by
-       (<STRONG>w</STRONG>)<STRONG>refresh</STRONG>.   <EM>curses</EM>  interprets  these functions as a hint that only a
-       single  character  is  being  output;  for  non-control  characters,  a
-       considerable performance gain may be enjoyed by employing them.
+       (<STRONG>w</STRONG>)<STRONG>refresh</STRONG>.   <EM>curses</EM>  interprets  these  functions  as  a  hint  to its
+       optimizer that only a single character cell  in  the  window  is  being
+       altered  between  refreshes; for non-control characters, a considerable
+       performance gain may be enjoyed by employing them.
 
 
 </PRE><H3><a name="h3-Forms-Drawing-Characters">Forms-Drawing Characters</a></H3><PRE>
-       <EM>curses</EM>  defines  macros starting with <STRONG>ACS_</STRONG> that can be used with <STRONG>waddch</STRONG>
-       to write line-drawing and  other  special  characters  to  the  screen.
-       <EM>ncurses</EM>  terms  these <EM>forms-drawing</EM> <EM>characters.</EM>  The ACS default listed
-       below is used if the <STRONG>acs_chars</STRONG>  (<STRONG>acsc</STRONG>)  <EM>terminfo</EM>  capability  does  not
-       define  a  terminal-specific replacement for it, or if the terminal and
-       locale configuration requires Unicode to access  these  characters  but
+       <EM>curses</EM> defines macros starting with <STRONG>ACS_</STRONG> that can be used  with  <STRONG>waddch</STRONG>
+       to  write  line-drawing  and  other  special  characters to the screen.
+       <EM>ncurses</EM> terms these <EM>forms-drawing</EM> <EM>characters.</EM>  The ACS  default  listed
+       below  is  used  if  the  <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>) <EM>terminfo</EM> capability does not
+       define a terminal-specific replacement for it, or if the  terminal  and
+       locale  configuration  requires  Unicode to access these characters but
        the  library  is  unable  to  use  Unicode.   The  "acsc  char"  column
        corresponds to how the characters are specified in the <STRONG>acs_chars</STRONG> (<STRONG>acsc</STRONG>)
        string capability, and the characters in it may appear on the screen if
-       the terminal type's database entry incorrectly advertises ACS  support.
+       the  terminal type's database entry incorrectly advertises ACS support.
        The name "ACS" originates in the Alternate Character Set feature of the
        DEC VT100 terminal.
 
@@ -173,24 +174,24 @@
 
        <STRONG>o</STRONG>   <EM>win</EM> is <STRONG>NULL</STRONG>,
 
-       <STRONG>o</STRONG>   wrapping to a new line is impossible because <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG>  has  not
-           been  called  on  <EM>win</EM>  when a write to its bottom right location is
+       <STRONG>o</STRONG>   wrapping  to  a new line is impossible because <STRONG><A HREF="scrollok.3x.html">scrollok(3x)</A></STRONG> has not
+           been called on <EM>win</EM> when a write to its  bottom  right  location  is
            attempted, or
 
-       <STRONG>o</STRONG>   it is not possible to  add  a  complete  character  at  the  cursor
+       <STRONG>o</STRONG>   it  is  not  possible  to  add  a  complete character at the cursor
            position.
 
        The last may be due to different causes:
 
-       <STRONG>o</STRONG>   conversion  of  a  wide character to a multibyte character sequence
+       <STRONG>o</STRONG>   conversion of a wide character to a  multibyte  character  sequence
            can fail, or
 
-       <STRONG>o</STRONG>   at least one of the bytes resulting from wide character  conversion
-           to  a  multibyte  character sequence cannot be added to the window.
-           See section "PORTABILITY" below regarding the use  of  <STRONG>waddch</STRONG>  with
+       <STRONG>o</STRONG>   at  least one of the bytes resulting from wide character conversion
+           to a multibyte character sequence cannot be added  to  the  window.
+           See  section  "PORTABILITY"  below regarding the use of <STRONG>waddch</STRONG> with
            wide characters.
 
-       Functions  prefixed with "mv" first perform cursor movement and fail if
+       Functions prefixed with "mv" first perform cursor movement and fail  if
        the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
 
 
@@ -201,7 +202,7 @@
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
 
 </PRE><H3><a name="h3-TABSIZE">TABSIZE</a></H3><PRE>
-       SVr4 and other versions of <EM>curses</EM> implement the <STRONG>TABSIZE</STRONG>  variable,  but
+       SVr4  and  other versions of <EM>curses</EM> implement the <STRONG>TABSIZE</STRONG> variable, but
        X/Open Curses does not specify it; see <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>.
 
 
@@ -209,90 +210,90 @@
        Applications employing <EM>ncurses</EM> extensions should condition their use on
        the visibility of the <STRONG>NCURSES_VERSION</STRONG> preprocessor macro.
 
-       X/Open Curses, Issue 4 describes  these  functions.   It  specifies  no
+       X/Open  Curses,  Issue  4  describes  these functions.  It specifies no
        error conditions for them.
 
-       SVr4  <EM>curses</EM>  describes  a  successful return value only as "an integer
+       SVr4 <EM>curses</EM> describes a successful return value  only  as  "an  integer
        value other than <STRONG>ERR</STRONG>".
 
-       The defaults specified for forms-drawing characters apply in the  POSIX
+       The  defaults specified for forms-drawing characters apply in the POSIX
        locale.
 
 
 </PRE><H3><a name="h3-ACS-Symbols">ACS Symbols</a></H3><PRE>
-       X/Open  Curses  states  that  the  <STRONG>ACS_</STRONG> definitions are <EM>char</EM> constants.
+       X/Open Curses states that the  <STRONG>ACS_</STRONG>  definitions  are  <EM>char</EM>  constants.
        Some implementations are problematic.
 
-       <STRONG>o</STRONG>   Solaris <EM>curses</EM>, for example, defines the ACS symbols as  constants;
+       <STRONG>o</STRONG>   Solaris  <EM>curses</EM>, for example, defines the ACS symbols as constants;
            others define them as elements of an array.
 
-           This  implementation  uses  an  array, <STRONG>acs_map</STRONG>, as did SVr4 <EM>curses</EM>.
+           This implementation uses an array, <STRONG>acs_map</STRONG>,  as  did  SVr4  <EM>curses</EM>.
            NetBSD also uses an array, actually named <STRONG>_acs_char</STRONG>, with a <STRONG>#define</STRONG>
            for compatibility.
 
-       <STRONG>o</STRONG>   HP-UX  <EM>curses</EM>  equates  some  of  the <STRONG>ACS_</STRONG> symbols to the analogous
-           <STRONG>WACS_</STRONG> symbols as if the <STRONG>ACS_</STRONG>  symbols  were  wide  characters  (see
-           <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>).   The  misdefined  symbols  are  the  arrows and
+       <STRONG>o</STRONG>   HP-UX <EM>curses</EM> equates some of the  <STRONG>ACS_</STRONG>  symbols  to  the  analogous
+           <STRONG>WACS_</STRONG>  symbols  as  if  the  <STRONG>ACS_</STRONG> symbols were wide characters (see
+           <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>).  The  misdefined  symbols  are  the  arrows  and
            others that are not used for line drawing.
 
-       <STRONG>o</STRONG>   X/Open Curses (Issues 2 through 7) has a  typographical  error  for
-           the  <STRONG>ACS_LANTERN</STRONG>  symbol,  equating  its  "VT100+ Character" to "I"
-           (capital I), while the header  files  for  SVr4  <EM>curses</EM>  and  other
+       <STRONG>o</STRONG>   X/Open  Curses  (Issues  2 through 7) has a typographical error for
+           the <STRONG>ACS_LANTERN</STRONG> symbol, equating  its  "VT100+  Character"  to  "I"
+           (capital  I),  while  the  header  files  for SVr4 <EM>curses</EM> and other
            implementations use "i" (small i).
 
-           None  of  the terminal descriptions on Unix platforms use uppercase
-           I, except  for  Solaris  (in  its  <EM>terminfo</EM>  entry  for  <STRONG>screen(1)</STRONG>,
-           apparently  based on the X/Open documentation around 1995).  On the
-           other hand, its <STRONG>gs6300</STRONG> (AT&amp;T PC6300 with EMOTS  Terminal  Emulator)
+           None of the terminal descriptions on Unix platforms  use  uppercase
+           I,  except  for  Solaris  (in  its  <EM>terminfo</EM>  entry  for <STRONG>screen(1)</STRONG>,
+           apparently based on the X/Open documentation around 1995).  On  the
+           other  hand,  its <STRONG>gs6300</STRONG> (AT&amp;T PC6300 with EMOTS Terminal Emulator)
            description uses lowercase i.
 
-       Some  ACS  symbols  (<STRONG>ACS_S3</STRONG>,  <STRONG>ACS_S7</STRONG>,  <STRONG>ACS_LEQUAL</STRONG>,  <STRONG>ACS_GEQUAL</STRONG>, <STRONG>ACS_PI</STRONG>,
-       <STRONG>ACS_NEQUAL</STRONG>, and <STRONG>ACS_STERLING</STRONG>)  were  not  documented  in  any  publicly
-       released  System V.   However, many publicly available <EM>terminfo</EM> entries
-       include <STRONG>acsc</STRONG> capabilities in which their key characters  (<STRONG>pryz{|}</STRONG>)  are
-       embedded,  and  a  second-hand list of their character descriptions has
-       come to light.  The <EM>ncurses</EM> developers invented ACS-prefixed names  for
+       Some ACS  symbols  (<STRONG>ACS_S3</STRONG>,  <STRONG>ACS_S7</STRONG>,  <STRONG>ACS_LEQUAL</STRONG>,  <STRONG>ACS_GEQUAL</STRONG>,  <STRONG>ACS_PI</STRONG>,
+       <STRONG>ACS_NEQUAL</STRONG>,  and  <STRONG>ACS_STERLING</STRONG>)  were  not  documented  in any publicly
+       released System V.  However, many publicly available  <EM>terminfo</EM>  entries
+       include  <STRONG>acsc</STRONG>  capabilities in which their key characters (<STRONG>pryz{|}</STRONG>) are
+       embedded, and a second-hand list of their  character  descriptions  has
+       come  to light.  The <EM>ncurses</EM> developers invented ACS-prefixed names for
        them.
 
        The <EM>displayed</EM> values of <STRONG>ACS_</STRONG> constants depend on
 
        <STRONG>o</STRONG>   the  <EM>ncurses</EM>  ABI--for  example,  wide-character  versus  non-wide-
-           character configurations  (the  former  is  capable  of  displaying
+           character  configurations  (the  former  is  capable  of displaying
            Unicode while the latter is not), and
 
        <STRONG>o</STRONG>   whether the locale uses UTF-8 encoding.
 
-       In  certain  cases,  the  terminal  is  unable to display forms-drawing
-       characters  <EM>except</EM>  by  using  UTF-8;  see  the   discussion   of   the
+       In certain cases, the  terminal  is  unable  to  display  forms-drawing
+       characters   <EM>except</EM>   by   using  UTF-8;  see  the  discussion  of  the
        <EM>NCURSES</EM><STRONG>_</STRONG><EM>NO</EM><STRONG>_</STRONG><EM>UTF8</EM><STRONG>_</STRONG><EM>ACS</EM> environment variable in <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>.
 
 
 </PRE><H3><a name="h3-Character-Set">Character Set</a></H3><PRE>
-       X/Open  Curses  assumes  that the parameter passed to <STRONG>waddch</STRONG> contains a
-       single character.  That character may have been more  than  eight  bits
-       wide  in  an  SVr3 or SVr4 implementation, but X/Open Curses leaves the
-       width of a non-wide character code unspecified.  The  standard  further
-       does  not specify the internal structure of a <EM>chtype</EM>, though the use of
-       bit operations to combine the character  code  with  attributes  and  a
+       X/Open Curses assumes that the parameter passed to  <STRONG>waddch</STRONG>  contains  a
+       single  character.   That  character may have been more than eight bits
+       wide in an SVr3 or SVr4 implementation, but X/Open  Curses  leaves  the
+       width  of  a non-wide character code unspecified.  The standard further
+       does not specify the internal structure of a <EM>chtype</EM>, though the use  of
+       bit  operations  to  combine  the  character code with attributes and a
        color pair identifier into a <EM>chtype</EM> for passage to <STRONG>waddch</STRONG> is common.  A
        portable application uses only the macros discussed in <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG> to
        manipulate a <EM>chtype</EM>.
 
        In <EM>ncurses</EM>, <EM>chtype</EM> holds an eight-bit character, but the library allows
-       a multibyte character sequence to be passed via a succession  of  calls
-       to  <STRONG>waddch</STRONG>.   Other  implementations  do  not;  a <STRONG>waddch</STRONG> call transmits
-       exactly one character, which may be rendered  in  one  or  more  screen
-       locations  depending  on  whether  it  is  printable  (see <STRONG><A HREF="unctrl.3x.html">unctrl(3x)</A></STRONG>).
-       Depending on the locale, <EM>ncurses</EM>  inspects  the  byte  passed  in  each
-       <STRONG>waddch</STRONG>  call  and  checks whether the latest call continues a multibyte
-       character.   When  a  character  is  <EM>complete</EM>,  <EM>ncurses</EM>  displays   the
-       character   and  advances  the  cursor.   If  the  calling  application
+       a  multibyte  character sequence to be passed via a succession of calls
+       to <STRONG>waddch</STRONG>.  Other implementations  do  not;  a  <STRONG>waddch</STRONG>  call  transmits
+       exactly  one  character,  which  may  be rendered in one or more screen
+       locations depending  on  whether  it  is  printable  (see  <STRONG><A HREF="unctrl.3x.html">unctrl(3x)</A></STRONG>).
+       Depending  on  the  locale,  <EM>ncurses</EM>  inspects  the byte passed in each
+       <STRONG>waddch</STRONG> call and checks whether the latest call  continues  a  multibyte
+       character.    When  a  character  is  <EM>complete</EM>,  <EM>ncurses</EM>  displays  the
+       character  and  advances  the  cursor.   If  the  calling   application
        interrupts the succession of bytes in a multibyte character sequence by
-       changing  the  current  location--for  example, with <STRONG><A HREF="curs_move.3x.html">wmove(3x)</A></STRONG>--<EM>ncurses</EM>
+       changing the current  location--for  example,  with  <STRONG><A HREF="curs_move.3x.html">wmove(3x)</A></STRONG>--<EM>ncurses</EM>
        discards the incomplete character.
 
        For  portability  to  other  implementations,  do  not  rely  upon  the
-       foregoing  behavior.  Check whether a character can be represented as a
+       foregoing behavior.  Check whether a character can be represented as  a
        single byte in the current locale.
 
        <STRONG>o</STRONG>   If it can, call either <EM>waddch</EM> or <EM>wadd</EM><STRONG>_</STRONG><EM>wch</EM>.
@@ -307,16 +308,16 @@
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG> describes comparable functions of the <EM>ncurses</EM>  library
+       <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>  describes comparable functions of the <EM>ncurses</EM> library
        in its wide-character configuration (<EM>ncursesw</EM>).
 
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_addchstr.3x.html">curs_addchstr(3x)</A></STRONG>,    <STRONG><A HREF="curs_addstr.3x.html">curs_addstr(3x)</A></STRONG>,    <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>,
-       <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>,  <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>,   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>,   <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
+       <STRONG><A HREF="curs_clear.3x.html">curs_clear(3x)</A></STRONG>,   <STRONG><A HREF="curs_inch.3x.html">curs_inch(3x)</A></STRONG>,   <STRONG><A HREF="curs_outopts.3x.html">curs_outopts(3x)</A></STRONG>,  <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,
        <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>, <STRONG>putchar(3)</STRONG>
 
 
 
-ncurses 6.5                       2024-07-27                    <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                    <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_attr.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_attr.3x.html	2024-07-27 23:11:31.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_attr.3x.html	2024-09-22 18:37:10.000000000 +0000
@@ -28,19 +28,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_attr.3x,v 1.110 2024/07/27 19:57:55 tom Exp @
+  * @Id: curs_attr.3x,v 1.113 2024/09/21 23:39:04 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_attr 3x 2024-07-27 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_attr 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_attr 3x 2024-07-27 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_attr 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 
@@ -406,9 +406,9 @@
        <STRONG>o</STRONG>   pads, soft-keys were added in SVr3, and
 
        Goodheart did not mention the background character or the <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> type.
-       Those are respectively SVr4 and X/Open features.  He did mention the <STRONG>A_</STRONG>
-       constants, but did not indicate their values.  Those were not the  same
-       in different systems, even for those marked as System V.
+       Those  are respectively SVr3.1 and X/Open features.  He did mention the
+       <STRONG>A_</STRONG> constants, but did not indicate their values.  Those  were  not  the
+       same in different systems, even for those marked as System V.
 
        Different  Unix  systems  used  different  sizes  for the bit-fields in
        <EM>chtype</EM> for <EM>characters</EM> and <EM>colors</EM>, and took into account  the  different
@@ -497,7 +497,7 @@
 
 
 
-ncurses 6.5                       2024-07-27                     <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                     <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_bkgd.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_bkgd.3x.html	2024-09-14 20:23:25.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_bkgd.3x.html	2024-09-22 18:37:10.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_bkgd.3x,v 1.63 2024/09/14 20:06:50 tom Exp @
+  * @Id: curs_bkgd.3x,v 1.64 2024/09/22 18:16:03 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_bkgd 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_bkgd 3x 2024-09-22 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_bkgd 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_bkgd 3x 2024-09-22 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
 
@@ -64,20 +64,24 @@
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The  <EM>background</EM>  of  a  <EM>curses</EM>  window  (in  the   library's   non-wide
-       configuration)   is  a  <EM>chtype</EM>  combining  a  set  of  attributes  (see
-       <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>) with a character called the <EM>blank</EM> <EM>character.</EM>
-
-       The blank character is a spacing character that  populates  a  window's
-       character  cells  when  their  contents are erased without replacement.
-       The background's attributes are combined with all non-blank  characters
-       written  to  the window, as with the <STRONG><A HREF="curs_addch.3x.html">waddch(3x)</A></STRONG> and <STRONG><A HREF="curs_insch.3x.html">winsch(3x)</A></STRONG> families
-       of functions.
-
-       The blank character and  attributes  of  the  background  combine  with
-       characters  written  to  the window as described below.  The background
-       becomes a property of the character  and  moves  with  it  through  any
-       scrolling and insert/delete line/character operations.
+       Every <EM>curses</EM> window has a background property.  In the  library's  non-
+       wide  configuration,  this property is a <EM>chtype</EM> which combines a set of
+       attributes with the  <EM>background</EM>  <EM>character</EM>  (see  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>).   The
+       background character is a spacing character.
+
+       When  erasing  parts  of  the  screen,  <EM>curses</EM> fills the cells with the
+       background character.  <EM>curses</EM> also  uses  the  window  background  when
+       writing characters to the screen:
+
+       <STRONG>o</STRONG>   The attribute part of the background is combined with all non-blank
+           characters that are written into the window, as with the <STRONG><A HREF="curs_addch.3x.html">waddch(3x)</A></STRONG>
+           and <STRONG><A HREF="curs_insch.3x.html">winsch(3x)</A></STRONG> families of functions.
+
+       <STRONG>o</STRONG>   Both  the  character  and  attribute  parts  of  the background are
+           combined with blank characters that are written into the window.
+
+       The background becomes a property of the character and  moves  with  it
+       through any scrolling and insert/delete line/character operations.
 
        To  the  extent possible on a given terminal, the attribute part of the
        background is displayed as the graphic rendition of the  character  put
@@ -101,8 +105,8 @@
        blank.
 
        <STRONG>o</STRONG>   <EM>ncurses</EM> first compares  the  cell's  character  to  the  previously
-           specified  blank  character;  if they match, <EM>ncurses</EM> writes the new
-           blank character to the cell.
+           specified  background  character; if they match, <EM>ncurses</EM> writes the
+           new background character to the cell.
 
        <STRONG>o</STRONG>   <EM>ncurses</EM> then checks if the cell uses color, that is, its color pair
            value  is  nonzero.   If not, it simply replaces the attributes and
@@ -121,75 +125,76 @@
            the current background, and then adding  attributes  from  the  new
            background.
 
-       <EM>ncurses</EM>  treats  a  background  character  value of zero (0) as a blank
-       character.
+       If the new background's character is nonspacing, <EM>ncurses</EM> reuses the old
+       background character, except for one special  case:  <EM>ncurses</EM>  treats  a
+       background character value of zero (0) as a space.
 
-       If the terminal does not support  color,  or  if  color  has  not  been
-       initialized  with  <STRONG><A HREF="curs_color.3x.html">start_color(3x)</A></STRONG>,  <EM>ncurses</EM> ignores the new background
+       If  the  terminal  does  not  support  color,  or if color has not been
+       initialized with <STRONG><A HREF="curs_color.3x.html">start_color(3x)</A></STRONG>, <EM>ncurses</EM> ignores  the  new  background
        character's color attribute.
 
 
 </PRE><H3><a name="h3-bkgdset_wbkgdset">bkgdset, wbkgdset</a></H3><PRE>
-       <STRONG>bkgdset</STRONG> and  <STRONG>wbkgdset</STRONG>  manipulate  the  background  of  the  applicable
+       <STRONG>bkgdset</STRONG>  and  <STRONG>wbkgdset</STRONG>  manipulate  the  background  of  the applicable
        window, without updating the character cells as <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> do; only
        future writes reflect the updated background.
 
 
 </PRE><H3><a name="h3-getbkgd">getbkgd</a></H3><PRE>
-       <STRONG>getbkgd</STRONG> obtains the given window's background character  and  attribute
+       <STRONG>getbkgd</STRONG>  obtains  the given window's background character and attribute
        combination.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       Functions  returning  an <EM>int</EM> return <STRONG>OK</STRONG> on success.  <STRONG>bkgd</STRONG> returns <STRONG>ERR</STRONG> if
-       the library has not been initialized.  <STRONG>wbkgd</STRONG> and <STRONG>getbkgd</STRONG> return <STRONG>ERR</STRONG>  if
+       Functions returning an <EM>int</EM> return <STRONG>OK</STRONG> on success.  <STRONG>bkgd</STRONG> returns  <STRONG>ERR</STRONG>  if
+       the  library has not been initialized.  <STRONG>wbkgd</STRONG> and <STRONG>getbkgd</STRONG> return <STRONG>ERR</STRONG> if
        a <EM>WINDOW</EM> pointer argument is null.
 
        <STRONG>bkgdset</STRONG> and <STRONG>wbkgdset</STRONG> do not return a value.
 
-       <STRONG>getbkgd</STRONG>   returns   a   window's  background  character  and  attribute
+       <STRONG>getbkgd</STRONG>  returns  a  window's  background   character   and   attribute
        combination.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       Unusually, there is no <STRONG>wgetbkgd</STRONG> function; <STRONG>getbkgd</STRONG> behaves as one  would
+       Unusually,  there is no <STRONG>wgetbkgd</STRONG> function; <STRONG>getbkgd</STRONG> behaves as one would
        expect <STRONG>wgetbkgd</STRONG> to, accepting a <EM>WINDOW</EM> pointer argument.
 
        <STRONG>bkgd</STRONG> and <STRONG>bkgdset</STRONG> may be implemented as macros.
 
-       X/Open  Curses  mentions that the character part of the background must
-       be a single-byte value.  <EM>ncurses</EM>, like SVr4 <EM>curses</EM>,  checks  to  ensure
+       X/Open Curses mentions that the character part of the  background  must
+       be  a  single-byte  value.  <EM>ncurses</EM>, like SVr4 <EM>curses</EM>, checks to ensure
        that, and will reuse the old background character if the check fails.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       X/Open  Curses,  Issue  4 describes these functions.  It specifies that
-       <STRONG>bkgd</STRONG>, <STRONG>wbkgd</STRONG>, and <STRONG>getbkgd</STRONG> return <STRONG>ERR</STRONG> on failure  (in  the  case  of  the
+       X/Open Curses, Issue 4 describes these functions.   It  specifies  that
+       <STRONG>bkgd</STRONG>,  <STRONG>wbkgd</STRONG>,  and  <STRONG>getbkgd</STRONG>  return  <STRONG>ERR</STRONG> on failure (in the case of the
        last,  this  value  is  cast  to  <EM>chtype</EM>),  but  describes  no  failure
        conditions.
 
-       The SVr4.0 manual says that <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> may return  <STRONG>OK</STRONG>  "or  a  non-
-       negative  integer  if <STRONG>immedok</STRONG> is set", which refers to the return value
-       from <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG>, used to implement the  immediate  repainting.   SVr4
-       <EM>curses</EM>'s  <STRONG>wrefresh</STRONG>  returns  the  number  of  characters written to the
+       The  SVr4.0  manual  says  that <STRONG>bkgd</STRONG> and <STRONG>wbkgd</STRONG> may return <STRONG>OK</STRONG> "or a non-
+       negative integer if <STRONG>immedok</STRONG> is set", which refers to the  return  value
+       from  <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG>,  used  to implement the immediate repainting.  SVr4
+       <EM>curses</EM>'s <STRONG>wrefresh</STRONG> returns the  number  of  characters  written  to  the
        screen during the refresh.  <EM>ncurses</EM> does not do that.
 
-       Neither X/Open  Curses  nor  the  SVr4  manual  pages  detail  how  the
-       rendition  of  characters  on  the  screen  updates  when <STRONG>bkgd</STRONG> or <STRONG>wbkgd</STRONG>
-       changes the background character.  <EM>ncurses</EM>, like SVr4 <EM>curses</EM>, does  not
+       Neither  X/Open  Curses  nor  the  SVr4  manual  pages  detail  how the
+       rendition of characters on  the  screen  updates  when  <STRONG>bkgd</STRONG>  or  <STRONG>wbkgd</STRONG>
+       changes  the background character.  <EM>ncurses</EM>, like SVr4 <EM>curses</EM>, does not
        (in  its  non-wide  configuration)  store  the  background  and  window
        attribute contributions to each character cell separately.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG> describes  the  corresponding  functions  in  the  wide
+       <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>  describes  the  corresponding  functions  in  the wide
        configuration of <EM>ncurses</EM>.
 
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_addch.3x.html">curs_addch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 
 
 
-ncurses 6.5                       2024-09-14                     <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
+ncurses 6.5                       2024-09-22                     <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_bkgrnd.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_bkgrnd.3x.html	2024-09-14 20:23:25.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_bkgrnd.3x.html	2024-09-22 18:37:10.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_bkgrnd.3x,v 1.44 2024/09/14 20:06:50 tom Exp @
+  * @Id: curs_bkgrnd.3x,v 1.46 2024/09/22 18:23:50 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_bkgrnd 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_bkgrnd 3x 2024-09-22 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_bkgrnd 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_bkgrnd 3x 2024-09-22 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
 
@@ -65,20 +65,24 @@
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
-       The <EM>background</EM> of a <EM>curses</EM> window (in the library's wide configuration)
-       is a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> combining a set of attributes (see <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>) with the
-       window's blank character.
-
-       The <EM>blank</EM> <EM>character</EM> is a spacing complex  character  that  populates  a
-       window's  character  cells  when  their  contents  are  erased  without
-       replacement.  The background's attributes are combined  with  all  non-
-       blank  characters  written  to the window, as with the <STRONG><A HREF="curs_add_wch.3x.html">wadd_wch(3x)</A></STRONG> and
-       <STRONG><A HREF="curs_ins_wch.3x.html">wins_wch(3x)</A></STRONG> families of functions.
-
-       The blank character and  attributes  of  the  background  combine  with
-       characters  written  to  the window as described below.  The background
-       becomes a property of the character  and  moves  with  it  through  any
-       scrolling and insert/delete line/character operations.
+       Every <EM>curses</EM> window has a background property.  In the  library's  wide
+       configuration,  this  property  is  a  <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>  which combines a set of
+       attributes  with  the  <EM>background</EM>  <EM>character</EM>  (see  <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>)  The
+       background character is a spacing character.
+
+       When  erasing  parts  of  the  screen,  <EM>curses</EM> fills the cells with the
+       background character.  <EM>curses</EM> also  uses  the  window  background  when
+       writing characters to the screen:
+
+       <STRONG>o</STRONG>   The attribute part of the background is combined with all non-blank
+           characters  that  are  written  into  the  window,  as   with   the
+           <STRONG><A HREF="curs_add_wch.3x.html">wadd_wch(3x)</A></STRONG> and <STRONG><A HREF="curs_ins_wch.3x.html">wins_wch(3x)</A></STRONG> families of functions.
+
+       <STRONG>o</STRONG>   Both  the  character  and  attribute  parts  of  the background are
+           combined with blank characters that are written into the window.
+
+       The background becomes a property of the character and  moves  with  it
+       through any scrolling and insert/delete line/character operations.
 
        To  the  extent possible on a given terminal, the attribute part of the
        background is displayed as the graphic rendition of the  character  put
@@ -102,8 +106,8 @@
        blank.
 
        <STRONG>o</STRONG>   <EM>ncurses</EM> first compares  the  cell's  character  to  the  previously
-           specified  blank  character;  if they match, <EM>ncurses</EM> writes the new
-           blank character to the cell.
+           specified  background  character; if they match, <EM>ncurses</EM> writes the
+           new background character to the cell.
 
        <STRONG>o</STRONG>   <EM>ncurses</EM> then checks if the cell uses color, that is, its color pair
            value  is  nonzero.   If not, it simply replaces the attributes and
@@ -122,30 +126,31 @@
            the current background, and then adding  attributes  from  the  new
            background.
 
-       <EM>ncurses</EM>  treats  a  background  character  value of zero (0) as a blank
-       character.
+       If the new background's character is nonspacing, <EM>ncurses</EM> reuses the old
+       background character, except for one special  case:  <EM>ncurses</EM>  treats  a
+       background character value of zero (0) as a space.
 
-       If the terminal does not support  color,  or  if  color  has  not  been
-       initialized  with  <STRONG><A HREF="curs_color.3x.html">start_color(3x)</A></STRONG>,  <EM>ncurses</EM> ignores the new background
+       If  the  terminal  does  not  support  color,  or if color has not been
+       initialized with <STRONG><A HREF="curs_color.3x.html">start_color(3x)</A></STRONG>, <EM>ncurses</EM> ignores  the  new  background
        character's color attribute.
 
 
 </PRE><H3><a name="h3-bkgrndset_wbkgrndset">bkgrndset, wbkgrndset</a></H3><PRE>
-       <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> manipulate the background  of  the  applicable
-       window,  without updating the character cells as <STRONG>bkgrnd</STRONG> and <STRONG>wbkgrnd</STRONG> do;
+       <STRONG>bkgrndset</STRONG>  and  <STRONG>wbkgrndset</STRONG>  manipulate the background of the applicable
+       window, without updating the character cells as <STRONG>bkgrnd</STRONG> and <STRONG>wbkgrnd</STRONG>  do;
        only future writes reflect the updated background.
 
 
 </PRE><H3><a name="h3-getbkgrnd_wgetbkgrnd">getbkgrnd, wgetbkgrnd</a></H3><PRE>
-       The <STRONG>getbkgrnd</STRONG> and <STRONG>wgetbkgrnd</STRONG> functions obtain the background  character
-       and  attribute  pair of <STRONG>stdscr</STRONG> or the specified window and store it via
+       The  <STRONG>getbkgrnd</STRONG> and <STRONG>wgetbkgrnd</STRONG> functions obtain the background character
+       and attribute pair of <STRONG>stdscr</STRONG> or the specified window and store  it  via
        the <EM>wch</EM> pointer.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
        <STRONG>bkgrndset</STRONG> and <STRONG>wbkgrndset</STRONG> do not return a value.
 
-       The other functions return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG>  upon  success.   In
+       The  other  functions  return <STRONG>ERR</STRONG> upon failure and <STRONG>OK</STRONG> upon success.  In
        <EM>ncurses</EM>, failure occurs if
 
        <STRONG>o</STRONG>   a <EM>WINDOW</EM> pointer <EM>win</EM> is null, or
@@ -156,13 +161,13 @@
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
        <STRONG>bkgrnd</STRONG>, <STRONG>bkgrndset</STRONG>, and <STRONG>getbkgrnd</STRONG> may be implemented as macros.
 
-       Unlike  their  counterparts  in  the non-wide configuration of <EM>ncurses</EM>,
-       <STRONG>getbkgrnd</STRONG> and <STRONG>wgetbkgrnd</STRONG> supply the background character and  attribute
+       Unlike their counterparts in the  non-wide  configuration  of  <EM>ncurses</EM>,
+       <STRONG>getbkgrnd</STRONG>  and <STRONG>wgetbkgrnd</STRONG> supply the background character and attribute
        in a modifiable <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> parameter, not as the return value.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       X/Open  Curses,  Issue  4  describes  these functions.  It specifies no
+       X/Open Curses, Issue 4 describes  these  functions.   It  specifies  no
        error conditions for them.
 
        X/Open Curses does not provide details of how the rendition is updated.
@@ -170,14 +175,14 @@
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG>  describes  the  corresponding  functions in the non-wide
+       <STRONG><A HREF="curs_bkgd.3x.html">curs_bkgd(3x)</A></STRONG> describes the corresponding  functions  in  the  non-wide
        configuration of <EM>ncurses</EM>.
 
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_add_wch.3x.html">curs_add_wch(3x)</A></STRONG>, <STRONG><A HREF="curs_attr.3x.html">curs_attr(3x)</A></STRONG>
 
 
 
-ncurses 6.5                       2024-09-14                   <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
+ncurses 6.5                       2024-09-22                   <STRONG><A HREF="curs_bkgrnd.3x.html">curs_bkgrnd(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_delch.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_delch.3x.html	2024-07-27 23:11:31.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_delch.3x.html	2024-09-22 18:37:10.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_delch.3x,v 1.37 2024/07/27 20:14:16 tom Exp @
+  * @Id: curs_delch.3x,v 1.39 2024/09/21 23:43:41 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_delch 3x 2024-07-27 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_delch 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_delch 3x 2024-07-27 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_delch 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>                   Library calls                  <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
 
@@ -64,10 +64,10 @@
        <STRONG>wdelch</STRONG> deletes the character at the cursor position in <EM>win</EM>.   It  moves
        all  characters to the right of the cursor on the same line to the left
        one position and replaces the contents of the rightmost position on the
-       line  with  the  window's blank character; see <STRONG><A HREF="curs_bkgd.3x.html">bkgd(3x)</A></STRONG> (wide-character
-       API users: <STRONG><A HREF="curs_bkgrnd.3x.html">bkgrnd(3x)</A></STRONG>).  The cursor position  does  not  change  (after
-       moving to (<EM>y</EM>, <EM>x</EM>), if specified).  <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> describes the variants of
-       this function.
+       line  with  the  window's  background  character;  see  <STRONG><A HREF="curs_bkgd.3x.html">bkgd(3x)</A></STRONG> (wide-
+       character API users: <STRONG><A HREF="curs_bkgrnd.3x.html">bkgrnd(3x)</A></STRONG>).  The cursor position does not  change
+       (after  moving  to  (<EM>y</EM>,  <EM>x</EM>),  if specified).  <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> describes the
+       variants of this function.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
@@ -103,7 +103,7 @@
 
 
 
-ncurses 6.5                       2024-07-27                    <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                    <STRONG><A HREF="curs_delch.3x.html">curs_delch(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_deleteln.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_deleteln.3x.html	2024-07-27 23:11:31.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_deleteln.3x.html	2024-09-22 18:37:10.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_deleteln.3x,v 1.40 2024/07/27 20:12:02 tom Exp @
+  * @Id: curs_deleteln.3x,v 1.41 2024/09/22 18:35:00 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_deleteln 3x 2024-07-27 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_deleteln 3x 2024-09-22 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_deleteln 3x 2024-07-27 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_deleteln 3x 2024-09-22 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
 
@@ -67,15 +67,16 @@
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        <STRONG>wdeleteln</STRONG> deletes the line at the cursor in <EM>win</EM>;  all  lines  below  it
        move  up  one  line.  <EM>curses</EM> then fills the bottom line of <EM>win</EM> with the
-       blank character configured by <STRONG><A HREF="curs_bkgd.3x.html">wbkgdset(3x)</A></STRONG> (wide-character  API  users:
-       <STRONG><A HREF="curs_bkgrnd.3x.html">wbkgrndset(3x)</A></STRONG>).  The cursor position does not change.
+       background character configured  by  <STRONG><A HREF="curs_bkgd.3x.html">wbkgdset(3x)</A></STRONG>  (wide-character  API
+       users: <STRONG><A HREF="curs_bkgrnd.3x.html">wbkgrndset(3x)</A></STRONG>).  The cursor position does not change.
 
-       <STRONG>winsertln</STRONG>  inserts  a  line  of  blank characters above the line at the
-       cursor in <EM>win</EM>; the content of the window's bottom line  is  lost.   The
-       cursor position does not change.
+       <STRONG>winsertln</STRONG> inserts a new, empty line of characters above the line at the
+       cursor in <EM>win</EM>, shifting the existing lines down by one.  The content of
+       the  window's  bottom  line is lost; <EM>curses</EM> fills the new line with the
+       background character.  The cursor position does not change.
 
-       <STRONG>winsdelln</STRONG>  inserts  or  deletes  <EM>n</EM> lines  in  <EM>win</EM>  as  <EM>n</EM> is positive or
-       negative, respectively,  as  if  by  repeatedly  calling  <STRONG>winsertln</STRONG>  or
+       <STRONG>winsdelln</STRONG> inserts or deletes  <EM>n</EM> lines  in  <EM>win</EM>  as  <EM>n</EM>  is  positive  or
+       negative,  respectively,  as  if  by  repeatedly  calling  <STRONG>winsertln</STRONG> or
        <STRONG>wdeleteln</STRONG>.
 
        <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> describes the variants of these functions.
@@ -90,16 +91,16 @@
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
        All of these functions except <STRONG>winsdelln</STRONG> may be implemented as macros.
 
-       These  functions  do  not require the terminal to possess hardware line
-       deletion or insertion capabilities.   Even  if  available,  by  default
+       These functions do not require the terminal to  possess  hardware  line
+       deletion  or  insertion  capabilities.   Even  if available, by default
        <EM>curses</EM> does not use them; see <STRONG><A HREF="idlok.3x.html">idlok(3x)</A></STRONG>.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       X/Open  Curses,  Issue  4  describes  these functions.  It specifies no
+       X/Open Curses, Issue 4 describes  these  functions.   It  specifies  no
        error conditions for them.
 
-       SVr4 <EM>curses</EM> describes a successful return value  only  as  "an  integer
+       SVr4  <EM>curses</EM>  describes  a  successful return value only as "an integer
        value other than <STRONG>ERR</STRONG>".
 
 
@@ -114,7 +115,7 @@
 
 
 
-ncurses 6.5                       2024-07-27                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
+ncurses 6.5                       2024-09-22                 <STRONG><A HREF="curs_deleteln.3x.html">curs_deleteln(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_initscr.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_initscr.3x.html	2024-09-14 20:23:26.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_initscr.3x.html	2024-09-21 18:35:26.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_initscr.3x,v 1.77 2024/09/11 21:00:07 tom Exp @
+  * @Id: curs_initscr.3x,v 1.79 2024/09/21 17:59:36 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_initscr 3x 2024-09-11 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_initscr 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_initscr 3x 2024-09-11 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_initscr 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
 
@@ -54,127 +54,145 @@
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
        <STRONG>#include</STRONG> <STRONG>&lt;curses.h&gt;</STRONG>
 
-       <STRONG>WINDOW</STRONG> <STRONG>*initscr(void);</STRONG>
+       <STRONG>WINDOW</STRONG> <STRONG>*</STRONG> <STRONG>initscr(void);</STRONG>
        <STRONG>int</STRONG> <STRONG>endwin(void);</STRONG>
 
        <STRONG>bool</STRONG> <STRONG>isendwin(void);</STRONG>
 
-       <STRONG>SCREEN</STRONG> <STRONG>*newterm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG><EM>type</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>outf</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG><EM>inf</EM><STRONG>);</STRONG>
-       <STRONG>SCREEN</STRONG> <STRONG>*set_term(SCREEN</STRONG> <STRONG>*</STRONG><EM>new</EM><STRONG>);</STRONG>
-       <STRONG>void</STRONG> <STRONG>delscreen(SCREEN*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
+       <STRONG>SCREEN</STRONG> <STRONG>*</STRONG> <STRONG>newterm(const</STRONG> <STRONG>char</STRONG> <STRONG>*</STRONG> <EM>type</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG> <EM>outf</EM><STRONG>,</STRONG> <STRONG>FILE</STRONG> <STRONG>*</STRONG> <EM>inf</EM><STRONG>);</STRONG>
+       <STRONG>SCREEN</STRONG> <STRONG>*</STRONG> <STRONG>set_term(SCREEN</STRONG> <STRONG>*</STRONG> <EM>new</EM><STRONG>);</STRONG>
+       <STRONG>void</STRONG> <STRONG>delscreen(SCREEN</STRONG> <STRONG>*</STRONG> <EM>sp</EM><STRONG>);</STRONG>
 
 
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
 
 </PRE><H3><a name="h3-initscr">initscr</a></H3><PRE>
-       <STRONG>initscr</STRONG> is normally the first <STRONG>curses</STRONG> routine to call when  initializing
-       a  program.   A few special routines sometimes need to be called before
-       it; these are <STRONG><A HREF="curs_slk.3x.html">slk_init(3x)</A></STRONG>, <STRONG>filter</STRONG>, <STRONG>ripoffline</STRONG>, <STRONG>use_env</STRONG>.  For multiple-
-       terminal applications, <STRONG>newterm</STRONG> may be called before <STRONG>initscr</STRONG>.
-
-       The  initscr  code  determines  the  terminal  type and initializes all
-       <STRONG>curses</STRONG>  data  structures.   <STRONG>initscr</STRONG>  also  causes  the  first  call  to
-       <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>  to  clear  the screen.  If errors occur, <STRONG>initscr</STRONG> writes an
-       appropriate error message to standard error  and  exits;  otherwise,  a
-       pointer is returned to <STRONG>stdscr</STRONG>.
+       <STRONG>initscr</STRONG> determines the terminal  type  and  initializes  the  library's
+       <EM>SCREEN</EM>,  <EM>WINDOW</EM>,  and  other data structures.  It is normally the first
+       <EM>curses</EM> function call a program performs.  However, an application  with
+       unusual needs might employ a few other <EM>curses</EM> functions beforehand:
+
+       <STRONG>o</STRONG>   <STRONG><A HREF="curs_slk.3x.html">slk_init(3x)</A></STRONG> to set up soft-label keys;
+
+       <STRONG>o</STRONG>   <STRONG><A HREF="curs_util.3x.html">filter(3x)</A></STRONG>  if  the  program  is  designed  to operate in a process
+           pipeline;
+
+       <STRONG>o</STRONG>   <STRONG><A HREF="curs_kernel.3x.html">ripoffline(3x)</A></STRONG> to reserve up to five lines at the top and/or bottom
+           of  the  screen  from  management  by  <STRONG>stdscr</STRONG>,  the standard <EM>curses</EM>
+           window; and
+
+       <STRONG>o</STRONG>   <STRONG><A HREF="curs_util.3x.html">use_env(3x)</A></STRONG> and/or <STRONG><A HREF="curs_util.3x.html">use_tioctl(3x)</A></STRONG> to configure use of  the  process
+           environment  and  operating system's terminal driver, respectively,
+           when determining the dimensions of the terminal display.
+
+       Further, a <EM>curses</EM> program might call <STRONG>newterm</STRONG> prior  to  or  instead  of
+       <STRONG>initscr</STRONG> in two specialized cases described in its subsection below.
+
+       <STRONG>initscr</STRONG>  causes  the  first  <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG>  call to clear the screen.  If
+       errors occur, <STRONG>initscr</STRONG> writes an appropriate diagnostic message  to  the
+       standard  error  stream  and  exits; otherwise, it returns a pointer to
+       <STRONG>stdscr</STRONG>.
 
 
 </PRE><H3><a name="h3-newterm">newterm</a></H3><PRE>
-       A program that outputs to more than one terminal should use the <STRONG>newterm</STRONG>
-       routine for each terminal instead of <STRONG>initscr</STRONG>.  A program that needs  to
-       inspect capabilities, so it can continue to run in a line-oriented mode
-       if the terminal cannot support a screen-oriented  program,  would  also
-       use <STRONG>newterm</STRONG>.
+       An application that manages multiple terminals should call <STRONG>newterm</STRONG> once
+       for each such device <EM>instead</EM> of <STRONG>initscr</STRONG>.  <STRONG>newterm</STRONG>'s arguments are
 
-       The  routine  <STRONG>newterm</STRONG>  should  be  called  once  for each terminal.  It
-       returns a variable of  type  <EM>SCREEN</EM>  <EM>*</EM>  which  should  be  saved  as  a
-       reference to that terminal.  <STRONG>newterm</STRONG>'s arguments are
+       <STRONG>o</STRONG>   the  <EM>type</EM>  of  the  associated  terminal,  or  <EM>NULL</EM> to use the <EM>TERM</EM>
+           environment variable;
 
-       <STRONG>o</STRONG>   the <EM>type</EM> of the terminal to be used in place of <STRONG>$TERM</STRONG>,
+       <STRONG>o</STRONG>   an output stream <EM>outf</EM> connected to the terminal; and
 
-       <STRONG>o</STRONG>   an output stream connected to the terminal, and
-
-       <STRONG>o</STRONG>   an input stream connected to the terminal
-
-       If the <EM>type</EM> parameter is <STRONG>NULL</STRONG>, <STRONG>$TERM</STRONG> will be used.
-
-       The  file  descriptor  of the output stream is passed to <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>,
-       which returns a pointer to  a  <EM>TERMINAL</EM>  structure.   <STRONG>newterm</STRONG>'s  return
-       value holds a pointer to the <EM>TERMINAL</EM> structure.
+       <STRONG>o</STRONG>   an input stream <EM>inf</EM>  connected  to  the  terminal.   It  returns  a
+           variable  of  structure  type  <EM>SCREEN</EM>  <STRONG>*</STRONG>, which should be saved for
+           later use with <STRONG>set_term</STRONG> and <STRONG>delscreen</STRONG>.
+
+       <STRONG>newterm</STRONG> passes the file descriptor of the output stream to the <EM>terminfo</EM>
+       function <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>, which returns a pointer to a <EM>TERMINAL</EM> structure
+       that <STRONG>newterm</STRONG> stores in the <EM>SCREEN</EM> it returns to the application.
+
+       An application that needs to inspect a terminal type's capabilities, so
+       that  it  can  continue  to run in a line-oriented mode if the terminal
+       cannot support a screen-oriented program, would also use  <STRONG>newterm</STRONG>.   If
+       at most one terminal connection is needed, the programmer could perform
+       such a capability test, decide which mode in  which  to  operate,  then
+       call  <STRONG>delscreen</STRONG>  on  the  pointer returned by <STRONG>newterm</STRONG>, and proceed with
+       either <STRONG>initscr</STRONG> or a non-<EM>curses</EM> interface.
 
 
 </PRE><H3><a name="h3-endwin">endwin</a></H3><PRE>
-       The  program  must also call <STRONG>endwin</STRONG> for each terminal being used before
-       exiting from <STRONG>curses</STRONG>.  If <STRONG>newterm</STRONG> is called more than once for the  same
+       The program must also call <STRONG>endwin</STRONG> for each terminal being  used  before
+       exiting  from <EM>curses</EM>.  If <STRONG>newterm</STRONG> is called more than once for the same
        terminal, the first terminal referred to must be the last one for which
        <STRONG>endwin</STRONG> is called.
 
-       A program should always call <STRONG>endwin</STRONG> before  exiting  or  escaping  from
-       <STRONG>curses</STRONG> mode temporarily.  This routine
+       A  program  should always call <STRONG>endwin</STRONG> before exiting the application or
+       temporarily suspending <EM>curses</EM>'s management of the terminal.  <STRONG>endwin</STRONG>:
 
        <STRONG>o</STRONG>   resets colors to correspond with the default color pair 0,
 
        <STRONG>o</STRONG>   moves the cursor to the lower left-hand corner of the screen,
 
-       <STRONG>o</STRONG>   clears  the  remainder  of  the  line  so  that it uses the default
+       <STRONG>o</STRONG>   clears the remainder of the  line  so  that  it  uses  the  default
            colors,
 
        <STRONG>o</STRONG>   sets the cursor to normal visibility (see <STRONG><A HREF="curs_kernel.3x.html">curs_set(3x)</A></STRONG>),
 
-       <STRONG>o</STRONG>   stops  cursor-addressing  mode  using  the  <EM>exit</EM><STRONG>_</STRONG><EM>ca</EM><STRONG>_</STRONG><EM>mode</EM>   terminal
-           capability,
+       <STRONG>o</STRONG>   if  applicable, stops cursor-addressing mode using the <STRONG>exit_ca_mode</STRONG>
+           (<STRONG>rmcup</STRONG>) terminal capability, and
 
-       <STRONG>o</STRONG>   restores tty modes (see <STRONG><A HREF="curs_kernel.3x.html">reset_shell_mode(3x)</A></STRONG>).
+       <STRONG>o</STRONG>   restores terminal modes (see <STRONG><A HREF="curs_kernel.3x.html">reset_shell_mode(3x)</A></STRONG>).
 
-       Calling <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> or <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> after a temporary escape causes the
-       program to resume visual mode.
+       Calling <STRONG><A HREF="curs_refresh.3x.html">refresh(3x)</A></STRONG> or <STRONG><A HREF="curs_refresh.3x.html">doupdate(3x)</A></STRONG> after  a  temporary  escape  causes
+       <EM>curses</EM> to resume managing the terminal.
 
 
 </PRE><H3><a name="h3-isendwin">isendwin</a></H3><PRE>
-       The <STRONG>isendwin</STRONG> routine returns <STRONG>TRUE</STRONG> if <STRONG>endwin</STRONG> has been called without any
-       subsequent calls to <STRONG>wrefresh</STRONG>, and <STRONG>FALSE</STRONG> otherwise.
+       <STRONG>isendwin</STRONG>  returns <STRONG>TRUE</STRONG> if <STRONG>endwin</STRONG> has been called without any subsequent
+       calls to <STRONG><A HREF="curs_refresh.3x.html">wrefresh(3x)</A></STRONG>, and <STRONG>FALSE</STRONG> otherwise.
 
 
 </PRE><H3><a name="h3-set_term">set_term</a></H3><PRE>
-       The  <STRONG>set_term</STRONG>  routine  is  used to switch between different terminals.
-       The screen  reference  <EM>new</EM>  becomes  the  new  current  terminal.   The
-       previous terminal is returned by the routine.  This is the only routine
-       which manipulates <EM>SCREEN</EM> pointers; all other routines affect  only  the
-       current terminal.
+       <STRONG>set_term</STRONG> re-orients the <EM>curses</EM> library's operations to another terminal
+       when the application has arranged to manage more than one with <STRONG>newterm</STRONG>.
+       <STRONG>set_term</STRONG> expects a <EM>SCREEN</EM> pointer previously returned by <STRONG>newterm</STRONG> as  an
+       argument,  and  returns  the previous one.  <STRONG>set_term</STRONG> is the only <EM>curses</EM>
+       API function that manipulates <EM>SCREEN</EM> pointers; all others  affect  only
+       the current terminal.
 
 
 </PRE><H3><a name="h3-delscreen">delscreen</a></H3><PRE>
-       The  <STRONG>delscreen</STRONG>  routine  frees  storage associated with the <EM>SCREEN</EM> data
-       structure.  The <STRONG>endwin</STRONG> routine does not do this, so <STRONG>delscreen</STRONG> should be
-       called after <STRONG>endwin</STRONG> if a particular <EM>SCREEN</EM> is no longer needed.
+       <STRONG>delscreen</STRONG>  frees  the  storage  backing  the  supplied  <EM>SCREEN</EM>  pointer
+       argument.  <STRONG>endwin</STRONG> does not, so that an application can resume  managing
+       a  terminal  with  <EM>curses</EM>  after  a (possibly conditional or temporary)
+       suspension; see <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>.  Call <STRONG>delscreen</STRONG> after  <STRONG>endwin</STRONG>  when  a
+       particular <EM>SCREEN</EM> structure is no longer needed.
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       <STRONG>endwin</STRONG>  returns  the  integer  <STRONG>ERR</STRONG>  upon failure and <STRONG>OK</STRONG> upon successful
-       completion.
+       <STRONG>endwin</STRONG> returns <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.
 
-       Routines that return pointers always return <STRONG>NULL</STRONG> on error.
-
-       X/Open defines no error conditions.  In this implementation
+       In <EM>ncurses</EM>,
 
        <STRONG>o</STRONG>   <STRONG>endwin</STRONG> returns <STRONG>ERR</STRONG> if
 
-           <STRONG>o</STRONG>   the terminal was not initialized, or
+           <STRONG>o</STRONG>   the terminal was not initialized,
 
            <STRONG>o</STRONG>   <STRONG>endwin</STRONG> is called more than once without updating the screen, or
 
-           <STRONG>o</STRONG>   <STRONG><A HREF="curs_kernel.3x.html">reset_shell_mode(3x)</A></STRONG> return <STRONG>ERR</STRONG>.
+           <STRONG>o</STRONG>   <STRONG><A HREF="curs_kernel.3x.html">reset_shell_mode(3x)</A></STRONG> returns <STRONG>ERR</STRONG>.
 
-       <STRONG>o</STRONG>   <STRONG>newterm</STRONG> returns <STRONG>ERR</STRONG> if it cannot allocate the data  structures  for
-           the  screen,  or for the top-level windows within the screen, i.e.,
-           <STRONG>curscr</STRONG>, <STRONG>newscr</STRONG>, or <STRONG>stdscr</STRONG>.
+       <STRONG>o</STRONG>   <STRONG>newterm</STRONG>  returns  <STRONG>ERR</STRONG>  if it cannot allocate storage for the <EM>SCREEN</EM>
+           data structure or the top-level windows  thereof:  <STRONG>curscr</STRONG>,  <STRONG>newscr</STRONG>,
+           and <STRONG>stdscr</STRONG>.
 
-       <STRONG>o</STRONG>   <STRONG>set_term</STRONG> returns no error.
+       Functions  that  return  pointers  return  <EM>NULL</EM>  on error.  In <EM>ncurses</EM>,
+       <STRONG>set_term</STRONG> does not fail.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       These functions were described in X/Open Curses, Issue 4.  As of  2015,
-       the current document is X/Open Curses, Issue 7.
+       X/Open Curses, Issue 4 describes  these  functions.   It  specifies  no
+       error conditions for them.
 
 
 </PRE><H3><a name="h3-Differences">Differences</a></H3><PRE>
@@ -222,19 +240,17 @@
        descriptor can have different behavior  depending  on  which  structure
        holds the corresponding descriptor.
 
-       For example
-
-       <STRONG>o</STRONG>   NetBSD's  <STRONG><A HREF="curs_termattrs.3x.html">baudrate(3x)</A></STRONG>  function  uses  the descriptor in <EM>TERMINAL</EM>.
-           <EM>ncurses</EM> and SVr4 use the descriptor in <EM>SCREEN</EM>.
+       <STRONG>o</STRONG>   NetBSD's   <EM>baudrate</EM>  function  uses  the  descriptor  in  <EM>TERMINAL</EM>.
+           <EM>ncurses</EM> and SVr4 <EM>curses</EM> use the descriptor in <EM>SCREEN</EM>.
 
        <STRONG>o</STRONG>   NetBSD and <EM>ncurses</EM> use the descriptor in <EM>TERMINAL</EM> for terminal  I/O
            modes,  e.g.,  <STRONG><A HREF="curs_kernel.3x.html">def_shell_mode(3x)</A></STRONG>,  <STRONG><A HREF="curs_kernel.3x.html">def_prog_mode(3x)</A></STRONG>.  SVr4 curses
            uses the descriptor in <EM>SCREEN</EM>.
 
-   <STRONG>Unset</STRONG> <EM>TERM</EM> <STRONG>Variable</STRONG>
+   <STRONG>Unset</STRONG> <STRONG><EM>TERM</EM></STRONG> <STRONG>Variable</STRONG>
        If the <EM>TERM</EM> variable is  missing  or  empty,  <STRONG>initscr</STRONG>  uses  the  value
        "unknown",  which  normally  corresponds  to  a terminal entry with the
-       <EM>generic</EM> (<EM>gn</EM>) capability.  Generic entries are detected by <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>
+       <STRONG>generic</STRONG> (<STRONG>gn</STRONG>) capability.  Generic entries are detected by <STRONG><A HREF="curs_terminfo.3x.html">setupterm(3x)</A></STRONG>
        and  cannot  be  used for full-screen operation.  Other implementations
        may handle a missing/empty <EM>TERM</EM> variable differently.
 
@@ -303,7 +319,7 @@
 
 
 
-ncurses 6.5                       2024-09-11                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                  <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_inopts.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_inopts.3x.html	2024-09-14 20:23:26.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_inopts.3x.html	2024-09-21 18:35:26.000000000 +0000
@@ -28,19 +28,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_inopts.3x,v 1.77 2024/09/14 20:06:50 tom Exp @
+  * @Id: curs_inopts.3x,v 1.79 2024/09/21 18:05:49 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_inopts 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_inopts 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_inopts 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_inopts 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
 
@@ -202,7 +202,7 @@
 </PRE><H3><a name="h3-qiflush_noqiflush">qiflush, noqiflush</a></H3><PRE>
        <STRONG>qiflush</STRONG> and <STRONG>noqiflush</STRONG> configure the terminal driver's treatment of  its
        input and output queues when it handles the interrupt, suspend, or quit
-       characters under the normal ("cooked") or  cbreak  line  discplines  on
+       characters under the normal ("cooked") or cbreak  line  disciplines  on
        POSIX  systems; see <STRONG>termios(3)</STRONG>.  The default behavior is inherited from
        the terminal driver settings.  Calling <STRONG>qiflush</STRONG> configures the  terminal
        to  flush  the  queues  when  any  of  these  events occurs, giving the
@@ -382,7 +382,7 @@
 
 
 
-ncurses 6.5                       2024-09-14                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                   <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_kernel.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_kernel.3x.html	2024-09-14 20:23:26.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_kernel.3x.html	2024-09-21 18:35:27.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_kernel.3x,v 1.70 2024/09/14 20:14:54 tom Exp @
+  * @Id: curs_kernel.3x,v 1.72 2024/09/21 18:05:20 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_kernel 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_kernel 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_kernel 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_kernel 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
 
@@ -196,8 +196,8 @@
            if the operating system's function for obtaining terminal  settings
            fails.
 
-       <STRONG>o</STRONG>   <STRONG>ripoffline</STRONG>  returns  <STRONG>ERR</STRONG>  if the maximum number of ripped-off lines
-           exceeds the maximum (5).
+       <STRONG>o</STRONG>   <STRONG>ripoffline</STRONG>  returns  <STRONG>ERR</STRONG>  if the accumulated quantity of ripped-off
+           lines would exceed the maximum (5).
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -262,7 +262,7 @@
 
 
 
-ncurses 6.5                       2024-09-14                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                   <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_move.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_move.3x.html	2024-07-27 23:11:32.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_move.3x.html	2024-09-21 18:35:27.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_move.3x,v 1.44 2024/07/27 20:11:42 tom Exp @
+  * @Id: curs_move.3x,v 1.46 2024/09/21 18:03:44 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_move 3x 2024-07-27 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_move 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_move 3x 2024-07-27 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_move 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
 
@@ -70,7 +70,7 @@
 
        They fail if the position (<EM>y</EM>, <EM>x</EM>) is outside the window boundaries.
 
-       In <EM>ncurses</EM>, <STRONG>wmove</STRONG> fails if its <EM>WINDOW</EM> pointer argument is <STRONG>NULL</STRONG>.
+       In <EM>ncurses</EM>, <STRONG>wmove</STRONG> fails if <EM>win</EM> is <STRONG>NULL</STRONG>.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
@@ -93,7 +93,7 @@
 
 
 
-ncurses 6.5                       2024-07-27                     <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                     <STRONG><A HREF="curs_move.3x.html">curs_move(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_scr_dump.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_scr_dump.3x.html	2024-06-08 23:12:49.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_scr_dump.3x.html	2024-09-21 18:35:27.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scr_dump.3x,v 1.47 2024/06/08 20:33:56 tom Exp @
+  * @Id: curs_scr_dump.3x,v 1.49 2024/09/21 09:30:22 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_scr_dump 3x 2024-06-08 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_scr_dump 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_scr_dump 3x 2024-06-08 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_scr_dump 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>                Library calls               <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
 
@@ -139,19 +139,30 @@
        considered  invalid  "if the time-stamp of the tty is old" but does not
        define "old".
 
+       As of 2024, PDCurses provides these functions.  NetBSD curses does  not
+       provide these functions, although it provides <STRONG>getwin</STRONG>.
+
+       Other  implementations  of curses store the window in binary form.  One
+       drawback to binary form is that this makes the dump dependent upon  the
+       curses  library's  internal  data  structures.   Rather  than  do that,
+       ncurses stores the dump in textual form, allowing more flexible use  of
+       the  data.   For  instance,  SVr4  curses <STRONG>scr_restore</STRONG> requires that the
+       dumped window have the same dimensions as the restored window.  ncurses
+       uses <STRONG>wresize</STRONG> to adjust the restored window size.
+
 
 </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
-       SVr3 (1987) introduced <STRONG>scr_dump</STRONG>,  <STRONG>scr_init</STRONG>,  and  <STRONG>scr_restore</STRONG>.   SVr3.1
+       SVr3  (1987)  introduced  <STRONG>scr_dump</STRONG>,  <STRONG>scr_init</STRONG>, and <STRONG>scr_restore</STRONG>.  SVr3.1
        added <STRONG>scr_set</STRONG>.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,    <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>,    <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>,
-       <STRONG>system(3)</STRONG>, <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_refresh.3x.html">curs_refresh(3x)</A></STRONG>, <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>,
+       <STRONG>system(3)</STRONG>, <STRONG><A HREF="scr_dump.5.html">scr_dump(5)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>, <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>
 
 
 
-ncurses 6.5                       2024-06-08                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                 <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_scroll.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_scroll.3x.html	2024-09-14 20:23:26.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_scroll.3x.html	2024-09-22 18:37:11.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_scroll.3x,v 1.47 2024/09/14 20:06:50 tom Exp @
+  * @Id: curs_scroll.3x,v 1.49 2024/09/22 14:08:11 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_scroll 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_scroll 3x 2024-09-22 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_scroll 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_scroll 3x 2024-09-22 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>                  Library calls                 <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
 
@@ -62,11 +62,11 @@
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        <STRONG>scroll</STRONG>  scrolls  the  given window up one line.  That is, every visible
        line we might number <EM>i</EM> becomes line <EM>i</EM>-1.  The text of the top  line  in
-       the  window  disappears  and  the  bottom  line is populated with blank
-       characters; see <STRONG><A HREF="curs_bkgd.3x.html">bkgd(3x)</A></STRONG> (wide-character API users: <STRONG><A HREF="curs_bkgrnd.3x.html">bkgrnd(3x)</A></STRONG>).  As an
-       optimization,  if  the  scrolling  region  of  the window is the entire
-       screen, the physical screen may be  scrolled  at  the  same  time;  see
-       <STRONG><A HREF="curs_variables.3x.html">curscr(3x)</A></STRONG>.
+       the  window  disappears  and  the  bottom  line  is  populated with the
+       background  character;  see   <STRONG><A HREF="curs_bkgd.3x.html">bkgd(3x)</A></STRONG>   (wide-character   API   users:
+       <STRONG><A HREF="curs_bkgrnd.3x.html">bkgrnd(3x)</A></STRONG>).  As an optimization, if the scrolling region of the window
+       is the entire screen, the physical screen may be scrolled at  the  same
+       time; see <STRONG><A HREF="curs_variables.3x.html">curscr(3x)</A></STRONG>.
 
        <STRONG>scrl</STRONG> and <STRONG>wscrl</STRONG> scrolls the specified window <EM>win</EM> up or down per the sign
        of <EM>n</EM>.
@@ -108,8 +108,8 @@
        multiple scroll actions on the next update.
 
        Neither SVr4 <EM>curses</EM> nor X/Open Curses specify whether  these  functions
-       zero  the  attributes  or color pair identifier of the blank character.
-       In <EM>ncurses</EM>, they do not.
+       zero  the  attributes  or  color  pair  identifier  of  the  background
+       character.  In <EM>ncurses</EM>, they do not.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
@@ -117,7 +117,7 @@
 
 
 
-ncurses 6.5                       2024-09-14                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
+ncurses 6.5                       2024-09-22                   <STRONG><A HREF="curs_scroll.3x.html">curs_scroll(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_termcap.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_termcap.3x.html	2024-09-14 20:23:27.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_termcap.3x.html	2024-09-21 18:35:27.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_termcap.3x,v 1.89 2024/09/14 20:06:50 tom Exp @
+  * @Id: curs_termcap.3x,v 1.91 2024/09/21 18:00:03 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_termcap 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_termcap 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_termcap 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_termcap 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>                 Library calls                <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
 
@@ -284,37 +284,38 @@
        above.
 
        4BSD  (November 1980) renamed <EM>termlib</EM> to <EM>termcap</EM> and added another test
-       program.  The library remained much the same though 4.3BSD (June 1986).
-       4.4BSD-Lite (June 1994) refactored it, leaving the API unchanged.
+       program.  The library remained  much  the  same  through  4.3BSD  (June
+       1986).    4.4BSD-Lite  (June  1994)  refactored  it,  leaving  the  API
+       unchanged.
 
-       Function  prototypes were a feature of ANSI C (1989).  The library long
+       Function prototypes were a feature of ANSI C (1989).  The library  long
        antedated the standard and thus provided no header file declaring them.
-       Nevertheless,  the  BSD sources included two different <EM>termcap.h</EM> header
+       Nevertheless, the BSD sources included two different  <EM>termcap.h</EM>  header
        files over time.
 
        <STRONG>o</STRONG>   One was used internally by <STRONG>jove(1)</STRONG> from 4.3BSD onward.  It declared
            global symbols for the <EM>termcap</EM> variables that it used.
 
-       <STRONG>o</STRONG>   The  other appeared in 4.4BSD-Lite Release 2 (June 1995) as part of
-           <EM>libedit</EM> (also known as the <EM>editline</EM> library).  CSRG source  history
+       <STRONG>o</STRONG>   The other appeared in 4.4BSD-Lite Release 2 (June 1995) as part  of
+           <EM>libedit</EM>  (also known as the <EM>editline</EM> library).  CSRG source history
            shows that this was added in mid-1992.  The <EM>libedit</EM> header file was
            used  internally  as  a  convenience  for  compiling  the  <EM>editline</EM>
            library.  It declared function prototypes, but no global variables.
            NetBSD's <EM>termcap</EM> library added this header file in mid-1994.
 
-       Meanwhile, GNU <EM>termcap</EM> began development in 1990.   Its  first  release
-       (1.0)  in  1991  included  a  <EM>termcap.h</EM>  header file.  Its second (1.1)
-       release in September 1992 modified  the  file  to  use  <EM>const</EM>  for  the
-       function  prototypes in the header where one would expect parameters to
-       be read-only.  BSD <EM>termcap</EM> did  not.   The  prototype  for  <EM>tputs</EM>  also
-       differed,  but  in that instance, it was <EM>libedit</EM> that differed from BSD
+       Meanwhile,  GNU  <EM>termcap</EM>  began development in 1990.  Its first release
+       (1.0) in 1991 included a  <EM>termcap.h</EM>  header  file.   Its  second  (1.1)
+       release  in  September  1992  modified  the  file  to use <EM>const</EM> for the
+       function prototypes in the header where one would expect parameters  to
+       be  read-only.   BSD  <EM>termcap</EM>  did  not.   The prototype for <EM>tputs</EM> also
+       differed, but in that instance, it was <EM>libedit</EM> that differed  from  BSD
        <EM>termcap</EM>.
 
-       GNU <STRONG>bash(1)</STRONG> has bundled GNU <EM>termcap</EM> 1.3 since mid-1993 to  support  its
+       GNU  <STRONG>bash(1)</STRONG>  has bundled GNU <EM>termcap</EM> 1.3 since mid-1993 to support its
        <STRONG>readline(3)</STRONG> library, and continues to use it if configured to do so.
 
-       <EM>ncurses</EM>  1.8.1 (November 1993) provided a <EM>termcap.h</EM> file.  It reflected
-       influence  from  GNU  <EM>termcap</EM>  and  <STRONG>emacs(1)</STRONG>  (rather  than   <STRONG>jove(1)</STRONG>),
+       <EM>ncurses</EM> 1.8.1 (November 1993) provided a <EM>termcap.h</EM> file.  It  reflected
+       influence   from  GNU  <EM>termcap</EM>  and  <STRONG>emacs(1)</STRONG>  (rather  than  <STRONG>jove(1)</STRONG>),
        providing the following interface:
 
        <STRONG>o</STRONG>   global symbols used by <EM>emacs</EM>,
@@ -323,54 +324,54 @@
 
        <STRONG>o</STRONG>   a prototype for <EM>tparam</EM>, a GNU <EM>termcap</EM> feature.
 
-       Later  (in mid-1996) the <EM>tparam</EM> function was removed from <EM>ncurses</EM>.  Any
-       two of the four implementations thus differ, and programs  that  intend
+       Later (in mid-1996) the <EM>tparam</EM> function was removed from <EM>ncurses</EM>.   Any
+       two  of  the four implementations thus differ, and programs that intend
        to work with all <EM>termcap</EM> library interfaces must account for that fact.
 
 
 </PRE><H2><a name="h2-BUGS">BUGS</a></H2><PRE>
        If  you  call  <STRONG>tgetstr</STRONG>  to  fetch  <STRONG>column_address</STRONG>  (<STRONG>ch</STRONG>)  or  any  other
-       parameterized string capability, be aware that it is returned in  <EM>term-</EM>
+       parameterized  string capability, be aware that it is returned in <EM>term-</EM>
        <EM>info</EM> notation, not the older and not-quite-compatible <EM>termcap</EM> notation.
-       This does not cause problems if all you do with it  is  call  <STRONG>tgoto</STRONG>  or
-       <STRONG>tparm</STRONG>,   which   both   parametrically   expand  <EM>terminfo</EM>-style  string
-       capabilities as <EM>terminfo</EM> does.  (If <EM>ncurses</EM> is  configured  to  support
-       <EM>termcap,</EM>  <STRONG>tgoto</STRONG>  checks whether the string is <EM>terminfo</EM>-style by looking
-       for "<STRONG>%p</STRONG>" parameters or "<STRONG>&lt;</STRONG>...<STRONG>&gt;</STRONG>"  delays,  and  invokes  a  <EM>termcap</EM>-style
+       This  does  not  cause  problems if all you do with it is call <STRONG>tgoto</STRONG> or
+       <STRONG>tparm</STRONG>,  which  both   parametrically   expand   <EM>terminfo</EM>-style   string
+       capabilities  as  <EM>terminfo</EM>  does.  (If <EM>ncurses</EM> is configured to support
+       <EM>termcap,</EM> <STRONG>tgoto</STRONG> checks whether the string is <EM>terminfo</EM>-style  by  looking
+       for  "<STRONG>%p</STRONG>"  parameters  or  "<STRONG>&lt;</STRONG>...<STRONG>&gt;</STRONG>"  delays, and invokes a <EM>termcap</EM>-style
        parser if the string appears not to use <EM>terminfo</EM> syntax.)
 
-       Because  <EM>terminfo</EM>'s  syntax  for padding in string capabilities differs
+       Because <EM>terminfo</EM>'s syntax for padding in  string  capabilities  differs
        from <EM>termcap</EM>'s, users can be surprised.
 
-       <STRONG>o</STRONG>   <STRONG>tputs("50")</STRONG> in a <EM>terminfo</EM> system transmits "50" rather  than  busy-
+       <STRONG>o</STRONG>   <STRONG>tputs("50")</STRONG>  in  a <EM>terminfo</EM> system transmits "50" rather than busy-
            waiting for 50 milliseconds.
 
-       <STRONG>o</STRONG>   However,  if  <EM>ncurses</EM> is configured to support <EM>termcap</EM>, it may also
+       <STRONG>o</STRONG>   However, if <EM>ncurses</EM> is configured to support <EM>termcap</EM>, it  may  also
            have been configured to support BSD-style padding.
 
-           In that case, <STRONG>tputs</STRONG> inspects strings  passed  to  it,  looking  for
+           In  that  case,  <STRONG>tputs</STRONG>  inspects  strings passed to it, looking for
            digits at the beginning of the string.
 
-           <STRONG>tputs("50")</STRONG>  in  a <EM>termcap</EM> system may busy-wait for 50 milliseconds
+           <STRONG>tputs("50")</STRONG> in a <EM>termcap</EM> system may busy-wait for  50  milliseconds
            rather than transmitting "50".
 
        <EM>termcap</EM>  has  nothing  analogous  to  <EM>terminfo</EM>'s  <STRONG>set_attributes</STRONG>  (<STRONG>sgr</STRONG>)
-       capability.   One  consequence is that <EM>termcap</EM> applications assume that
-       "<STRONG>me</STRONG>" (equivalent to <EM>terminfo</EM>'s <STRONG>exit_attribute_mode</STRONG>  (<STRONG>sgr0</STRONG>)  capability)
-       does  not  reset  the alternate character set.  <EM>ncurses</EM> checks for, and
+       capability.  One consequence is that <EM>termcap</EM> applications  assume  that
+       "<STRONG>me</STRONG>"  (equivalent  to <EM>terminfo</EM>'s <STRONG>exit_attribute_mode</STRONG> (<STRONG>sgr0</STRONG>) capability)
+       does not reset the alternate character set.  <EM>ncurses</EM>  checks  for,  and
        modifies the data shared with, the <EM>termcap</EM> interface to accommodate the
        latter's limitation in this respect.
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <EM>TCTEST</EM> <EM>-</EM> <EM>A</EM> <EM>Termcap</EM> <EM>Test</EM> <EM>Utility</EM>
-       &lt;https://invisible-island.net/ncurses/tctest.html&gt;
+       <EM>TCTEST</EM> <EM>--</EM> <EM>A</EM> <EM>Termcap</EM> <EM>Test</EM> <EM>Utility</EM> &lt;https://invisible-island.net/ncurses/
+       tctest.html&gt;
 
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>, <STRONG>putc(3)</STRONG>, <STRONG><A HREF="term_variables.3x.html">term_variables(3x)</A></STRONG>, <STRONG><A HREF="terminfo.5.html">terminfo(5)</A></STRONG>
 
 
 
-ncurses 6.5                       2024-09-14                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                  <STRONG><A HREF="curs_termcap.3x.html">curs_termcap(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_util.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_util.3x.html	2024-09-14 20:23:27.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_util.3x.html	2024-09-21 18:35:27.000000000 +0000
@@ -28,19 +28,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_util.3x,v 1.116 2024/09/11 21:02:40 tom Exp @
+  * @Id: curs_util.3x,v 1.118 2024/09/21 09:30:22 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_util 3x 2024-09-11 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_util 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_util 3x 2024-09-11 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_util 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>                    Library calls                   <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
 
@@ -399,13 +399,13 @@
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,   <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>,    <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>,    <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>,
-       <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>,        <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>,        <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
+       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>, <STRONG><A HREF="curs_initscr.3x.html">curs_initscr(3x)</A></STRONG>, <STRONG><A HREF="curs_inopts.3x.html">curs_inopts(3x)</A></STRONG>, <STRONG><A HREF="curs_kernel.3x.html">curs_kernel(3x)</A></STRONG>,
+       <STRONG><A HREF="curs_scr_dump.3x.html">curs_scr_dump(3x)</A></STRONG>, <STRONG><A HREF="curs_sp_funcs.3x.html">curs_sp_funcs(3x)</A></STRONG>, <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>,
        <STRONG><A HREF="legacy_coding.3x.html">legacy_coding(3x)</A></STRONG>
 
 
 
-ncurses 6.5                       2024-09-11                     <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                     <STRONG><A HREF="curs_util.3x.html">curs_util(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/curs_variables.3x.html
--- ncurses-6.5-20240914+/doc/html/man/curs_variables.3x.html	2024-09-14 20:23:27.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/curs_variables.3x.html	2024-09-21 18:35:27.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: curs_variables.3x,v 1.51 2024/09/14 20:06:50 tom Exp @
+  * @Id: curs_variables.3x,v 1.53 2024/09/21 18:01:56 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>curs_variables 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>curs_variables 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">curs_variables 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">curs_variables 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>               Library calls              <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
 
@@ -258,7 +258,7 @@
 
 
 </PRE><H2><a name="h2-SEE-ALSO">SEE ALSO</a></H2><PRE>
-       [UAX #29] "Unicode Standard Annex #29: Unicode Text Segmentation"
+       [UAX #29] "Unicode  Standard  Annex  #29:  Unicode  Text  Segmentation"
        &lt;https://unicode.org/reports/tr29/&gt;
 
        <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG>,    <STRONG><A HREF="curs_color.3x.html">curs_color(3x)</A></STRONG>,    <STRONG><A HREF="curs_opaque.3x.html">curs_opaque(3x)</A></STRONG>,   <STRONG><A HREF="curs_terminfo.3x.html">curs_terminfo(3x)</A></STRONG>,
@@ -266,7 +266,7 @@
 
 
 
-ncurses 6.5                       2024-09-14                <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                <STRONG><A HREF="curs_variables.3x.html">curs_variables(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/infocmp.1m.html
--- ncurses-6.5-20240914+/doc/html/man/infocmp.1m.html	2024-09-14 20:23:28.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/infocmp.1m.html	2024-09-21 18:35:28.000000000 +0000
@@ -28,19 +28,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: infocmp.1m,v 1.112 2024/09/14 20:06:50 tom Exp @
+  * @Id: infocmp.1m,v 1.114 2024/09/21 18:04:29 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>infocmp 1m 2024-09-14 ncurses 6.5 User commands</TITLE>
+<TITLE>infocmp 1m 2024-09-21 ncurses 6.5 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">infocmp 1m 2024-09-14 ncurses 6.5 User commands</H1>
+<H1 class="no-header">infocmp 1m 2024-09-21 ncurses 6.5 User commands</H1>
 <PRE>
 <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>                      User commands                     <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
 
@@ -52,8 +52,8 @@
 
 
 </PRE><H2><a name="h2-SYNOPSIS">SYNOPSIS</a></H2><PRE>
-       <STRONG>infocmp</STRONG> [<STRONG>-1cCdDeEFgGiIKlLnpqrtTuUVWx]</STRONG> [<STRONG>-A</STRONG> <EM>directory</EM>] [<STRONG>-B</STRONG> <EM>directory</EM>]
-              [<STRONG>-Q</STRONG> <EM>encoding</EM>] [<STRONG>-R</STRONG> <EM>subset</EM>] [<STRONG>-s</STRONG> <EM>key</EM>] [<STRONG>-v</STRONG> <EM>level</EM>] [<STRONG>-w</STRONG> <EM>width</EM>]
+       <STRONG>infocmp</STRONG>   [<STRONG>-1cCdDeEFgGiIKlLnpqrtTuUVWx]</STRONG>  [<STRONG>-A</STRONG> <EM>directory</EM>]  [<STRONG>-B</STRONG> <EM>directory</EM>]
+              [<STRONG>-Q</STRONG> <EM>encoding</EM>]   [<STRONG>-R</STRONG> <EM>subset</EM>]   [<STRONG>-s</STRONG> <EM>key</EM>]   [<STRONG>-v</STRONG> <EM>level</EM>]   [<STRONG>-w</STRONG> <EM>width</EM>]
               [<EM>terminal-type</EM> ... ]
 
 
@@ -468,48 +468,47 @@
 
 
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
-       The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-E</STRONG>, <STRONG>-F</STRONG>, <STRONG>-G</STRONG>, <STRONG>-Q</STRONG>, <STRONG>-R</STRONG>, <STRONG>-T</STRONG>, <STRONG>-V</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-f</STRONG>, <STRONG>-g</STRONG>, <STRONG>-i</STRONG>, <STRONG>-l</STRONG>, <STRONG>-p</STRONG>,  <STRONG>-q</STRONG>
-       and <STRONG>-t</STRONG> options are not supported in SVr4 curses.
-
-       SVr4   infocmp   does  not  distinguish  between  absent  and  canceled
-       capabilities.  Also, it shows missing integer capabilities as  <STRONG>-1</STRONG>  (the
-       internal   value   used   to   represent   missing   integers).    This
-       implementation shows those as  "NULL",  for  consistency  with  missing
-       strings.
-
-       The  <STRONG>-r</STRONG>  option's  notion of "termcap" capabilities is System V Release
-       4's.  Actual BSD curses versions will have a more restricted  set.   To
-       see only the 4.4BSD set, use <STRONG>-r</STRONG> <STRONG>-RBSD</STRONG>.
+       The <STRONG>-0</STRONG>, <STRONG>-1</STRONG>, <STRONG>-a</STRONG>, <STRONG>-e</STRONG>, <STRONG>-E</STRONG>, <STRONG>-f</STRONG>, <STRONG>-F</STRONG>, <STRONG>-g</STRONG>, <STRONG>-G</STRONG>, <STRONG>-i</STRONG>, <STRONG>-l</STRONG>, <STRONG>-p</STRONG>, <STRONG>-q</STRONG>, <STRONG>-Q</STRONG>, <STRONG>-R</STRONG>, <STRONG>-t</STRONG>, <STRONG>-T</STRONG>,
+       and <STRONG>-V</STRONG> options are <EM>ncurses</EM> extensions.
 
 
 </PRE><H2><a name="h2-PORTABILITY">PORTABILITY</a></H2><PRE>
-       X/Open  Curses,  Issue  7 (2009) provides a description of <STRONG>infocmp</STRONG>.  It
-       does not mention the options used for converting to termcap format.
+       X/Open  Curses,  Issue 7 (2009) specifies <EM>infocmp</EM>.  It does not mention
+       options for producing descriptions in <EM>termcap</EM> format.
+
+       SVr4  <EM>infocmp</EM>  does  not  distinguish  between  absent   and   canceled
+       capabilities.   It  furthermore reports missing integer capabilities as
+       <STRONG>-1</STRONG> (its internal representation).  <EM>ncurses</EM> shows these  as  "NULL"  for
+       consistency with missing string capabilities.
+
+       The  <STRONG>-r</STRONG>  option  of  <EM>ncurses</EM> <EM>infocmp</EM> uses SVr4's notion of of "termcap"
+       capabilities.  BSD <EM>curses</EM> had a more restricted set.  To see only those
+       present in 4.4BSD, use "<STRONG>-r</STRONG> <STRONG>-RBSD</STRONG>".
 
 
 </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
-       Although System V Release 2 provided a  terminfo  library,  it  had  no
+       Although  System  V  Release  2  provided a terminfo library, it had no
        documented tool for decompiling the terminal descriptions.  Tony Hansen
        (AT&amp;T) wrote the first <STRONG>infocmp</STRONG> in early 1984, for System V Release 3.
 
-       Eric Raymond  used  the  AT&amp;T  documentation  in  1995  to  provide  an
-       equivalent  <STRONG>infocmp</STRONG>  for  <EM>ncurses</EM>.   In  addition,  he  added a few new
+       Eric  Raymond  used  the  AT&amp;T  documentation  in  1995  to  provide an
+       equivalent <STRONG>infocmp</STRONG> for <EM>ncurses</EM>.   In  addition,  he  added  a  few  new
        features such as:
 
-       <STRONG>o</STRONG>   the  <STRONG>-e</STRONG>  option,  to  support   <EM>fallback</EM>   (compiled-in)   terminal
+       <STRONG>o</STRONG>   the   <STRONG>-e</STRONG>   option,   to  support  <EM>fallback</EM>  (compiled-in)  terminal
            descriptions
 
        <STRONG>o</STRONG>   the <STRONG>-i</STRONG> option, to help with analysis
 
-       Later,  Thomas  Dickey added the <STRONG>-x</STRONG> (user-defined capabilities) option,
-       and the  <STRONG>-E</STRONG>  option  to  support  fallback  entries  with  user-defined
+       Later, Thomas Dickey added the <STRONG>-x</STRONG> (user-defined  capabilities)  option,
+       and  the  <STRONG>-E</STRONG>  option  to  support  fallback  entries  with user-defined
        capabilities.
 
        For a complete list, see the <EM>EXTENSIONS</EM> section.
 
-       In  2010,  Roy  Marples  provided an <STRONG>infocmp</STRONG> program for NetBSD.  It is
-       less capable than the SVr4 or <EM>ncurses</EM>  versions  (e.g.,  it  lacks  the
-       sorting  options  documented in X/Open), but does include the <STRONG>-x</STRONG> option
+       In 2010, Roy Marples provided an <STRONG>infocmp</STRONG> program  for  NetBSD.   It  is
+       less  capable  than  the  SVr4  or <EM>ncurses</EM> versions (e.g., it lacks the
+       sorting options documented in X/Open), but does include the  <STRONG>-x</STRONG>  option
        adapted from <EM>ncurses</EM>.
 
 
@@ -530,7 +529,7 @@
 
 
 
-ncurses 6.5                       2024-09-14                       <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
+ncurses 6.5                       2024-09-21                       <STRONG><A HREF="infocmp.1m.html">infocmp(1m)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/ncurses.3x.html
--- ncurses-6.5-20240914+/doc/html/man/ncurses.3x.html	2024-09-14 20:23:28.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/ncurses.3x.html	2024-09-21 18:35:29.000000000 +0000
@@ -28,19 +28,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: ncurses.3x,v 1.231 2024/09/14 20:06:50 tom Exp @
+  * @Id: ncurses.3x,v 1.233 2024/09/21 18:02:58 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>ncurses 3x 2024-09-14 ncurses 6.5 Library calls</TITLE>
+<TITLE>ncurses 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">ncurses 3x 2024-09-14 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">ncurses 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>                      Library calls                     <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
 
@@ -61,7 +61,7 @@
        displays  with  output  optimized  to minimize screen updates.  <EM>ncurses</EM>
        replaces the <EM>curses</EM> libraries from System V Release 4 Unix ("SVr4") and
        4.4BSD  Unix,  the  development  of  which  ceased  in the 1990s.  This
-       document describes <EM>ncurses</EM> version 6.5 (patch 20240914).
+       document describes <EM>ncurses</EM> version 6.5 (patch 20240921).
 
        <EM>ncurses</EM> permits control of the terminal screen's contents;  abstraction
        and  subdivision thereof with <EM>windows</EM> and <EM>pads</EM>; acquisition of keyboard
@@ -188,12 +188,12 @@
        VT100 and other terminals.  See <STRONG><A HREF="curs_addch.3x.html">addch(3x)</A></STRONG>.
 
        <EM>curses</EM> is implemented using the operating system's terminal driver; key
-       events are received not as scan codes but as byte sequences.  Graphical
-       keycaps  (alphanumeric  and punctuation keys, and the space) appear as-
-       is.  Everything else, including the tab, enter/return,  keypad,  arrow,
-       and function keys, appears as a control character or a multibyte <EM>escape</EM>
-       <EM>sequence.</EM>  <EM>curses</EM> can translate the latter into unique <EM>key</EM> <EM>codes.</EM>   See
-       <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG> and <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>.
+       events are received not as scan  codes  but  as  byte  sequences.   The
+       driver  reports  graphical  keycaps (alphanumeric and punctuation keys,
+       and  the  space)  as-is.    Everything   else,   including   the   tab,
+       enter/return,  keypad, arrow, and function keys, appears to <EM>curses</EM> as a
+       control character or a multibyte <EM>escape</EM> <EM>sequence.</EM>  <EM>curses</EM> can translate
+       the latter into unique <EM>key</EM> <EM>codes.</EM>  See <STRONG><A HREF="curs_inopts.3x.html">keypad(3x)</A></STRONG> and <STRONG><A HREF="curs_getch.3x.html">getch(3x)</A></STRONG>.
 
        <EM>ncurses</EM> provides reimplementations of the SVr4 <STRONG><A HREF="panel.3x.html">panel(3x)</A></STRONG>, <STRONG><A HREF="form.3x.html">form(3x)</A></STRONG>, and
        <STRONG><A HREF="menu.3x.html">menu(3x)</A></STRONG>  libraries;  they  permit   overlapping   windows   and   ease
@@ -308,11 +308,11 @@
                           structure,  not  combined  into  an  integer  as  in
                           <EM>chtype</EM>.
 
-                 Each cell of a <EM>WINDOW</EM> is stored as a <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>.
+                 Each cell of a <EM>WINDOW</EM> is stored as a  <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>.   <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG>
+                 and <STRONG><A HREF="curs_getcchar.3x.html">getcchar(3x)</A></STRONG> store and retrieve <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM> data.
 
-                 <STRONG><A HREF="curs_getcchar.3x.html">setcchar(3x)</A></STRONG> and  <STRONG><A HREF="curs_getcchar.3x.html">getcchar(3x)</A></STRONG>  store  and  retrieve  <EM>cchar</EM><STRONG>_</STRONG><EM>t</EM>
-                 data.   The  wide  library API of <EM>ncurses</EM> depends on two data
-                 types standardized by ISO C95.
+                 The  wide  library  API  of <EM>ncurses</EM> depends on two data types
+                 standardized by ISO C95.
 
                  <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>  stores a wide character.  Like <EM>chtype</EM>, it may be  an
                           alias  of <EM>int</EM>.  Depending on the character encoding,
@@ -324,9 +324,9 @@
                           base  glyph  with  which  it combines, and typically
                           does not advance the cursor.
 
-                 <EM>wint</EM><STRONG>_</STRONG><EM>t</EM>   can  store  a  <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>   or   the   constant   <STRONG>WEOF</STRONG>,
+                 <EM>wint</EM><STRONG>_</STRONG><EM>t</EM>   can  store  a  <EM>wchar</EM><STRONG>_</STRONG><EM>t</EM>   or   the   constant   <EM>WEOF</EM>,
                           analogously  to the <EM>int</EM>-sized character manipulation
-                          functions of ISO C and its constant <STRONG>EOF</STRONG>.
+                          functions of ISO C and its constant <EM>EOF</EM>.
 
 
 </PRE><H3><a name="h3-Function-Name-Index">Function Name Index</a></H3><PRE>
@@ -1089,7 +1089,7 @@
        the default location.
 
        <STRONG>o</STRONG>   Descriptions  in <EM>terminfo</EM> format are normally stored in a directory
-           tree using subdirectories named by the common first letters of  the
+           tree using subdirectories named for the common first letters of the
            terminal types named therein.  This is the scheme used in System V.
 
        <STRONG>o</STRONG>   If <EM>ncurses</EM> is configured to use hashed databases, then <EM>TERMINFO</EM> may
@@ -1498,7 +1498,7 @@
 
 
 
-ncurses 6.5                       2024-09-14                       <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                       <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/tabs.1.html
--- ncurses-6.5-20240914+/doc/html/man/tabs.1.html	2024-09-14 20:23:29.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/tabs.1.html	2024-09-21 18:35:29.000000000 +0000
@@ -27,19 +27,19 @@
   * sale, use or other dealings in this Software without prior written       *
   * authorization.                                                           *
   ****************************************************************************
-  * @Id: tabs.1,v 1.63 2024/09/14 20:06:50 tom Exp @
+  * @Id: tabs.1,v 1.65 2024/09/21 18:04:07 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>tabs 1 2024-09-14 ncurses 6.5 User commands</TITLE>
+<TITLE>tabs 1 2024-09-21 ncurses 6.5 User commands</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">tabs 1 2024-09-14 ncurses 6.5 User commands</H1>
+<H1 class="no-header">tabs 1 2024-09-21 ncurses 6.5 User commands</H1>
 <PRE>
 <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>                          User commands                         <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
 
@@ -203,7 +203,7 @@
            the   <STRONG>set_left_margin</STRONG>   (<STRONG>smgl</STRONG>)   or   <STRONG>set_left_margin_parm</STRONG>  (<STRONG>smglp</STRONG>)
            capabilities needed to support the feature.
 
-       <STRONG>o</STRONG>   Unlike <STRONG><A HREF="tput.1.html">tput(1)</A></STRONG>, <EM>tabs</EM> has no specification in X/Open Curses Issue 7.
+       <STRONG>o</STRONG>   Unlike <EM>tput</EM>, <EM>tabs</EM> has no specification in X/Open Curses Issue 7.
 
        The <STRONG>-d</STRONG> (debug) and  <STRONG>-n</STRONG>  (no-op)  options  are  <EM>ncurses</EM>  extensions  not
        provided by other implementations.
@@ -215,7 +215,7 @@
        same  year);  it  supported an option "-n" to set the first tab stop at
        the left margin.  That option is not specified by POSIX.
 
-       The PWB/Unix <STRONG>tabs</STRONG> utility returned  in  System  III  (1980),  and  used
+       The PWB/Unix <EM>tabs</EM> utility returned  in  System  III  (1980),  and  used
        built-in  tables  to  support  a half-dozen hardcopy terminal (printer)
        types.  It also had logic to support setting the left margin,  as  well
        as a feature for copying the tab settings from a file.
@@ -231,14 +231,14 @@
        motivation,  though an introductory comment "and optionally adjusts the
        margin"  remains,  overlooked  in  the  removal.   The   <EM>tabs</EM>   utility
        documented  in Issues 6 and later has no mechanism for setting margins.
-       The <STRONG>+m</STRONG> option in <EM>ncurses</EM> <EM>tabs</EM> (<STRONG>tabs</STRONG>) differs from the SVr4  feature  by
-       using terminal capabilities rather than built-in tables.
+       The <STRONG>+m</STRONG> option in <EM>ncurses</EM>'s implementation differs from the SVr4 feature
+       by using terminal capabilities rather than built-in tables.
 
        POSIX   documents   no  limit  on  the  number  of  tab  stops.   Other
        implementations impose one; the limit is 20 in PWB/Unix's <EM>tabs</EM> utility.
        While  some  terminals may not accept an arbitrary number of tab stops,
-       <EM>ncurses</EM> <STRONG>tabs</STRONG> attempts to set tab stops up to the right  margin  if  the
-       list thereof is sufficiently long.
+       <EM>ncurses</EM> attempts to set tab stops up to the right margin  if  the  list
+       thereof is sufficiently long.
 
        The  "Rationale" section of the Issue 6 <EM>tabs</EM> reference page details how
        the committee considered  redesigning  the  <EM>tabs</EM>  and  <EM>tput</EM>  utilities,
@@ -257,7 +257,7 @@
 
 
 
-ncurses 6.5                       2024-09-14                           <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
+ncurses 6.5                       2024-09-21                           <STRONG><A HREF="tabs.1.html">tabs(1)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: doc/html/man/terminfo.5.html
--- ncurses-6.5-20240914+/doc/html/man/terminfo.5.html	2024-09-14 20:23:29.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/terminfo.5.html	2024-09-21 18:35:29.000000000 +0000
@@ -71,7 +71,7 @@
        have, by specifying how to perform screen operations, and by specifying
        padding requirements and initialization sequences.
 
-       This document describes <EM>ncurses</EM> version 6.5 (patch 20240914).
+       This document describes <EM>ncurses</EM> version 6.5 (patch 20240921).
 
 
 </PRE><H3><a name="h3-terminfo-Entry-Syntax"><EM>terminfo</EM> Entry Syntax</a></H3><PRE>
@@ -2108,7 +2108,7 @@
 
        <STRONG>o</STRONG>   Tektronix-like terminals have a predefined set of <EM>N</EM> colors (where <EM>N</EM>
            is usually 8), and can set character-cell foreground and background
-           characters independently, mixing them into <EM>N</EM> * <EM>N</EM> color pairs.
+           colors independently, mixing them into <EM>N</EM> * <EM>N</EM> color pairs.
 
        <STRONG>o</STRONG>   On  HP-like  terminals,  the  user  must  set  each  color  pair up
            separately  (foreground  and  background  are   not   independently
Index: doc/html/man/wresize.3x.html
--- ncurses-6.5-20240914+/doc/html/man/wresize.3x.html	2024-07-27 23:11:34.000000000 +0000
+++ ncurses-6.5-20240922/doc/html/man/wresize.3x.html	2024-09-22 18:37:13.000000000 +0000
@@ -28,19 +28,19 @@
   * authorization.                                                           *
   ****************************************************************************
   * Author: Thomas E. Dickey 1996
-  * @Id: wresize.3x,v 1.40 2024/07/27 20:08:58 tom Exp @
+  * @Id: wresize.3x,v 1.42 2024/09/21 23:48:27 tom Exp @
 -->
 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
 <HTML>
 <HEAD>
 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
 <meta name="generator" content="Manpage converted by man2html - see https://invisible-island.net/scripts/readme.html#others_scripts">
-<TITLE>wresize 3x 2024-07-27 ncurses 6.5 Library calls</TITLE>
+<TITLE>wresize 3x 2024-09-21 ncurses 6.5 Library calls</TITLE>
 <link rel="author" href="mailto:bug-ncurses@gnu.org">
 
 </HEAD>
 <BODY>
-<H1 class="no-header">wresize 3x 2024-07-27 ncurses 6.5 Library calls</H1>
+<H1 class="no-header">wresize 3x 2024-09-21 ncurses 6.5 Library calls</H1>
 <PRE>
 <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>                      Library calls                     <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>
 
@@ -60,27 +60,28 @@
 </PRE><H2><a name="h2-DESCRIPTION">DESCRIPTION</a></H2><PRE>
        <STRONG>wresize</STRONG>,  an  <EM>ncurses</EM>  extension  to  the  <EM>curses</EM>  library, reallocates
        storage for <EM>win</EM>, adjusting its dimensions to  <EM>lines</EM>  and  <EM>columns</EM>.   If
-       either  dimension  is  larger than its current value, <EM>ncurses</EM> fills the
-       expanded part of the window with  the  blank  character  configured  by
-       <STRONG><A HREF="curs_bkgd.3x.html">wbkgdset(3x)</A></STRONG> (wide-character API users: <STRONG><A HREF="curs_bkgrnd.3x.html">wbkgrndset(3x)</A></STRONG>).
+       either dimension is larger than its current value, <EM>ncurses</EM> the expanded
+       part of the window is filled with blanks merged with current background
+       rendition  (configured  by  <STRONG><A HREF="curs_bkgd.3x.html">wbkgdset(3x)</A></STRONG>,  or  by  wide-character  API:
+       <STRONG><A HREF="curs_bkgrnd.3x.html">wbkgrndset(3x)</A></STRONG>).
 
 
 </PRE><H2><a name="h2-RETURN-VALUE">RETURN VALUE</a></H2><PRE>
-       <STRONG>wresize</STRONG>  returns  <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.  It fails if either
-       <EM>lines</EM> or <EM>columns</EM> is less than or equal to zero, or if an  error  occurs
+       <STRONG>wresize</STRONG> returns <STRONG>OK</STRONG> on success and <STRONG>ERR</STRONG> on failure.  It fails  if  either
+       <EM>lines</EM>  or  <EM>columns</EM> is less than or equal to zero, or if an error occurs
        while (re)allocating memory for <EM>win</EM>.
 
 
 </PRE><H2><a name="h2-NOTES">NOTES</a></H2><PRE>
-       The  only restriction placed on the values of <EM>lines</EM> and <EM>columns</EM> is that
-       they be greater than zero.  They are <EM>not</EM> compared to the dimensions  of
-       the  <EM>curses</EM> screen; this keeps the logic of <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> simple.  The
-       caller must ensure that  <EM>win</EM>'s  dimensions  fit  within  those  of  the
+       The only restriction placed on the values of <EM>lines</EM> and <EM>columns</EM> is  that
+       they  be greater than zero.  They are <EM>not</EM> compared to the dimensions of
+       the <EM>curses</EM> screen; this keeps the logic of <STRONG><A HREF="resizeterm.3x.html">resizeterm(3x)</A></STRONG> simple.   The
+       caller  must  ensure  that  <EM>win</EM>'s  dimensions  fit  within those of the
        screen.
 
 
 </PRE><H2><a name="h2-EXTENSIONS">EXTENSIONS</a></H2><PRE>
-       <STRONG>wresize</STRONG>  is  an <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> extension, and is not found in SVr4 <EM>curses</EM>,
+       <STRONG>wresize</STRONG> is an <STRONG><A HREF="ncurses.3x.html">ncurses(3x)</A></STRONG> extension, and is not found in  SVr4  <EM>curses</EM>,
        4.4BSD <EM>curses</EM>, or any other previous <EM>curses</EM> implementation.
 
 
@@ -88,14 +89,14 @@
        Applications employing <EM>ncurses</EM> extensions should condition their use on
        the visibility of the <STRONG>NCURSES_VERSION</STRONG> preprocessor macro.
 
-       NetBSD  <EM>curses</EM> adopted <EM>wresize</EM> in 2001 (release 1.5.3), and <EM>PDCurses</EM> in
+       NetBSD <EM>curses</EM> adopted <EM>wresize</EM> in 2001 (release 1.5.3), and <EM>PDCurses</EM>  in
        2004 (version 2.7).
 
        It is not possible to resize windows with SVr4 <EM>curses</EM>.
 
 
 </PRE><H2><a name="h2-HISTORY">HISTORY</a></H2><PRE>
-       Thomas Dickey developed <EM>wresize</EM> as an extension to BSD <EM>curses</EM> in  1988,
+       Thomas  Dickey developed <EM>wresize</EM> as an extension to BSD <EM>curses</EM> in 1988,
        and brought it to <EM>ncurses</EM> in mid-1995.
 
 
@@ -108,7 +109,7 @@
 
 
 
-ncurses 6.5                       2024-07-27                       <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>
+ncurses 6.5                       2024-09-21                       <STRONG><A HREF="wresize.3x.html">wresize(3x)</A></STRONG>
 </PRE>
 <div class="nav">
 <ul>
Index: man/curs_addch.3x
Prereq:  1.98 
--- ncurses-6.5-20240914+/man/curs_addch.3x	2024-07-27 20:08:58.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_addch.3x	2024-09-21 18:03:23.000000000 +0000
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_addch.3x,v 1.98 2024/07/27 20:08:58 tom Exp $
-.TH curs_addch 3X 2024-07-27 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_addch.3x,v 1.100 2024/09/21 18:03:23 tom Exp $
+.TH curs_addch 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -149,8 +149,9 @@
 followed by
 .RB \%( w ) refresh .
 .I curses
-interprets these functions as a hint that only a single character is
-being output;
+interprets these functions as a hint to its optimizer
+that only a single character cell in the window
+is being altered between refreshes;
 for non-control characters,
 a considerable performance gain may be enjoyed by employing them.
 .\" TODO: Combine the following with the "Line Drawing" subsection of
Index: man/curs_attr.3x
Prereq:  1.110 
--- ncurses-6.5-20240914+/man/curs_attr.3x	2024-07-27 19:57:55.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_attr.3x	2024-09-21 23:39:04.000000000 +0000
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_attr.3x,v 1.110 2024/07/27 19:57:55 tom Exp $
-.TH curs_attr 3X 2024-07-27 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_attr.3x,v 1.113 2024/09/21 23:39:04 tom Exp $
+.TH curs_attr 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -589,7 +589,7 @@
 Goodheart did not mention the background character or the
 .I \%cchar_t
 type.
-Those are respectively SVr4 and X/Open features.
+Those are respectively SVr3.1 and X/Open features.
 He did mention the \fBA_\fP constants, but did not indicate their values.
 Those were not the same in different systems,
 even for those marked as System V.
Index: man/curs_bkgd.3x
Prereq:  1.63 
--- ncurses-6.5-20240914+/man/curs_bkgd.3x	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_bkgd.3x	2024-09-22 18:16:03.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_bkgd.3x,v 1.63 2024/09/14 20:06:50 tom Exp $
-.TH curs_bkgd 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_bkgd.3x,v 1.64 2024/09/22 18:16:03 tom Exp $
+.TH curs_bkgd 3X 2024-09-22 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -64,28 +64,31 @@
 \fBchtype getbkgd(WINDOW *\fIwin\fP);
 .fi
 .SH DESCRIPTION
-The
-.I background
-of a
+Every
 .I curses
-window
-(in the library's non-wide configuration)
-is a
+window has a background property.
+In the library's non-wide configuration,
+this property is a
 .I \%chtype
-combining a set of attributes
-(see \fB\%curs_attr\fP(3X))
-with a character called the
-.I "blank character."
-.PP
-The blank character is a spacing character that populates a window's
-character cells when their contents are erased without replacement.
-The background's attributes are combined with all non-blank characters
-written to the window,
+which combines a set of attributes with the
+.I "background character"
+(see \fB\%curs_attr\fP(3X)).
+The background character is a spacing character.
+.PP
+When erasing parts of the screen,
+.I curses
+fills the cells with the background character.
+.I curses
+also uses the window background when writing characters to the screen:
+.bP
+The attribute part of the background is combined with all
+non-blank characters that are written into the window,
 as with the \fB\%waddch\fP(3X) and \fB\%winsch\fP(3X) families of
 functions.
+.bP
+Both the character and attribute parts of the background are combined with
+blank characters that are written into the window.
 .PP
-The blank character and attributes of the background combine with
-characters written to the window as described below.
 The background becomes a property of the character and moves with it
 through any scrolling and insert/delete line/character operations.
 .PP
@@ -111,11 +114,11 @@
 whether or not it is blank.
 .bP
 .I \%ncurses
-first compares the cell's character to the previously specified blank
-character;
+first compares the cell's character to the previously specified
+background character;
 if they match,
 .I \%ncurses
-writes the new blank character to the cell.
+writes the new background character to the cell.
 .bP
 .I \%ncurses
 then checks if the cell uses color,
@@ -141,8 +144,12 @@
 first removing those that may have come from the current background,
 and then adding attributes from the new background.
 .PP
+If the new background's character is nonspacing,
+.I \%ncurses
+reuses the old background character,
+except for one special case:
 .I \%ncurses
-treats a background character value of zero (0) as a blank character.
+treats a background character value of zero (0) as a space.
 .PP
 If the terminal does not support color,
 or if color has not been initialized with \fB\%start_color\fP(3X),
Index: man/curs_bkgrnd.3x
Prereq:  1.44 
--- ncurses-6.5-20240914+/man/curs_bkgrnd.3x	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_bkgrnd.3x	2024-09-22 18:23:50.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_bkgrnd.3x,v 1.44 2024/09/14 20:06:50 tom Exp $
-.TH curs_bkgrnd 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_bkgrnd.3x,v 1.46 2024/09/22 18:23:50 tom Exp $
+.TH curs_bkgrnd 3X 2024-09-22 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -66,29 +66,31 @@
 \fBint wgetbkgrnd(WINDOW *\fIwin\fP, cchar_t *\fIwch\fP);
 .fi
 .SH DESCRIPTION
-The
-.I background
-of a
+Every
 .I curses
-window
-(in the library's wide configuration)
-is a
+window has a background property.
+In the library's wide configuration,
+this property is a
 .I \%cchar_t
-combining a set of attributes
+which combines a set of attributes with the
+.I "background character"
 (see \fB\%curs_attr\fP(3X))
-with the window's blank character.
+The background character is a spacing character.
 .PP
-The
-.I "blank character"
-is a spacing complex character that populates a window's character cells
-when their contents are erased without replacement.
-The background's attributes are combined with all non-blank characters
-written to the window,
+When erasing parts of the screen,
+.I curses
+fills the cells with the background character.
+.I curses
+also uses the window background when writing characters to the screen:
+.bP
+The attribute part of the background is combined with all
+non-blank characters that are written into the window,
 as with the \fB\%wadd_wch\fP(3X) and \fB\%wins_wch\fP(3X) families of
 functions.
+.bP
+Both the character and attribute parts of the background are combined with
+blank characters that are written into the window.
 .PP
-The blank character and attributes of the background combine with
-characters written to the window as described below.
 The background becomes a property of the character and moves with it
 through any scrolling and insert/delete line/character operations.
 .PP
@@ -114,11 +116,11 @@
 whether or not it is blank.
 .bP
 .I \%ncurses
-first compares the cell's character to the previously specified blank
-character;
+first compares the cell's character to the previously specified
+background character;
 if they match,
 .I \%ncurses
-writes the new blank character to the cell.
+writes the new background character to the cell.
 .bP
 .I \%ncurses
 then checks if the cell uses color,
@@ -144,8 +146,12 @@
 first removing those that may have come from the current background,
 and then adding attributes from the new background.
 .PP
+If the new background's character is nonspacing,
+.I \%ncurses
+reuses the old background character,
+except for one special case:
 .I \%ncurses
-treats a background character value of zero (0) as a blank character.
+treats a background character value of zero (0) as a space.
 .PP
 If the terminal does not support color,
 or if color has not been initialized with \fB\%start_color\fP(3X),
Index: man/curs_delch.3x
Prereq:  1.37 
--- ncurses-6.5-20240914+/man/curs_delch.3x	2024-07-27 20:14:16.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_delch.3x	2024-09-21 23:43:41.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_delch.3x,v 1.37 2024/07/27 20:14:16 tom Exp $
-.TH curs_delch 3X 2024-07-27 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_delch.3x,v 1.39 2024/09/21 23:43:41 tom Exp $
+.TH curs_delch 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -60,7 +60,7 @@
 .IR win .
 It moves all characters to the right of the cursor on the same line to
 the left one position and replaces the contents of the rightmost
-position on the line with the window's blank character;
+position on the line with the window's background character;
 see \fB\%bkgd\fP(3X)
 (wide-character API users: \fB\%bkgrnd\fP(3X)).
 The cursor position does not change
Index: man/curs_deleteln.3x
Prereq:  1.40 
--- ncurses-6.5-20240914+/man/curs_deleteln.3x	2024-07-27 20:12:02.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_deleteln.3x	2024-09-22 18:35:00.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_deleteln.3x,v 1.40 2024/07/27 20:12:02 tom Exp $
-.TH curs_deleteln 3X 2024-07-27 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_deleteln.3x,v 1.41 2024/09/22 18:35:00 tom Exp $
+.TH curs_deleteln 3X 2024-09-22 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -69,15 +69,18 @@
 .I curses
 then fills the bottom line of
 .I win
-with the blank character
+with the background character
 configured by \fB\%wbkgdset\fP(3X)
 (wide-character API users: \fB\%wbkgrndset\fP(3X)).
 The cursor position does not change.
 .PP
 .B \%winsertln
-inserts a line of blank characters above the line at the cursor in
-.IR win ;
-the content of the window's bottom line is lost.
+inserts a new, empty line of characters above the line at the cursor in
+.IR win ,
+shifting the existing lines down by one.
+The content of the window's bottom line is lost;
+.I curses
+fills the new line with the background character.
 The cursor position does not change.
 .PP
 .B \%winsdelln
Index: man/curs_initscr.3x
Prereq:  1.77 
--- ncurses-6.5-20240914+/man/curs_initscr.3x	2024-09-11 21:00:07.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_initscr.3x	2024-09-21 17:59:36.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_initscr.3x,v 1.77 2024/09/11 21:00:07 tom Exp $
-.TH curs_initscr 3X 2024-09-11 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_initscr.3x,v 1.79 2024/09/21 17:59:36 tom Exp $
+.TH curs_initscr 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -56,65 +56,149 @@
 .nf
 \fB#include <curses.h>
 .PP
-\fBWINDOW *initscr(void);
+\fBWINDOW * initscr(void);
 \fBint endwin(void);
 .PP
 \fBbool isendwin(void);
 .PP
-\fBSCREEN *newterm(const char *\fItype\fP, FILE *\fIoutf\fP, FILE *\fIinf\fP);
-\fBSCREEN *set_term(SCREEN *\fInew\fP);
-\fBvoid delscreen(SCREEN* \fIsp\fP);
+\fBSCREEN * newterm(const char * \fItype\fP, FILE * \fIoutf\fP, FILE * \fIinf\fP);
+\fBSCREEN * set_term(SCREEN * \fInew\fP);
+\fBvoid delscreen(SCREEN * \fIsp\fP);
 .fi
 .SH DESCRIPTION
 .SS initscr
-\fBinitscr\fP is normally the first \fBcurses\fP routine to call when
-initializing a program.
-A few special routines sometimes need to be called before it;
-these are \fBslk_init\fP(3X), \fBfilter\fP, \fBripoffline\fP,
-\fBuse_env\fP.
-For multiple-terminal applications,
-\fBnewterm\fP may be called before \fBinitscr\fP.
-.PP
-The initscr code determines the terminal type and initializes all \fBcurses\fP
-data structures.
-\fBinitscr\fP also causes the first call to \fB\%refresh\fP(3X)
-to clear the screen.
-If errors occur, \fBinitscr\fP writes an appropriate error
-message to standard error and exits;
-otherwise, a pointer is returned to \fBstdscr\fP.
+.B \%initscr
+determines the terminal type and initializes the library's
+.IR SCREEN ","
+.IR WINDOW ","
+and other data structures.
+It is normally the first
+.I curses
+function call a program performs.
+However,
+an application with unusual needs might employ a few other
+.I curses
+functions beforehand:
+.bP
+\fB\%slk_init\fP(3X) to set up soft-label keys;
+.bP
+\fB\%filter\fP(3X) if the program is designed to operate in a process
+pipeline;
+.bP
+\fB\%ripoffline\fP(3X) to reserve up to five lines at the top and/or
+bottom of the screen from management by
+.BR \%stdscr ","
+the standard
+.I curses
+window;
+and
+.bP
+\fB\%use_env\fP(3X) and/or \fB\%use_tioctl\fP(3X) to configure use of
+the process environment and operating system's terminal driver,
+respectively,
+when determining the dimensions of the terminal display.
+.PP
+Further,
+a
+.I curses
+program might call
+.B \%newterm
+prior to or instead of
+.B \%initscr
+in two specialized cases described in its subsection below.
+.PP
+.B \%initscr
+causes the first \fB\%refresh\fP(3X) call to clear the screen.
+If errors occur,
+.B \%initscr
+writes an appropriate diagnostic message to the standard error stream
+and exits;
+otherwise,
+it returns a pointer to
+.BR stdscr "."
 .SS newterm
-A program that outputs to more than one terminal should use the \fBnewterm\fP
-routine for each terminal instead of \fBinitscr\fP.
-A program that needs to inspect capabilities,
-so it can continue to run in a line-oriented mode if the
-terminal cannot support a screen-oriented program, would also use
-\fBnewterm\fP.
-.PP
-The routine \fBnewterm\fP should be called once for each terminal.
-It returns a variable of type \fISCREEN *\fP which should be saved
-as a reference to that terminal.
-\fBnewterm\fP's arguments are
-.bP
-the \fItype\fP of the terminal to be used in place of \fB$TERM\fP,
-.bP
-an output stream connected to the terminal, and
-.bP
-an input stream connected to the terminal
-.PP
-If the \fItype\fP parameter is \fBNULL\fP, \fB$TERM\fP will be used.
-.PP
-The file descriptor of the output stream is passed to \fBsetupterm\fP(3X),
-which returns a pointer to a \fI\%TERMINAL\fP structure.
-\fBnewterm\fP's return value holds a pointer to the \fI\%TERMINAL\fP structure.
+An application that manages multiple terminals should call
+.B \%newterm
+once for each such device
+.I instead
+of
+.BR \%initscr "."
+.BR \%newterm 's
+arguments are
+.bP
+the
+.I type
+of the associated terminal,
+or
+.I NULL
+to use the
+.I TERM
+environment variable;
+.bP
+an output stream
+.I outf
+connected to the terminal;
+and
+.bP
+an input stream
+.I inf
+connected to the terminal.
+It returns a variable of structure type
+.I SCREEN
+.BR * ","
+which should be saved for later use with
+.B \%set_term
+and
+.BR \%delscreen "."
+.PP
+.B \%newterm
+passes the file descriptor of the output stream to the
+.I \%term\%info
+function \fB\%setupterm\fP(3X),
+which returns a pointer to a
+.I \%TERMINAL
+structure that
+.B \%newterm
+stores in the
+.I SCREEN
+it returns to the application.
+.PP
+An application that needs to inspect a terminal type's capabilities,
+so that it can continue to run in a line-oriented mode
+if the terminal cannot support a screen-oriented program,
+would also use
+.BR \%newterm "."
+If at most one terminal connection is needed,
+the programmer could perform such a capability test,
+decide which mode in which to operate,
+then call
+.B \%delscreen
+on the pointer returned by
+.BR \%newterm ","
+and proceed with either
+.B \%initscr
+or a
+.RI non- curses
+interface.
 .SS endwin
 The program must also call
-\fBendwin\fP for each terminal being used before exiting from \fBcurses\fP.
-If \fBnewterm\fP is called more than once for the same terminal, the first
-terminal referred to must be the last one for which \fBendwin\fP is called.
-.PP
-A program should always call \fBendwin\fP before exiting or escaping from
-\fBcurses\fP mode temporarily.
-This routine
+.B \%endwin
+for each terminal being used before exiting from
+.IR curses "."
+If
+.B \%newterm
+is called more than once for the same terminal,
+the first terminal referred to must be the last one for which
+.B \%endwin
+is called.
+.PP
+A program should always call
+.B \%endwin
+before exiting the application
+or temporarily suspending
+.IR curses "'s"
+management of the terminal.
+.BR \%endwin ":"
 .bP
 resets colors to correspond with the default color pair 0,
 .bP
@@ -122,132 +206,200 @@
 .bP
 clears the remainder of the line so that it uses the default colors,
 .bP
-sets the cursor to normal visibility (see \fBcurs_set\fP(3X)),
-.bP
-stops cursor-addressing mode using the \fIexit_ca_mode\fP terminal capability,
+sets the cursor to normal visibility
+(see \fB\%curs_set\fP(3X)),
 .bP
-restores tty modes (see \fBreset_shell_mode\fP(3X)).
-.PP
-Calling \fB\%refresh\fP(3X) or \fBdoupdate\fP(3X) after a
-temporary escape causes the program to resume visual mode.
+if applicable,
+stops cursor-addressing mode using the
+.B \%exit_ca_mode
+.RB \%( rmcup )
+terminal capability,
+and
+.bP
+restores terminal modes (see \fB\%reset_shell_mode\fP(3X)).
+.PP
+Calling \fB\%refresh\fP(3X) or \fB\%doupdate\fP(3X) after a
+temporary escape causes
+.I curses
+to resume managing the terminal.
 .SS isendwin
-The \fBisendwin\fP routine returns \fBTRUE\fP if \fBendwin\fP has been
-called without any subsequent calls to \fB\%wrefresh\fP,
-and \fBFALSE\fP otherwise.
+.B \%isendwin
+returns
+.B TRUE
+if
+.B \%endwin
+has been called without any subsequent calls to \fB\%wrefresh\fP(3X),
+and
+.B FALSE
+otherwise.
 .SS set_term
-The \fBset_term\fP routine is used to switch between different terminals.
-The screen reference \fInew\fP becomes the new current terminal.
-The previous terminal is returned by the routine.
-This is the only routine which manipulates \fISCREEN\fP pointers;
-all other routines affect only the current terminal.
+.B \%set_term
+re-orients the
+.I curses
+library's operations to another terminal
+when the application has arranged to manage more than one with
+.BR \%newterm "."
+.B \%set_term
+expects a
+.I SCREEN
+pointer previously returned by
+.B \%newterm
+as an argument,
+and returns the previous one.
+.B \%set_term
+is the only
+.I curses
+API function that manipulates
+.I SCREEN
+pointers;
+all others affect only the current terminal.
 .SS delscreen
-The \fBdelscreen\fP routine frees storage associated with the
-\fISCREEN\fP data structure.
-The \fBendwin\fP routine does not do
-this, so \fBdelscreen\fP should be called after \fBendwin\fP if a
-particular \fISCREEN\fP is no longer needed.
+.B \%delscreen
+frees the storage backing the supplied
+.I SCREEN
+pointer argument.
+.B \%endwin
+does not,
+so that an application can resume managing a terminal with
+.I curses
+after a
+(possibly conditional or temporary)
+suspension;
+see \fB\%curs_kernel\fP(3X).
+Call
+.B \%delscreen
+after
+.B \%endwin
+when a particular
+.I SCREEN
+structure
+is no longer needed.
 .SH RETURN VALUE
-\fBendwin\fP returns the integer \fBERR\fP upon failure and \fBOK\fP
-upon successful completion.
-.PP
-Routines that return pointers always return \fBNULL\fP on error.
+.B \%endwin
+returns
+.B OK
+on success and
+.B ERR
+on failure.
 .PP
-X/Open defines no error conditions.
-In this implementation
+In
+.IR \%ncurses ","
 .bP
-\fBendwin\fP returns
+.B \%endwin
+returns
 .B ERR
 if
 .RS
 .bP
-the terminal was not initialized, or
+the terminal was not initialized,
 .bP
-\fBendwin\fP is called more than once without updating the screen, or
+.B \%endwin
+is called more than once without updating the screen,
+or
 .bP
-\fBreset_shell_mode\fP(3X) return
+\fB\%reset_shell_mode\fP(3X) returns
 .BR ERR "."
 .RE
 .bP
-\fBnewterm\fP
+.B \%newterm
 returns
 .B ERR
-if it cannot allocate the data structures for the screen,
-or for the top-level windows within the screen,
-i.e.,
-\fBcurscr\fP, \fBnewscr\fP, or \fBstdscr\fP.
-.bP
-\fBset_term\fP
-returns no error.
+if it cannot allocate storage for the
+.I SCREEN
+data structure
+or the top-level windows thereof:
+.BR \%curscr ","
+.BR \%newscr ","
+and
+.BR \%stdscr "."
+.PP
+Functions that return pointers return
+.I NULL
+on error.
+In
+.IR \%ncurses ","
+.B \%set_term
+does not fail.
 .SH PORTABILITY
-These functions were described in X/Open Curses, Issue 4.
-As of 2015, the current document is X/Open Curses, Issue 7.
+X/Open Curses,
+Issue 4 describes these functions.
+It specifies no error conditions for them.
 .SS Differences
 X/Open Curses specifies that portable applications must not
-call \fBinitscr\fP more than once:
+call \fB\%initscr\fP more than once:
 .bP
-The portable way to use \fBinitscr\fP is once only,
+The portable way to use \fB\%initscr\fP is once only,
 using \fB\%refresh\fP(3X)
-to restore the screen after \fBendwin\fP.
+to restore the screen after \fB\%endwin\fP.
 .bP
-This implementation allows using \fBinitscr\fP after \fBendwin\fP.
+This implementation allows using \fB\%initscr\fP after \fB\%endwin\fP.
 .PP
 Old versions of curses, e.g., BSD 4.4, would return a null pointer
-from \fBinitscr\fP when an error is detected, rather than exiting.
-It is safe but redundant to check the return value of \fBinitscr\fP
+from \fB\%initscr\fP when an error is detected, rather than exiting.
+It is safe but redundant to check the return value of \fB\%initscr\fP
 in X/Open Curses.
 .PP
-Calling \fBendwin\fP does not dispose of the memory allocated in \fBinitscr\fP
-or \fBnewterm\fP.
+Calling \fB\%endwin\fP does not dispose of the memory allocated in
+\fB\%initscr\fP or \fB\%newterm\fP.
 Deleting a \fISCREEN\fP provides a way to do this:
 .bP
-X/Open Curses does not say what happens to \fI\%WINDOW\fPs when \fBdelscreen\fP
+X/Open Curses does not say what happens to \fI\%WINDOW\fPs when
+\fB\%delscreen\fP
 \*(``frees storage associated with the \fISCREEN\fP\*(''
 nor does the SVr4 documentation help,
-adding that it should be called after \fBendwin\fP if a \fISCREEN\fP
+adding that it should be called after \fB\%endwin\fP if a \fISCREEN\fP
 is no longer needed.
 .bP
 However, \fI\%WINDOW\fPs are implicitly associated with a \fISCREEN\fP.
-so that it is reasonable to expect \fBdelscreen\fP to deal with these.
+so that it is reasonable to expect \fB\%delscreen\fP to deal with these.
 .bP
 SVr4 curses deletes the standard \fI\%WINDOW\fP structures
-\fBstdscr\fP and \fBcurscr\fP as well as a work area \fBnewscr\fP.
+\fB\%stdscr\fP and \fB\%curscr\fP as well as a work area \fB\%newscr\fP.
 SVr4 curses ignores other windows.
 .bP
 Since version 4.0 (1996),
 \fI\%ncurses\fP has maintained a list of all windows for each screen,
-using that information to delete those windows when \fBdelscreen\fP is called.
+using that information to delete those windows when \fB\%delscreen\fP is
+called.
 .bP
 NetBSD copied this feature of \fI\%ncurses\fP in 2001.
 PDCurses follows the SVr4 model,
 deleting only the standard \fI\%WINDOW\fP structures.
 .SS "High-level versus Low-level"
 Different implementations may disagree regarding the level of some functions.
-For example, \fISCREEN\fP (returned by \fBnewterm\fP) and
-\fI\%TERMINAL\fP (returned by \fBsetupterm\fP(3X)) hold file descriptors for
-the output stream.
-If an application switches screens using \fBset_term\fR,
-or switches terminals using \fBset_curterm\fP(3X),
+For example, \fISCREEN\fP (returned by \fB\%newterm\fP) and
+\fI\%TERMINAL\fP (returned by \fB\%setupterm\fP(3X)) hold file
+descriptors for the output stream.
+If an application switches screens using \fB\%set_term\fR,
+or switches terminals using \fB\%set_curterm\fP(3X),
 applications which use the output file descriptor can have different
 behavior depending on which structure holds the corresponding descriptor.
-.PP
-For example
 .bP
-NetBSD's \fBbaudrate\fP(3X) function uses the descriptor in \fI\%TERMINAL\fP.
-\fI\%ncurses\fP and SVr4 use the descriptor in \fISCREEN\fP.
+NetBSD's
+.I \%baudrate
+function uses the descriptor in
+.IR \%TERMINAL "."
+.I \%ncurses
+and SVr4
+.I curses
+use the descriptor in
+.IR SCREEN "."
 .bP
 NetBSD and \fI\%ncurses\fP use the descriptor
 in \fI\%TERMINAL\fP
 for terminal I/O modes,
 e.g.,
-\fBdef_shell_mode\fP(3X),
-\fBdef_prog_mode\fP(3X).
+\fB\%def_shell_mode\fP(3X),
+\fB\%def_prog_mode\fP(3X).
 SVr4 curses uses the descriptor in \fISCREEN\fP.
-.SS "Unset \fITERM\fP Variable"
-If the \fITERM\fP variable is missing or empty, \fBinitscr\fP uses the
+.SS "Unset \f(BITERM\fP Variable"
+If the \fITERM\fP variable is missing or empty, \fB\%initscr\fP uses the
 value \*(``unknown\*('',
-which normally corresponds to a terminal entry with the \fIgeneric\fP
-(\fIgn\fP) capability.
-Generic entries are detected by \fBsetupterm\fP(3X)
+which normally corresponds to a terminal entry with the
+.B \%generic
+.RB ( gn )
+capability.
+Generic entries are detected by \fB\%setupterm\fP(3X)
 and cannot be used for full-screen operation.
 Other implementations may handle
 a missing/empty \fITERM\fP variable differently.
@@ -271,7 +423,7 @@
 .RE
 .PP
 This implementation establishes signal handlers during initialization,
-e.g., \fBinitscr\fP or \fBnewterm\fP.
+e.g., \fB\%initscr\fP or \fB\%newterm\fP.
 Applications which must handle these signals should set up the corresponding
 handlers \fIafter\fP initializing the library:
 .TP 5
@@ -283,18 +435,18 @@
 Walking the \fISCREEN\fP list is unsafe, since all list management
 is done without any signal blocking.
 .bP
-On systems which have \fBREENTRANT\fP turned on, \fBset_term\fP uses
+On systems which have \fB\%REENTRANT\fP turned on, \fB\%set_term\fP uses
 functions which could deadlock or misbehave in other ways.
 .bP
-\fBendwin\fP calls other functions,
+\fB\%endwin\fP calls other functions,
 many of which use \fI\%stdio\fP(3) or other library functions which are
 clearly unsafe.
 .RE
 .TP 5
 .B SIGTERM
-This uses the same handler as \fBSIGINT\fP, with the same limitations.
+This uses the same handler as \fB\%SIGINT\fP, with the same limitations.
 It is not mentioned in X/Open Curses, but is more suitable for this
-purpose than \fBSIGQUIT\fP (which is used in debugging).
+purpose than \fB\%SIGQUIT\fP (which is used in debugging).
 .TP 5
 .B SIGTSTP
 This handles the \fIstop\fP signal, used in job control.
@@ -324,8 +476,8 @@
 .BR \%KEY_RESIZE "."
 .RE
 .IP
-At the same time, \fI\%ncurses\fP calls \fBresizeterm\fP to adjust the
-standard screen \fBstdscr\fP,
+At the same time, \fI\%ncurses\fP calls \fB\%resizeterm\fP to adjust the
+standard screen \fB\%stdscr\fP,
 and update other data such as \fBLINES\fP and \fBCOLS\fP.
 .SH SEE ALSO
 \fB\%curses\fP(3X),
Index: man/curs_inopts.3x
Prereq:  1.77 
--- ncurses-6.5-20240914+/man/curs_inopts.3x	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_inopts.3x	2024-09-21 18:05:49.000000000 +0000
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_inopts.3x,v 1.77 2024/09/14 20:06:50 tom Exp $
-.TH curs_inopts 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_inopts.3x,v 1.79 2024/09/21 18:05:49 tom Exp $
+.TH curs_inopts 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -366,7 +366,7 @@
 when it handles the interrupt,
 suspend,
 or quit characters under the normal (\*(``cooked\*('')
-or cbreak line discplines on POSIX systems;
+or cbreak line disciplines on POSIX systems;
 see \fI\%termios\fP(3).
 The default behavior is inherited from the terminal driver settings.
 Calling
Index: man/curs_kernel.3x
Prereq:  1.70 
--- ncurses-6.5-20240914+/man/curs_kernel.3x	2024-09-14 20:14:54.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_kernel.3x	2024-09-21 18:05:20.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_kernel.3x,v 1.70 2024/09/14 20:14:54 tom Exp $
-.TH curs_kernel 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_kernel.3x,v 1.72 2024/09/21 18:05:20 tom Exp $
+.TH curs_kernel 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -297,8 +297,8 @@
 .B \%ripoffline
 returns
 .B ERR
-if the maximum number of ripped-off lines
-exceeds the maximum (5).
+if the accumulated quantity of ripped-off lines
+would exceed the maximum (5).
 .SH NOTES
 .B \%getsyx
 is a macro;
Index: man/curs_move.3x
Prereq:  1.44 
--- ncurses-6.5-20240914+/man/curs_move.3x	2024-07-27 20:11:42.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_move.3x	2024-09-21 18:03:44.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_move.3x,v 1.44 2024/07/27 20:11:42 tom Exp $
-.TH curs_move 3X 2024-07-27 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_move.3x,v 1.46 2024/09/21 18:03:44 tom Exp $
+.TH curs_move 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -85,9 +85,9 @@
 In
 .IR \%ncurses ,
 .B \%wmove
-fails if its
-.I \%WINDOW
-pointer argument is
+fails if
+.I win
+is
 .BR NULL .
 .SH NOTES
 .B \%move
Index: man/curs_scr_dump.3x
Prereq:  1.47 
--- ncurses-6.5-20240914+/man/curs_scr_dump.3x	2024-06-08 20:33:56.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_scr_dump.3x	2024-09-21 09:30:22.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scr_dump.3x,v 1.47 2024/06/08 20:33:56 tom Exp $
-.TH curs_scr_dump 3X 2024-06-08 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_scr_dump.3x,v 1.49 2024/09/21 09:30:22 tom Exp $
+.TH curs_scr_dump 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -202,6 +202,19 @@
 such that the dump data is also considered invalid
 \*(``if the time-stamp of the tty is old\*(''
 but does not define \*(``old\*(''.
+.PP
+As of 2024, PDCurses provides these functions.
+NetBSD curses does not provide these functions,
+although it provides \fB\%getwin\fP.
+.PP
+Other implementations of curses store the window in binary form.
+One drawback to binary form is that this makes the dump dependent upon
+the curses library's internal data structures.
+Rather than do that, ncurses stores the dump in textual form,
+allowing more flexible use of the data.
+For instance, SVr4 curses \fB\%scr_restore\fP requires that the
+dumped window have the same dimensions as the restored window.
+ncurses uses \fB\%wresize\fP to adjust the restored window size.
 .SH HISTORY
 SVr3 (1987) introduced
 .BR \%scr_dump ","
@@ -211,10 +224,13 @@
 SVr3.1 added
 .BR \%scr_set "."
 .SH SEE ALSO
+.na
 \fB\%curses\fP(3X),
 \fB\%curs_initscr\fP(3X),
 \fB\%curs_refresh\fP(3X),
 \fB\%curs_util\fP(3X),
 \fB\%system\fP(3),
 \fB\%scr_dump\fP(5),
-\fB\%terminfo\fP(5)
+\fB\%terminfo\fP(5),
+\fB\%wresize\fP(3X)
+.ad
Index: man/curs_scroll.3x
Prereq:  1.47 
--- ncurses-6.5-20240914+/man/curs_scroll.3x	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_scroll.3x	2024-09-22 14:08:11.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_scroll.3x,v 1.47 2024/09/14 20:06:50 tom Exp $
-.TH curs_scroll 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_scroll.3x,v 1.49 2024/09/22 14:08:11 tom Exp $
+.TH curs_scroll 3X 2024-09-22 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -67,7 +67,7 @@
 becomes line
 .IR i "\-1."
 The text of the top line in the window disappears and the bottom line
-is populated with blank characters;
+is populated with the background character;
 see \fB\%bkgd\fP(3X)
 (wide-character API users: \fB\%bkgrnd\fP(3X)).
 As an optimization,
@@ -158,7 +158,7 @@
 Neither SVr4
 .I curses
 nor X/Open Curses specify whether these functions zero the attributes or
-color pair identifier of the blank character.
+color pair identifier of the background character.
 In
 .IR \%ncurses ","
 they do not.
Index: man/curs_termcap.3x
Prereq:  1.89 
--- ncurses-6.5-20240914+/man/curs_termcap.3x	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_termcap.3x	2024-09-21 18:00:03.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_termcap.3x,v 1.89 2024/09/14 20:06:50 tom Exp $
-.TH curs_termcap 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_termcap.3x,v 1.91 2024/09/21 18:00:03 tom Exp $
+.TH curs_termcap 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -40,6 +40,9 @@
 .el   .ds '' ""
 .\}
 .
+.ie \n(.g .ds : \:
+.el       .ds : \" empty
+.
 .de bP
 .ie n  .IP \(bu 4
 .el    .IP \(bu 2
@@ -505,7 +508,7 @@
 .\" https://minnie.tuhs.org/cgi-bin/utree.pl?file=4BSD/usr/src/lib/\
 .\"   libtermlib/makefile
 and added another test program.
-The library remained much the same though 4.3BSD
+The library remained much the same through 4.3BSD
 (June 1986).
 4.4BSD-Lite
 (June 1994)
@@ -677,11 +680,9 @@
 the \fItermcap\fP interface to accommodate the latter's limitation in
 this respect.
 .SH "SEE ALSO"
-.na
-.UR https://invisible\-island.net/ncurses/tctest.html
-\fITCTEST - A Termcap Test Utility\fP
+.UR https://\*:invisible\-\*:island\*:.net/\*:ncurses/\*:tctest\*:.html
+.I "TCTEST \(em A Termcap Test Utility"
 .UE
-.ad
 .PP
 \fB\%curses\fP(3X),
 \fB\%curs_terminfo\fP(3X),
Index: man/curs_util.3x
Prereq:  1.116 
--- ncurses-6.5-20240914+/man/curs_util.3x	2024-09-11 21:02:40.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_util.3x	2024-09-21 09:30:22.000000000 +0000
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_util.3x,v 1.116 2024/09/11 21:02:40 tom Exp $
-.TH curs_util 3X 2024-09-11 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_util.3x,v 1.118 2024/09/21 09:30:22 tom Exp $
+.TH curs_util 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -523,6 +523,7 @@
 and 6.0 (2015)
 .IR \%use_tioctl "." \" 20120714
 .SH SEE ALSO
+.na
 \fB\%curses\fP(3X),
 \fB\%curs_initscr\fP(3X),
 \fB\%curs_inopts\fP(3X),
@@ -531,3 +532,4 @@
 \fB\%curs_sp_funcs\fP(3X),
 \fB\%curs_variables\fP(3X),
 \fB\%legacy_coding\fP(3X)
+.ad
Index: man/curs_variables.3x
Prereq:  1.51 
--- ncurses-6.5-20240914+/man/curs_variables.3x	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/curs_variables.3x	2024-09-21 18:01:56.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: curs_variables.3x,v 1.51 2024/09/14 20:06:50 tom Exp $
-.TH curs_variables 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: curs_variables.3x,v 1.53 2024/09/21 18:01:56 tom Exp $
+.TH curs_variables 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -361,12 +361,10 @@
 most users have decided either to override the value,
 or to rely upon its default.
 .SH SEE ALSO
-.na
 .UR https://\*:unicode\*:.org/\*:reports/\*:tr29/
 [UAX #29] \*(``Unicode Standard Annex #29: Unicode Text
 Segmentation\*(''
 .UE
-.ad
 .PP
 \fB\%curses\fP(3X),
 \fB\%curs_color\fP(3X),
Index: man/infocmp.1m
Prereq:  1.112 
--- ncurses-6.5-20240914+/man/infocmp.1m	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/infocmp.1m	2024-09-21 18:04:29.000000000 +0000
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: infocmp.1m,v 1.112 2024/09/14 20:06:50 tom Exp $
-.TH @INFOCMP@ 1M 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
+.\" $Id: infocmp.1m,v 1.114 2024/09/21 18:04:29 tom Exp $
+.TH @INFOCMP@ 1M 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -53,7 +53,6 @@
 \fB@INFOCMP@\fP \-
 compare or print out \fIterminfo\fP descriptions
 .SH SYNOPSIS
-.na
 .HP
 .B @INFOCMP@
 .RB [ \-\
@@ -100,7 +99,6 @@
 .IR width ]
 .RI [ \%terminal\%-type
 \&.\|.\|.\& ]
-.ad
 .SH DESCRIPTION
 \fB@INFOCMP@\fP can be used to compare a binary \fBterminfo\fP entry with other
 terminfo entries, rewrite a \fBterminfo\fP description to take advantage of the
@@ -605,41 +603,58 @@
 compiled terminal description database
 .SH EXTENSIONS
 The
-\fB\-0\fP,
-\fB\-1\fP,
-\fB\-E\fP,
-\fB\-F\fP,
-\fB\-G\fP,
-\fB\-Q\fP,
-\fB\-R\fP,
-\fB\-T\fP,
-\fB\-V\fP,
-\fB\-a\fP,
-\fB\-e\fP,
-\fB\-f\fP,
-\fB\-g\fP,
-\fB\-i\fP,
-\fB\-l\fP,
-\fB\-p\fP,
-\fB\-q\fP and
-\fB\-t\fP
-options are not supported in SVr4 curses.
+.BR \-0 ","
+.BR \-1 ","
+.BR \-a ","
+.BR \-e ","
+.BR \-E ","
+.BR \-f ","
+.BR \-F ","
+.BR \-g ","
+.BR \-G ","
+.BR \-i ","
+.BR \-l ","
+.BR \-p ","
+.BR \-q ","
+.BR \-Q ","
+.BR \-R ","
+.BR \-t ","
+.BR \-T ","
+and
+.B \-V
+options are
+.I \%ncurses
+extensions.
+.SH PORTABILITY
+X/Open Curses, Issue 7 (2009) specifies
+.IR \%infocmp "."
+It does not mention options for producing descriptions in
+.I \%term\%cap
+format.
 .PP
 SVr4
-infocmp does not distinguish between absent and canceled capabilities.
-Also, it shows missing integer capabilities as \fB\-1\fP
-(the internal value used to represent missing integers).
-This implementation shows those as \*(``NULL\*('',
-for consistency with missing strings.
-.PP
-The \fB\-r\fP option's notion of \*(``termcap\*('' capabilities
-is System V Release 4's.
-Actual BSD curses versions will have a more restricted set.
-To see only the
-4.4BSD set, use \fB\-r\fP \fB\-RBSD\fP.
-.SH PORTABILITY
-X/Open Curses, Issue 7 (2009) provides a description of \fBinfocmp\fP.
-It does not mention the options used for converting to termcap format.
+.I \%infocmp
+does not distinguish between absent and canceled capabilities.
+It furthermore reports missing integer capabilities as
+.B \-1
+(its internal representation).
+.I \%ncurses
+shows these as \*(``NULL\*(''
+for consistency with missing string capabilities.
+.PP
+The
+.B \-r
+option
+of
+.I \%ncurses
+.I \%infocmp
+uses SVr4's notion of of \*(``termcap\*('' capabilities.
+BSD
+.I curses
+had a more restricted set.
+To see only those present in 4.4BSD,
+use
+.RB \*(`` "\-r \-RBSD" \*(''.
 .SH HISTORY
 Although System V Release 2 provided a terminfo library,
 it had no documented tool for decompiling the terminal descriptions.
Index: man/ncurses.3x
Prereq:  1.231 
--- ncurses-6.5-20240914+/man/ncurses.3x	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/ncurses.3x	2024-09-21 18:02:58.000000000 +0000
@@ -28,8 +28,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: ncurses.3x,v 1.231 2024/09/14 20:06:50 tom Exp $
-.TH ncurses 3X 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: ncurses.3x,v 1.233 2024/09/21 18:02:58 tom Exp $
+.TH ncurses 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -333,17 +333,19 @@
 .I curses
 is implemented using the operating system's terminal driver;
 key events are received not as scan codes but as byte sequences.
-Graphical keycaps
+The driver reports graphical keycaps
 (alphanumeric and punctuation keys,
 and the space)
-appear as-is.
+as-is.
 Everything else,
 including the tab,
 enter/return,
 keypad,
 arrow,
 and function keys,
-appears as a control character or a multibyte
+appears to
+.I curses
+as a control character or a multibyte
 .I "escape sequence."
 .I curses
 can translate the latter into unique
@@ -566,11 +568,11 @@
 .I \%WINDOW
 is stored as a
 .IR \%cchar_t .
-.PP
 \fB\%setcchar\fP(3X) and \fB\%getcchar\fP(3X)
 store and retrieve
 .I \%cchar_t
 data.
+.PP
 The wide library API of
 .I \%ncurses
 depends on two data types standardized by ISO C95.
@@ -597,11 +599,11 @@
 can store a
 .I \%wchar_t
 or the constant
-.BR \%WEOF ,
+.IR \%WEOF ,
 analogously to the
 .IR int -sized
 character manipulation functions of ISO C and its constant
-.BR \%EOF .
+.IR \%EOF .
 .RE
 .\"
 .SS "Function Name Index"
@@ -1578,7 +1580,7 @@
 Descriptions in
 .I \%term\%info
 format are normally stored in a directory tree using subdirectories
-named by the common first letters of the terminal types named therein.
+named for the common first letters of the terminal types named therein.
 This is the scheme used in System\ V.
 .bP
 If
Index: man/tabs.1
Prereq:  1.63 
--- ncurses-6.5-20240914+/man/tabs.1	2024-09-14 20:06:50.000000000 +0000
+++ ncurses-6.5-20240922/man/tabs.1	2024-09-21 18:04:07.000000000 +0000
@@ -27,8 +27,8 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: tabs.1,v 1.63 2024/09/14 20:06:50 tom Exp $
-.TH @TABS@ 1 2024-09-14 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
+.\" $Id: tabs.1,v 1.65 2024/09/21 18:04:07 tom Exp $
+.TH @TABS@ 1 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "User commands"
 .ie \n(.g \{\
 .ds `` \(lq
 .ds '' \(rq
@@ -247,7 +247,8 @@
 .RB \%( smglp )
 capabilities needed to support the feature.
 .bP
-Unlike \fB@TPUT@\fP(1),
+Unlike
+.IR tput ,
 .I tabs
 has no specification in X/Open Curses Issue\ 7.
 .PP
@@ -276,7 +277,7 @@
 That option is not specified by POSIX.
 .PP
 The PWB/Unix
-.B tabs
+.I tabs
 utility returned in System III (1980),
 and used built-in tables
 to support a half-dozen hardcopy terminal (printer) types.
@@ -315,10 +316,10 @@
 The
 .B +m
 option in
-.I \%ncurses
-.I tabs
-(\fB\%@TABS@\fP) differs from the SVr4 feature by using terminal
-capabilities rather than built-in tables.
+.IR \%ncurses 's
+implementation
+differs from the SVr4 feature by using terminal capabilities
+rather than built-in tables.
 .PP
 POSIX documents no limit on the number of tab stops.
 Other implementations impose one;
@@ -327,8 +328,8 @@
 utility.
 While some terminals may not accept an arbitrary number of tab stops,
 .I \%ncurses
-\fB\%@TABS@\fP attempts to set tab stops up to the right margin if the
-list thereof is sufficiently long.
+attempts to set tab stops up to the right margin
+if the list thereof is sufficiently long.
 .PP
 The \*(``Rationale\*('' section of the Issue 6
 .I tabs
Index: man/terminfo.tail
Prereq:  1.152 
--- ncurses-6.5-20240914+/man/terminfo.tail	2024-09-14 00:43:08.000000000 +0000
+++ ncurses-6.5-20240922/man/terminfo.tail	2024-09-21 17:54:42.000000000 +0000
@@ -27,7 +27,7 @@
 .\" authorization.                                                           *
 .\"***************************************************************************
 .\"
-.\" $Id: terminfo.tail,v 1.152 2024/09/14 00:43:08 Branden.Robinson Exp $
+.\" $Id: terminfo.tail,v 1.153 2024/09/21 17:54:42 Branden.Robinson Exp $
 .ps +1
 .SS "User-Defined Capabilities"
 .
@@ -1629,8 +1629,8 @@
 terminals have a predefined set of \fIN\fP colors
 (where \fIN\fP is usually 8),
 and can set
-character-cell foreground and background characters independently, mixing them
-into \fIN\fP\ *\ \fIN\fP color pairs.
+character-cell foreground and background colors independently,
+mixing them into \fIN\fP\ *\ \fIN\fP color pairs.
 .bP
 On HP-like terminals, the user must set each color
 pair up separately (foreground and background are not independently settable).
Index: man/wresize.3x
Prereq:  1.40 
--- ncurses-6.5-20240914+/man/wresize.3x	2024-07-27 20:08:58.000000000 +0000
+++ ncurses-6.5-20240922/man/wresize.3x	2024-09-21 23:48:27.000000000 +0000
@@ -29,8 +29,8 @@
 .\"
 .\" Author: Thomas E. Dickey 1996
 .\"
-.\" $Id: wresize.3x,v 1.40 2024/07/27 20:08:58 tom Exp $
-.TH wresize 3X 2024-07-27 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
+.\" $Id: wresize.3x,v 1.42 2024/09/21 23:48:27 tom Exp $
+.TH wresize 3X 2024-09-21 "ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@" "Library calls"
 .SH NAME
 \fB\%wresize\fP \-
 resize a \fIcurses\fR window
@@ -55,9 +55,10 @@
 .IR columns "."
 If either dimension is larger than its current value,
 .I \%ncurses
-fills the expanded part of the window with the blank character
-configured by \fB\%wbkgdset\fP(3X)
-(wide-character API users: \fB\%wbkgrndset\fP(3X)).
+the expanded part of the window is filled with blanks merged with
+current background rendition
+(configured by \fB\%wbkgdset\fP(3X),
+or by wide-character API: \fB\%wbkgrndset\fP(3X)).
 .SH RETURN VALUE
 .B \%wresize
 returns
Index: misc/ncurses-config.in
Prereq:  1.55 
--- ncurses-6.5-20240914+/misc/ncurses-config.in	2024-09-14 22:16:56.000000000 +0000
+++ ncurses-6.5-20240922/misc/ncurses-config.in	2024-09-21 17:24:52.000000000 +0000
@@ -1,5 +1,5 @@
 #!@SHELL@
-# $Id: ncurses-config.in,v 1.55 2024/09/14 22:16:56 tom Exp $
+# $Id: ncurses-config.in,v 1.56 2024/09/21 17:24:52 tom Exp $
 ##############################################################################
 # Copyright 2018-2022,2024 Thomas E. Dickey                                  #
 # Copyright 2006-2015,2017 Free Software Foundation, Inc.                    #
@@ -50,8 +50,6 @@
 TINFO_LIB="@TINFO_ARG_SUFFIX@"
 RPATH_LIST="@RPATH_LIST@"
 
-includesubdir="@includedir@/${THIS}"
-
 # Ensure that RPATH_LIST contains only absolute pathnames, if it is nonempty.
 # We cannot filter it out within the build-process since the variable is used
 # in some special cases of installation using a relative path.
@@ -80,11 +78,14 @@
 # the headers to include like this:
 #	<ncurses@LIB_SUFFIX@/curses.h>
 if [ x@WITH_OVERWRITE@ = xno ]; then
+	includesubdir="@includedir@/${THIS}"
 	case $includedir in
 	$prefix/include/ncurses@LIB_SUFFIX@@EXTRA_SUFFIX@)
 		includedir=`echo "$includedir" | sed -e 's,/[^/]*$,,'`
 		;;
 	esac
+else
+	includesubdir="@includedir@"
 fi
 
 LIBS="@LIBS@"
@@ -95,20 +96,10 @@
 fi
 
 CFLAGS="@PKG_CFLAGS@"
-if [ "$includedir" != "/usr/include" ]; then
-	if [ "x@WITH_OVERWRITE@" = xno ]
-	then
-		[ -n "$CFLAGS" ] && CFLAGS="$CFLAGS "
-		CFLAGS="$CFLAGS -I${includesubdir}"
-	fi
-	[ -n "$CFLAGS" ] && CFLAGS="$CFLAGS "
-	CFLAGS="$CFLAGS-I${includedir}"
-	includetop=`echo "$includedir" | sed -e 's,/include/[^/]*$,/include,'`
-	[ "$includetop" = "/usr/include" ] && includetop="$includedir"
-	if [ "x$includetop" != "x$includedir" ]
-	then
-		[ -n "$CFLAGS" ] && CFLAGS="$CFLAGS "
-		CFLAGS="$CFLAGS-I$includetop"
+if [ "$includesubdir" != "/usr/include" ]; then
+	CFLAGS="$CFLAGS -I${includesubdir}"
+	if [ "$includedir" != "/usr/include" ]; then
+		[ x@WITH_OVERWRITE@ = xno ] && CFLAGS="$CFLAGS -I${includedir}"
 	fi
 fi
 
Index: ncurses/base/MKlib_gen.sh
Prereq:  1.73 
--- ncurses-6.5-20240914+/ncurses/base/MKlib_gen.sh	2022-10-01 13:14:20.000000000 +0000
+++ ncurses-6.5-20240922/ncurses/base/MKlib_gen.sh	2024-09-22 20:41:58.000000000 +0000
@@ -2,10 +2,10 @@
 #
 # MKlib_gen.sh -- generate sources from curses.h macro definitions
 #
-# ($Id: MKlib_gen.sh,v 1.73 2022/10/01 13:14:20 tom Exp $)
+# ($Id: MKlib_gen.sh,v 1.74 2024/09/22 20:41:58 tom Exp $)
 #
 ##############################################################################
-# Copyright 2018-2021,2022 Thomas E. Dickey                                  #
+# Copyright 2018-2022,2024 Thomas E. Dickey                                  #
 # Copyright 1998-2016,2017 Free Software Foundation, Inc.                    #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
@@ -464,8 +464,11 @@
 		}
 END		{
 		if ( "$USE" != "generated" ) {
-			print "int main(void)"
-			print "{"
+			print  "static int link_test(int code)"
+			print  "{"
+			print  "  switch(code)"
+			print  "  {"
+			casenum = 1;
 			for (n = 1; n < start; ++n) {
 				value = calls[n];
 				if ( value !~ /P_POUNDC/ ) {
@@ -480,13 +483,15 @@
 					sub(/^/,"call_",value);
 					gsub(/ (a[0-9]|z) /, " 0 ", value);
 					gsub(/ int[ \t]*[(][^)]+[)][(][^)]+[)]/, "0", value);
-					printf "\t%s;\n", value;
+					printf "    case %d: %s; break;\n", casenum++, value;
 				} else {
 					print value;
 				}
 			}
-			print "	return 0;"
-			print "}"
+			print  "  default: return 0; /* case did not exist */"
+			print  "  }"
+			print  "  return 1; /* case exists */"
+			print  "}"
 		}
 		}
 EOF1
@@ -527,3 +532,34 @@
 	-e '/#ident/d' \
 	-e '/#line/d' \
 | sed -f $ED4
+
+# a simple test-driver checks one or all of the linkages
+if test "$USE" = "implemented"
+then
+cat <<"EOF"
+int main(int argc, char *argv[])
+{
+	int n;
+	int rc;
+	if (argc > 1)
+	{
+		rc = !link_test(atoi(argv[1]));
+	}
+	else
+	{
+		rc = 0;
+		for (n = 1; ; ++n)
+		{
+			printf("TEST %d\n", n);
+			fflush(stdout);
+			if (!link_test(n))
+			{
+				rc = 1;
+				break;
+			}
+		}
+	}
+	return rc;
+}
+EOF
+fi
Index: ncurses/base/lib_refresh.c
Prereq:  1.48 
--- ncurses-6.5-20240914+/ncurses/base/lib_refresh.c	2023-05-27 20:13:10.000000000 +0000
+++ ncurses-6.5-20240922/ncurses/base/lib_refresh.c	2024-09-22 20:17:40.000000000 +0000
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2020-2021,2023 Thomas E. Dickey                                *
+ * Copyright 2020-2023,2024 Thomas E. Dickey                                *
  * Copyright 1998-2010,2011 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -43,7 +43,7 @@
 
 #include <curses.priv.h>
 
-MODULE_ID("$Id: lib_refresh.c,v 1.48 2023/05/27 20:13:10 tom Exp $")
+MODULE_ID("$Id: lib_refresh.c,v 1.49 2024/09/22 20:17:40 tom Exp $")
 
 NCURSES_EXPORT(int)
 wrefresh(WINDOW *win)
@@ -55,7 +55,7 @@
 
     T((T_CALLED("wrefresh(%p)"), (void *) win));
 
-    if (win == 0) {
+    if (SP_PARM == NULL || win == NULL) {
 	code = ERR;
     } else if (win == CurScreen(SP_PARM)) {
 	CurScreen(SP_PARM)->_clear = TRUE;
@@ -92,7 +92,7 @@
 
     T((T_CALLED("wnoutrefresh(%p)"), (void *) win));
 
-    if (win == NULL)
+    if (SP_PARM == NULL || win == NULL)
 	returnCode(ERR);
 
     /*
Index: ncurses/base/lib_screen.c
Prereq:  1.106 
--- ncurses-6.5-20240914+/ncurses/base/lib_screen.c	2024-07-27 19:22:23.000000000 +0000
+++ ncurses-6.5-20240922/ncurses/base/lib_screen.c	2024-09-22 20:20:36.000000000 +0000
@@ -42,7 +42,7 @@
 #define CUR SP_TERMTYPE
 #endif
 
-MODULE_ID("$Id: lib_screen.c,v 1.106 2024/07/27 19:22:23 tom Exp $")
+MODULE_ID("$Id: lib_screen.c,v 1.108 2024/09/22 20:20:36 tom Exp $")
 
 #define MAX_SIZE 0x3fff		/* 16k is big enough for a window or pad */
 
@@ -960,7 +960,6 @@
 	}
     }
 #endif
-    delwin(target);
     return result;
 }
 
@@ -972,14 +971,17 @@
 
     T((T_CALLED("scr_restore(%p,%s)"), (void *) SP_PARM, _nc_visbuf(file)));
 
-    if (_nc_access(file, R_OK) >= 0
+    if (SP_PARM != NULL
+	&& _nc_access(file, R_OK) >= 0
 	&& (fp = safe_fopen(file, BIN_R)) != 0) {
-	NewScreen(SP_PARM) = replace_window(NewScreen(SP_PARM), fp);
+	WINDOW *my_newscr = replace_window(NewScreen(SP_PARM), fp);
+	(void) fclose(fp);
+	if (my_newscr != NULL) {
+	    delwin(NewScreen(SP_PARM));
+	    NewScreen(SP_PARM) = my_newscr;
 #if !USE_REENTRANT
-	newscr = NewScreen(SP_PARM);
+	    newscr = my_newscr;
 #endif
-	(void) fclose(fp);
-	if (NewScreen(SP_PARM) != 0) {
 	    code = OK;
 	}
     }
@@ -1020,7 +1022,7 @@
 
     T((T_CALLED("scr_init(%p,%s)"), (void *) SP_PARM, _nc_visbuf(file)));
 
-    if (SP_PARM != 0 &&
+    if (SP_PARM != NULL &&
 #ifdef USE_TERM_DRIVER
 	InfoOf(SP_PARM).caninit
 #else
@@ -1031,12 +1033,14 @@
 
 	if (_nc_access(file, R_OK) >= 0
 	    && (fp = safe_fopen(file, BIN_R)) != 0) {
-	    CurScreen(SP_PARM) = replace_window(CurScreen(SP_PARM), fp);
+	    WINDOW *my_curscr = replace_window(CurScreen(SP_PARM), fp);
+	    (void) fclose(fp);
+	    if (my_curscr != NULL) {
+		delwin(CurScreen(SP_PARM));
+		CurScreen(SP_PARM) = my_curscr;
 #if !USE_REENTRANT
-	    curscr = CurScreen(SP_PARM);
+		curscr = my_curscr;
 #endif
-	    (void) fclose(fp);
-	    if (CurScreen(SP_PARM) != 0) {
 		code = OK;
 	    }
 	}
@@ -1059,7 +1063,8 @@
 
     T((T_CALLED("scr_set(%p,%s)"), (void *) SP_PARM, _nc_visbuf(file)));
 
-    if (NCURSES_SP_NAME(scr_init) (NCURSES_SP_ARGx file) == OK) {
+    if (SP_PARM != NULL
+	&& NCURSES_SP_NAME(scr_init) (NCURSES_SP_ARGx file) == OK) {
 	delwin(NewScreen(SP_PARM));
 	NewScreen(SP_PARM) = dupwin(curscr);
 #if !USE_REENTRANT
Index: ncurses/base/resizeterm.c
Prereq:  1.55 
--- ncurses-6.5-20240914+/ncurses/base/resizeterm.c	2024-07-27 23:04:55.000000000 +0000
+++ ncurses-6.5-20240922/ncurses/base/resizeterm.c	2024-09-22 20:25:15.000000000 +0000
@@ -46,7 +46,7 @@
 #define CUR SP_TERMTYPE
 #endif
 
-MODULE_ID("$Id: resizeterm.c,v 1.55 2024/07/27 23:04:55 tom Exp $")
+MODULE_ID("$Id: resizeterm.c,v 1.56 2024/09/22 20:25:15 tom Exp $")
 
 /*
  * If we're trying to be reentrant, do not want any local statics.
@@ -105,6 +105,7 @@
     T((T_CALLED("is_term_resized(%p, %d, %d)"), (void *) SP_PARM, ToLines, ToCols));
     returnCode(ToLines > 0
 	       && ToCols > 0
+	       && SP_PARM != NULL
 	       && (ToLines != screen_lines(SP_PARM)
 		   || ToCols != screen_columns(SP_PARM)));
 }
@@ -354,10 +355,10 @@
 
     T((T_CALLED("resize_term(%p,%d,%d) old(%d,%d)"),
        (void *) SP_PARM, ToLines, ToCols,
-       (SP_PARM == 0) ? -1 : screen_lines(SP_PARM),
-       (SP_PARM == 0) ? -1 : screen_columns(SP_PARM)));
+       (SP_PARM == NULL) ? -1 : screen_lines(SP_PARM),
+       (SP_PARM == NULL) ? -1 : screen_columns(SP_PARM)));
 
-    if (SP_PARM == 0 || ToLines <= 0 || ToCols <= 0) {
+    if (SP_PARM == NULL || ToLines <= 0 || ToCols <= 0) {
 	returnCode(ERR);
     }
 
@@ -473,10 +474,10 @@
 
     T((T_CALLED("resizeterm(%p, %d,%d) old(%d,%d)"),
        (void *) SP_PARM, ToLines, ToCols,
-       (SP_PARM == 0) ? -1 : screen_lines(SP_PARM),
-       (SP_PARM == 0) ? -1 : screen_columns(SP_PARM)));
+       (SP_PARM == NULL) ? -1 : screen_lines(SP_PARM),
+       (SP_PARM == NULL) ? -1 : screen_columns(SP_PARM)));
 
-    if (SP_PARM != 0 && ToLines > 0 && ToCols > 0) {
+    if (SP_PARM != NULL && ToLines > 0 && ToCols > 0) {
 	result = OK;
 	SP_PARM->_sig_winch = FALSE;
 
Index: ncurses/tinfo/access.c
Prereq:  1.37 
--- ncurses-6.5-20240914+/ncurses/tinfo/access.c	2023-06-24 21:55:09.000000000 +0000
+++ ncurses-6.5-20240922/ncurses/tinfo/access.c	2024-09-21 15:12:56.000000000 +0000
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2019-2021,2023 Thomas E. Dickey                                *
+ * Copyright 2019-2023,2024 Thomas E. Dickey                                *
  * Copyright 1998-2011,2012 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -52,7 +52,7 @@
 
 #include <tic.h>
 
-MODULE_ID("$Id: access.c,v 1.37 2023/06/24 21:55:09 tom Exp $")
+MODULE_ID("$Id: access.c,v 1.39 2024/09/21 15:12:56 tom Exp $")
 
 #define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
 
@@ -247,6 +247,29 @@
 }
 
 #ifndef USE_ROOT_ACCESS
+static int
+is_a_file(int fd)
+{
+    int result = FALSE;
+    if (fd >= 0) {
+	struct stat sb;
+	if (fstat(fd, &sb) == 0) {
+	    switch (sb.st_mode & S_IFMT) {
+	    case S_IFBLK:
+	    case S_IFCHR:
+	    case S_IFDIR:
+		/* disallow devices and directories */
+		break;
+	    default:
+		/* allow regular files, fifos and sockets */
+		result = TRUE;
+		break;
+	    }
+	}
+    }
+    return result;
+}
+
 /*
  * Limit privileges if possible; otherwise disallow access for updating files.
  */
@@ -263,6 +286,12 @@
 	result = fopen(path, mode);
     }
 #endif
+    if (result != NULL) {
+	if (!is_a_file(fileno(result))) {
+	    fclose(result);
+	    result = NULL;
+	}
+    }
     return result;
 }
 
@@ -279,6 +308,12 @@
 	result = open(path, flags, mode);
     }
 #endif
+    if (result >= 0) {
+	if (!is_a_file(result)) {
+	    close(result);
+	    result = -1;
+	}
+    }
     return result;
 }
 #endif /* USE_ROOT_ACCESS */
Index: ncurses/wcwidth.h
Prereq:  1.6 
--- ncurses-6.5-20240914+/ncurses/wcwidth.h	2024-05-04 18:44:25.000000000 +0000
+++ ncurses-6.5-20240922/ncurses/wcwidth.h	2024-09-21 15:49:15.000000000 +0000
@@ -1,4 +1,4 @@
-/* $Id: wcwidth.h,v 1.6 2024/05/04 18:44:25 tom Exp $ */
+/* $Id: wcwidth.h,v 1.7 2024/09/21 15:49:15 tom Exp $ */
 
 /*
  * Copyright 2002-2023,2024 by Thomas E. Dickey
@@ -124,6 +124,7 @@
 #include <ncurses_dll.h>
 
 #include <wchar.h>
+#include <stdint.h>
 
 struct interval {
   unsigned long first;
Index: package/debian-mingw/changelog
--- ncurses-6.5-20240914+/package/debian-mingw/changelog	2024-09-13 23:30:09.000000000 +0000
+++ ncurses-6.5-20240922/package/debian-mingw/changelog	2024-09-22 18:38:38.000000000 +0000
@@ -1,8 +1,8 @@
-ncurses6td (6.5+20240914) unstable; urgency=low
+ncurses6td (6.5+20240922) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Fri, 13 Sep 2024 19:30:09 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 22 Sep 2024 14:38:38 -0400
 
 ncurses6 (5.9+20131005) unstable; urgency=low
 
Index: package/debian-mingw64/changelog
--- ncurses-6.5-20240914+/package/debian-mingw64/changelog	2024-09-13 23:30:09.000000000 +0000
+++ ncurses-6.5-20240922/package/debian-mingw64/changelog	2024-09-22 18:38:38.000000000 +0000
@@ -1,8 +1,8 @@
-ncurses6td (6.5+20240914) unstable; urgency=low
+ncurses6td (6.5+20240922) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Fri, 13 Sep 2024 19:30:09 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 22 Sep 2024 14:38:38 -0400
 
 ncurses6 (5.9+20131005) unstable; urgency=low
 
Index: package/debian/changelog
--- ncurses-6.5-20240914+/package/debian/changelog	2024-09-13 23:30:09.000000000 +0000
+++ ncurses-6.5-20240922/package/debian/changelog	2024-09-22 18:38:38.000000000 +0000
@@ -1,8 +1,8 @@
-ncurses6td (6.5+20240914) unstable; urgency=low
+ncurses6td (6.5+20240922) unstable; urgency=low
 
   * latest weekly patch
 
- -- Thomas E. Dickey <dickey@invisible-island.net>  Fri, 13 Sep 2024 19:30:09 -0400
+ -- Thomas E. Dickey <dickey@invisible-island.net>  Sun, 22 Sep 2024 14:38:38 -0400
 
 ncurses6 (5.9+20120608) unstable; urgency=low
 
Index: package/mingw-ncurses.nsi
Prereq:  1.666 
--- ncurses-6.5-20240914+/package/mingw-ncurses.nsi	2024-09-13 23:30:09.000000000 +0000
+++ ncurses-6.5-20240922/package/mingw-ncurses.nsi	2024-09-22 18:38:38.000000000 +0000
@@ -1,4 +1,4 @@
-; $Id: mingw-ncurses.nsi,v 1.666 2024/09/13 23:30:09 tom Exp $
+; $Id: mingw-ncurses.nsi,v 1.668 2024/09/22 18:38:38 tom Exp $
 
 ; TODO add examples
 ; TODO bump ABI to 6
@@ -10,7 +10,7 @@
 !define VERSION_MAJOR "6"
 !define VERSION_MINOR "5"
 !define VERSION_YYYY  "2024"
-!define VERSION_MMDD  "0914"
+!define VERSION_MMDD  "0922"
 !define VERSION_PATCH ${VERSION_YYYY}${VERSION_MMDD}
 
 !define MY_ABI   "5"
Index: package/mingw-ncurses.spec
--- ncurses-6.5-20240914+/package/mingw-ncurses.spec	2024-09-13 23:30:09.000000000 +0000
+++ ncurses-6.5-20240922/package/mingw-ncurses.spec	2024-09-22 18:38:38.000000000 +0000
@@ -3,7 +3,7 @@
 Summary: shared libraries for terminal handling
 Name: mingw32-ncurses6
 Version: 6.5
-Release: 20240914
+Release: 20240922
 License: X11
 Group: Development/Libraries
 URL: https://invisible-island.net/ncurses/
Index: package/ncurses.spec
--- ncurses-6.5-20240914+/package/ncurses.spec	2024-09-13 23:30:09.000000000 +0000
+++ ncurses-6.5-20240922/package/ncurses.spec	2024-09-22 18:38:38.000000000 +0000
@@ -1,7 +1,7 @@
 Summary: shared libraries for terminal handling
 Name: ncurses6
 Version: 6.5
-Release: 20240914
+Release: 20240922
 License: X11
 Group: Development/Libraries
 URL: https://invisible-island.net/ncurses/
Index: package/ncursest.spec
--- ncurses-6.5-20240914+/package/ncursest.spec	2024-09-13 23:30:09.000000000 +0000
+++ ncurses-6.5-20240922/package/ncursest.spec	2024-09-22 18:38:38.000000000 +0000
@@ -1,7 +1,7 @@
 Summary: Curses library with POSIX thread support.
 Name: ncursest6
 Version: 6.5
-Release: 20240914
+Release: 20240922
 License: X11
 Group: Development/Libraries
 Source: ncurses-%{version}-%{release}.tgz
Index: test/back_ground.c
Prereq:  1.9 
--- ncurses-6.5-20240914+/test/back_ground.c	2022-12-10 22:28:50.000000000 +0000
+++ ncurses-6.5-20240922/test/back_ground.c	2024-09-22 21:33:17.000000000 +0000
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2021,2022 Thomas E. Dickey                                     *
+ * Copyright 2021-2022,2024 Thomas E. Dickey                                *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -26,7 +26,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: back_ground.c,v 1.9 2022/12/10 22:28:50 tom Exp $
+ * $Id: back_ground.c,v 1.11 2024/09/22 21:33:17 tom Exp $
  */
 
 #include <test.priv.h>
@@ -40,7 +40,7 @@
 
 static int default_bg = COLOR_BLACK;
 static int default_fg = COLOR_WHITE;
-static wchar_t wide_fill = L' ';
+static wchar_t fill_char = L' ';
 
 static wchar_t
 decode_wchar(const char *value)
@@ -78,7 +78,7 @@
     }
     dump_window(stdscr);
 
-    blank[0] = wide_fill;
+    blank[0] = fill_char;
     blank[1] = L'\0';
 
     printw("Initializing pair 1 to red/%s\n", color_name(default_bg));
@@ -182,6 +182,7 @@
 	," -a       invoke assume_default_colors, repeat to use in init_pair"
 #endif
 	," -b XXX   specify background color"
+	," -c XXX   specify background character"
 #if HAVE_USE_DEFAULT_COLORS
 	," -d       invoke use_default_colors, repeat to use in init_pair"
 #endif
@@ -214,7 +215,7 @@
 
     setlocale(LC_ALL, "");
 
-    while ((ch = getopt(argc, argv, OPTS_COMMON "ab:df:l:wW:")) != -1) {
+    while ((ch = getopt(argc, argv, OPTS_COMMON "ab:c:df:l:wW:")) != -1) {
 	switch (ch) {
 #if HAVE_ASSUME_DEFAULT_COLORS
 	case 'a':
@@ -224,6 +225,17 @@
 	case 'b':
 	    default_bg = color_code(optarg);
 	    break;
+	case 'c':
+	    if (strlen(optarg) > 1) {
+		char *check = NULL;
+		long value = strtol(optarg, &check, 0);
+		if (*check != '\0')
+		    usage(FALSE);
+		fill_char = (wchar_t) value;
+	    } else {
+		fill_char = *optarg;
+	    }
+	    break;
 #if HAVE_USE_DEFAULT_COLORS
 	case 'd':
 	    ++d_option;
@@ -237,10 +249,10 @@
 		usage(FALSE);
 	    break;
 	case 'w':
-	    wide_fill = L'\u2591';
+	    fill_char = L'\u2591';
 	    break;
 	case 'W':
-	    wide_fill = decode_wchar(optarg);
+	    fill_char = decode_wchar(optarg);
 	    break;
 	case OPTS_VERSION:
 	    show_version(argv);
Index: test/background.c
Prereq:  1.24 
--- ncurses-6.5-20240914+/test/background.c	2022-12-10 22:28:50.000000000 +0000
+++ ncurses-6.5-20240922/test/background.c	2024-09-22 22:34:49.000000000 +0000
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright 2018-2021,2022 Thomas E. Dickey                                *
+ * Copyright 2018-2022,2024 Thomas E. Dickey                                *
  * Copyright 2003-2014,2017 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -27,7 +27,7 @@
  * authorization.                                                           *
  ****************************************************************************/
 /*
- * $Id: background.c,v 1.24 2022/12/10 22:28:50 tom Exp $
+ * $Id: background.c,v 1.27 2024/09/22 22:34:49 tom Exp $
  */
 
 #define NEED_COLOR_CODE 1
@@ -37,6 +37,7 @@
 
 static int default_bg = COLOR_BLACK;
 static int default_fg = COLOR_WHITE;
+static unsigned char fill_char = ' ';
 
 static void
 test_background(void)
@@ -45,6 +46,7 @@
     int row;
     int chr;
 
+    printw("Background character %#x\n", fill_char);
     if (pair_content(0, &f, &b) == ERR) {
 	printw("pair 0 contains no data\n");
     } else {
@@ -54,13 +56,13 @@
 
     printw("Initializing pair 1 to red/%s\n", color_name(default_bg));
     init_pair(1, COLOR_RED, (NCURSES_COLOR_T) default_bg);
-    bkgdset((chtype) (' ' | COLOR_PAIR(1)));
+    bkgdset((chtype) (fill_char | COLOR_PAIR(1)));
     printw("RED/BLACK\n");
     dump_window(stdscr);
 
     printw("Initializing pair 2 to %s/blue\n", color_name(default_fg));
     init_pair(2, (NCURSES_COLOR_T) default_fg, COLOR_BLUE);
-    bkgdset((chtype) (' ' | COLOR_PAIR(2)));
+    bkgdset((chtype) (fill_char | COLOR_PAIR(2)));
     printw("This line should be %s/blue\n", color_name(default_fg));
     dump_window(stdscr);
 
@@ -98,33 +100,33 @@
     printw("j\n");
     dump_window(stdscr);
 
-    bkgdset((chtype) (' ' | COLOR_PAIR(0)));
+    bkgdset((chtype) (fill_char | COLOR_PAIR(0)));
     printw("Default Colors\n");
     dump_window(stdscr);
 
     printw("Resetting colors to pair 1\n");
-    bkgdset((chtype) (' ' | COLOR_PAIR(1)));
+    bkgdset((chtype) (fill_char | COLOR_PAIR(1)));
     printw("This line should be red/%s\n", color_name(default_bg));
     dump_window(stdscr);
 
     printw("Setting screen to pair 0\n");
-    bkgd((chtype) (' ' | COLOR_PAIR(0)));
+    bkgd((chtype) (fill_char | COLOR_PAIR(0)));
     dump_window(stdscr);
 
     printw("Setting screen to pair 1\n");
-    bkgd((chtype) (' ' | COLOR_PAIR(1)));
+    bkgd((chtype) (fill_char | COLOR_PAIR(1)));
     dump_window(stdscr);
 
     printw("Setting screen to pair 2\n");
-    bkgd((chtype) (' ' | COLOR_PAIR(2)));
+    bkgd((chtype) (fill_char | COLOR_PAIR(2)));
     dump_window(stdscr);
 
     printw("Setting screen to pair 3\n");
-    bkgd((chtype) (' ' | COLOR_PAIR(3)));
+    bkgd((chtype) (fill_char | COLOR_PAIR(3)));
     dump_window(stdscr);
 
     printw("Setting screen to pair 0\n");
-    bkgd((chtype) (' ' | COLOR_PAIR(0)));
+    bkgd((chtype) (fill_char | COLOR_PAIR(0)));
     dump_window(stdscr);
 }
 
@@ -141,6 +143,7 @@
 	," -a       invoke assume_default_colors, repeat to use in init_pair"
 #endif
 	," -b XXX   specify background color"
+	," -c XXX   specify background character"
 #if HAVE_USE_DEFAULT_COLORS
 	," -d       invoke use_default_colors, repeat to use in init_pair"
 #endif
@@ -171,7 +174,7 @@
 
     setlocale(LC_ALL, "");
 
-    while ((ch = getopt(argc, argv, OPTS_COMMON "ab:df:l:")) != -1) {
+    while ((ch = getopt(argc, argv, OPTS_COMMON "ab:c:df:l:")) != -1) {
 	switch (ch) {
 #if HAVE_ASSUME_DEFAULT_COLORS
 	case 'a':
@@ -181,6 +184,17 @@
 	case 'b':
 	    default_bg = color_code(optarg);
 	    break;
+	case 'c':
+	    if (strlen(optarg) > 1) {
+		char *check = NULL;
+		long value = strtol(optarg, &check, 0);
+		if (*check != '\0')
+		    usage(FALSE);
+		fill_char = (unsigned char) value;
+	    } else {
+		fill_char = (unsigned char) *optarg;
+	    }
+	    break;
 #if HAVE_USE_DEFAULT_COLORS
 	case 'd':
 	    ++d_option;