summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/texlive/texlive-it/texlive-it.tex
blob: 56c9bbfffa30611005d934c84a5e3c1d21be63e4 (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
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
% arara: closepdf
% arara: pdflatex
% arara: showfile
% $Id$
% TeX Live documentation.  Originally written by Sebastian Rahtz and
% Michel Goossens, now maintained by Karl Berry and others.
% Public domain.
%
% Traduzione originaria a cura di Marco Pallante. Attualmente la traduzione
% è portata avanti in seno al progetto GuITeX del GuIT, Gruppo Utilizzatori
% Italiani di TeX (http://www.guit.sssup.it/).
%
% Chiunque può contribuire accedendo al repository Git diponibile
% all'indirizzo
%
%    https://github.com/GuITeX/texlive-it-guide
%
\documentclass{article}
%\let\tldocenglish=1  % for live4ht.cfg
%\def\Status{1}%CM istruzione inserita solo per poter compilare
\usepackage{tex-live}
\usepackage[italian]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\title{%
  {\huge \textit{Guida a \TeX\ Live---2021}}
}

\author{Karl Berry\\[3mm]
        \url{https://tug.org/texlive/}
       }

\date{Marzo 2021}

\begin{document}
\maketitle

\begin{multicols}{2}
\tableofcontents
%\listoftables
\end{multicols}


\section*{Note all'edizione italiana}

Dopo tanti anni, finalmente abbiamo anche un'edizione italiana di questa
guida alla distribuzione \TL. Vorrei premettere che, per garantirne il
completamento entro l'uscita di \TL{} 2009, mi sono fatto in quattro
destinando praticamente ogni attimo libero a questo lavoro; ho tenuto
sempre acceso il computer, con l'editor aperto e, spesso, passandoci
davanti, mi fermavo a tradurre una sola frase o addirittura una sola
parola pur di non restare fermo.

Ovviamente il risultato è un lavoro fatto con i piedi, uno stile
incoerente, parti che nemmeno io riesco a capire, errori di battitura e di
grammatica. Di tutto questo chiedo scusa. Però, adesso, il grosso dello
sforzo è stato fatto e revisionare periodicamente questa guida per limarla
e migliorarla sarà un'opera di gran lunga più semplice.

Purtroppo, ho mancato l'appuntamento con \TL\ 2010 e la guida lì presente
era la stessa del 2009, con tutti i suoi difetti. Questa volta, per
l'edizione 2011, mi sono impegnato un po' di più, ho ripreso l'intero
lavoro, l'ho aggiornato prima con le modifiche del 2010 e quindi con quelle
del 2011, ho corretto una valanga di errori e ritradotto frasi che con
l'italiano avevano davvero poco a che vedere.

Ovviamente ci saranno ancora tanti errori, frasi incomprensibili, incoerenze
e chi più ne ha più ne metta, ma spero nuovamente che il mio piccolo
contributo a \TeX{} sia apprezzato. Potete contattarmi per qualunque cosa,
aiuti, suggerimenti, correzioni, all'indirizzo
\email{marco.pallante@gmail.com}.

Vorrei dedicare questo lavoro alla mia città.

\bigskip

\noindent Marco Pallante\\
\emph{L'Aquila, 20 giugno 2011}.


\section{Introduzione}
\label{sec:intro}

\subsection{\protect\TeX\protect\ Live e la \protect\TeX\protect\ Collection}

Questo documento descrive le caratteristiche principali della
distribuzione \TL{}\Dash \TeX{} e i programmi ad esso correlati per
i sistemi GNU/Linux e altre versioni di Unix, \MacOSX{} e Windows.

Potete ottenere \TL{} scaricandola, oppure sul \DVD{} \TK, che i gruppi di
utenti \TeX{} distribuiscono ai propri membri, o in altri modi. La sezione
\ref{sec:tl-coll-dists} descrive brevemente il contenuto del \DVD. Sia
\TL{} che \TK{} sono progetti cooperativi dei gruppi di utenti \TeX.
Questo descrive principalmente \TL.

\TL{} include gli eseguibili per \TeX, \LaTeXe, \ConTeXt, \MF, \MP,
\BibTeX{} e molti altri programmi, una vasta collezione di macro, font e
documentazione e il supporto per la composizione tipografica in molti
diversi alfabeti provenienti da tutte le parti del mondo.

Per un breve riassunto dei principali cambiamenti in questa edizione di
\TL, consultate la fine di questo documento, sezione~\ref{sec:history}
(\p.\pageref{sec:history}).



\htmlanchor{platforms}
\subsection{Supporto per i sistemi operativi}
\label{sec:os-support}

\TL{} contiene gli eseguibili per molte piattaforme basate su Unix,
inclusi \GNU/Linux, \MacOSX{} e Cygwin. I sorgenti inclusi possono essere
compilati per quelle piattaforme per le quali non forniamo i binari.

Per quanto riguarda Windows: Windows~7 e successivi sono supportati.
Windows Vista probabilmente continuerà a funzionare quasi del
tutto, ma \TL{} non sarà più neppure installato su Windows XP e
precedenti. \TL{} non include specifici eseguibili a 64-bit per Windows, ma
gli eseguibili a 32-bit dovrebbero funzionare sui sistemi a 64-bit.
Ma consultate \url{https://tug.org/texlive/windows.html} per le
opzioni per aggiungere gli eseguibili a 64 bit.

Consulta la sezione~\ref{sec:tl-coll-dists} per scoprire soluzioni
alternative per Windows e \MacOSX.

\subsection{Installazione base di \protect\TL{}}
\label{sec:basic}

È possibile installare \TL{} dal \DVD{} oppure attraverso Internet
(\url{https://tug.org/texlive/acquire.html}). Il programma di installazione
via rete è piccolo e scarica tutto ciò che è necessario da Internet.

Il programma di installazione nel \DVD{} vi permette l'installazione su un
disco locale. Non è possibile eseguire \TL{} direttamente dal \DVD{} \TK{}
(o dalla sua immagine \code{.iso}), ma potete preparare un'installazione
pronta per l'uso su, per esempio, una pennetta \USB{} (consultate la
sezione~\ref{sec:portable-tl}). L'installazione è descritta nelle prossime
sezioni (\p.\pageref{sec:install}), ma eccone un rapido accenno:

\begin{itemize*}

\item Per Unix, lo script di installazione è \filename{install-tl}; su
  Windows, bisogna invece lanciare \filename{install-tl-windows}.
  L'installatore opererà in modalità grafica dando l'opzione
  \code{-gui} (predefinita per Windows e \MacOSX), o in modalità testuale
  \code{-gui=text} (predefinita per tutto il resto).

\item Uno degli elementi installati è il programma ``\TL\ Manager'',
  chiamato \prog{tlmgr}. Così come l'installatore, può essere usato sia in
  modalità \GUI{} che in modalità testuale. Lo si può usare per installare
  e disinstallare i pacchetti e per compiere varie operazioni di
  configurazione.

\end{itemize*}


\htmlanchor{security}
\subsection{Considerazioni sulla sicurezza}
\label{sec:security}

Sulla base delle nostre conoscenze, i programmi centrali di \TeX\ sono (e
sono sempre stati) estremamente robusti. Tuttavia, gli altri programmi in
\TeX\ Live potrebbero non raggiungere lo stesso livello, nonostante il
massimo impegno di tutti. Come sempre, dovreste essere cauti
nell'eseguire i programmi su documenti di origine inaffidabile; per
aumentare la sicurezza, eseguiteli in una nuova sotto directory o in chroot.

Questo bisogno di attenzione è particolarmente pressante sotto Windows,
dato che generalmente Windows cerca i programmi nella directory attuale
prima che in qualunque altra posizione, indipendentemente dal percorso di
ricerca. Questo comportamento crea un'ampia varietà di possibili attacchi.
Abbiamo chiuso molte falle, ma indubbiamente alcune ne rimangono,
soprattutto con i programmi di terze parti. Perciò raccomandiamo di
controllare la presenza di file sospetti, soprattutto eseguibili 
(binari o script), nella directory attuale. Normalmente questi non
dovrebbero essere presenti e senza alcun dubbio normalmente non dovrebbero
essere creati semplicemente elaborando un documento.

Infine, \TeX\ (e i programmi che lo accompagnano) è capace di creare nuovi
file quando elabora i documento, una funzionalità che può anche essere
abusata in una grande quantità di modi. Di nuovo, elaborare documenti
sconosciuti in una nuova sotto directory è la scelta più sicura.

Un altro aspetto della sicurezza è assicurarsi che il materiale scaricato
non sia stato modificato rispetto a quanto creato. Il programma
\prog{tlmgr} (sezione~\ref{sec:tlmgr}) eseguirà automaticamente una
verificca criptografica sui file scaricati se il programma \prog{gpg} (GNU
Privacy Guard) è disponibile. Non è distribuito come parte di \TL, ma
visitate \url{https://texlive.info/tlpgp/} per informazioni su \prog{pgp}
se è necessario.


\subsection{Ottenere aiuto}
\label{sec:help}

La comunità \TeX{} è attiva ed amichevole e le domande più importanti
finiscono per ricevere una risposta. Tuttavia il supporto è informale,
offerto da volontari e utenti casuali, per cui è particolarmente
importante fare la propria parte prima di chiedere (se preferite un
supporto commerciale garantito, potete rinunciare del tutto a \TL{} e
ordinare il sistema di un fornitore; alla pagina
\url{https://tug.org/interest.html#vendors} trovate un elenco).

Ecco una lista di risorse, approssimativamente nell'ordine in cui noi
raccomandiamo di usarle:

\begin{description}
\item [Per cominciare] Se siete nuovi di \TeX, alla pagina web
  \url{https://tug.org/begin.html} troverete una breve introduzione al sistema.

\item [\TeX{} FAQ] Le \TeX{} FAQ sono un enorme compendio di
  risposte ad ogni genere di domanda, dalle più elementari alle più
  oscure. Sono incluse in \TL{} in
  \OnCD{texmf-dist/doc/generic/FAQ-en} e sono disponibili
  su Internet alla pagina \url{https://www.tex.ac.uk/faq}. Controllate
  prima qui.

\item [\TeX{} Catalogue] Se state cercando un pacchetto, un font, un
  programma o altro in particolare, il \TeX{} Catalogue è il luogo dove
  guardare. È un enorme catalogo con tutte le voci relative a \TeX. Visitate
  \url{https://ctan.org/pkg/catalogue}.

\item [Risorse Web per \TeX{}] La pagina web
  \url{https://tug.org/interest.html} ha molti collegamenti relativi a
  \TeX, in particolare a numerosi libri, manuali ed articoli su tutti
  gli aspetti del sistema.

\item [archivi di supporto] I principali forum di supporto per \TeX\
  includono
  il sito della comunità \LaTeX{} su \url{https://latex.org},
  il sito di domande e risposte \url{https://tex.stackexchange.com}, il
  gruppo Usenet \url{news:comp.text.tex} e la mailing list
  \email{texhax@tug.org}. I loro archivi raccolgono anni di domande e risposte
  per il vostro piacere di ricerca tramite, per gli ultimi due,
  \url{https://groups.google.com/group/comp.text.tex/topics} e
  \url{https://tug.org/mail-archives/texhax}. E una
  generica ricerca su web non fa mai male.

\item [porre domande] Se non riuscite a trovare una risposta, potete
  formulare la vostra domanda su
  \url{https://latex-community.org/} e \url{https://tex.stackexchange.com/}
  tramite le loro interfacce web, su \dirname{comp.text.tex} tramite Google o
  un programma per Usenet, oppure tramite posta elettronica su
  \email{texhax@tug.org}. Ma prima di scrivere in qualunque posto, leggete
  questa voce delle FAQ, al fine di massimizzare le probabilità di ottenere una
  risposta utile:
  \url{https://texfaq.org/FAQ-askquestion}.

\item [supporto \TL{}] Se volete segnalare un bug o avete dei suggerimenti o
  commenti sulla distribuzione \TL{}, sull'installazione o la
  documentazione, la mailing list è \email{tex-live@tug.org}. Tuttavia, se
  la vostra domanda è relativa all'uso di un particolare programma incluso in
  \TL{}, scrivete al mantenitore o alla mailing list di quel programma.
  Spesso eseguire un programma con l'opzione \code{-{}-help} fornisce un
  indirizzo al quale segnalare i bug.

\end{description}

L'altra faccia della medaglia è aiutare coloro che hanno domande. Tutte le
risorse indicate sopra sono aperte a chiunque, quindi sentevi liberi di
iscrivervi, di iniziare a leggere e dare una mano dove potete.

% don't use \TL so the \uppercase in the headline works.  Also so
% tex4ht ends up with the right TeX.  Likewise the \protect's.
\section{Panoramica su \protect\TeX\protect\ Live}
\label{sec:overview-tl}

Questa sezione descrive i contenuti di \TL{} e della \TK{} di cui è parte.

\subsection{La \protect\TeX\protect\ Collection: \protect\TL,
            pro\protect\TeX{}t, Mac\protect\TeX}
\label{sec:tl-coll-dists}

Il \DVD{} \TK{} include quanto segue:

\begin{description}

\item [\TL] Un sistema \TeX{} completo da installare sul proprio disco. Home
  page: \url{https://tug.org/texlive/}.

\item [Mac\TeX] per \MacOSX\ (chiamato attualmente macOS da Apple, ma noi
  continuiamo ad usare il vecchio nome in questo documento), aggiunge a \TL{}
  un installatore nativo per \MacOSX\ ed altre applicazioni Mac. Home page:
  \url{https://tug.org/mactex/}.

\item [pro\TeX{}t] Un miglioramento della distribuzione \MIKTEX\ per
  Windows, \ProTeXt\ aggiunge alcuni strumenti supplementari a \MIKTEX\ e
  semplifica l'installazione. È interamente indipendente da \TL{} e ha le
  proprie istruzioni per l'installazione. Home page:
  \url{https://tug.org/protext}.  

\item [CTAN] Un'instantanea dell'archivio \CTAN{}
  (\url{https://ctan.org/}).

\end{description}

\CTAN{} e \pkgname{protext} non seguono le stesse condizioni di licenza di
\TL{}, per cui fate attenzione nel ridistribuirli o modificarli.


\subsection{Directory primarie di \protect\TL{}}
\label{sec:tld}

Segue un breve elenco e una descrizione delle directory primarie di
un'installazione di \TL.

\begin{ttdescription}
\item[bin] I programmi del sistema \TeX{}, raggruppati per piattaforma.
%
\item[readme-*.dir] Una rapida panoramica ed alcuni collegamenti utili per 
  \TL{},
  in varie lingue, sia in \HTML{} che in formato testuale.
%
\item[source] I sorgenti di tutti i programmi inclusi, comprese le
  distribuzioni \TeX{} basate su \Webc{}.
%
\item[texmf-dist] Il percorso principale; vedi \dirname{TEXMFDIST} sotto.
%
\item[tlpkg] Script, programmi e dati per la gestione
  dell'installazione e per il supporto specifico per Windows.
\end{ttdescription}

Per quanto riguarda la documentazione, i collegamenti nel file
\OnCD{doc.html} possono risultare utili. La documentazione per quasi
tutto (pacchetti, formati, font, manuali dei programmi, 
pagine di manuali in linea, file Info)
si trova in \dirname{texmf-dist/doc}. Potete usare il programma
\cmdname{texdoc} per trovare la documentazione, ovunque sia
collocata.

Questa stessa documentazione di \TL\ si trova in
\dirname{texmf-dist/doc/texlive}, disponibile in varie lingue:

\begin{itemize*}
\item{Ceco/Slovacco:} \OnCD{texmf-dist/doc/texlive/texlive-cz}
\item{Cinese Semplificato:} \OnCD{texmf-dist/doc/texlive/texlive-zh-cn}
\item{Francese:} \OnCD{texmf-dist/doc/texlive/texlive-fr}
\item{Giapponese:} \OnCD{texmf-dist/doc/texlive/texlive-ja}
\item{Inglese:} \OnCD{texmf-dist/doc/texlive/texlive-en}
\item{Italiano:} \OnCD{texmf-dist/doc/texlive/texlive-it}
\item{Polacco:} \OnCD{texmf-dist/doc/texlive/texlive-pl}
\item{Russo:} \OnCD{texmf-dist/doc/texlive/texlive-ru}
\item{Serbo:} \OnCD{texmf-dist/doc/texlive/texlive-sr}
\item{Tedesco:} \OnCD{texmf-dist/doc/texlive/texlive-de}
\end{itemize*}

\subsection{Panoramica dei percorsi predefiniti in texmf}
\label{sec:texmftrees}

Questa sezione elenca le variabili predefinite che specificano i percorsi
all'interno di texmf usati dal sistema, il loro scopo e la strutturazione
predefinita di \TL{}. Il comando \texttt{tlmgr~conf} mostra i valori di
queste variabili, così che sia possibile scoprire con facilità come queste
mappino le specifiche directory nella propria installazione.

Tutti i percorsi, inclusi quelli personali, dovrebbero seguire la Struttura
delle Directory di \TeX\ (\TeX\ Directory Structure, \TDS,
\url{https://tug.org/tds}) con tutta la sua miriade di sotto directory,
altrimenti i file potrebbero non essere trovati. La sezione
\ref{sec:local-personal-macros} (\p.\pageref{sec:local-personal-macros})
descrive ciò con maggior dettaglio. L'ordine che trovate qui è l'ordine
opposto con cui sono esplorati i percorsi, ossia, gli ultimi percorsi
nella lista hanno priorità rispetto ai primi.

\begin{ttdescription}
\item [TEXMFDIST] Il percorso che contiene quasi tutti i file nella
  distribuzione originale --- file di configurazione, script, pacchetti,
  font, ecc (l'eccezione principale sono gli eseguibili relativi a ciascuna
  piattaforma, che sono contenuti in un percorso gemello \code{bin/}).
\item [TEXMFSYSVAR] Il percorso (a livello di sistema) usato da
  \verb+texconfig-sys+, \verb+updmap-sys+, \verb+fmtutil-sys+ ed anche da
  \verb+tlmgr+ per memorizzare (nella cache) i dati generati durante 
  l'esecuzione, come i file dei formati e le mappe per i font.
\item [TEXMFSYSCONFIG] Il percorso (a livello di sistema) usato dai
  programmi \verb+texconfig-sys+, \verb+updmap-sys+ e \verb+fmtutil-sys+
  per memorizzare i dati di configurazione modificati.
\item [TEXMFLOCAL] Il percorso che un amministratore può usare per
  l'installazione di macro, di font, ecc., aggiuntivi o aggiornati a livello
  di sistema, in modo che siano disponibili per tutti gli utenti.
\item [TEXMFHOME] Il percorso che ciascun utente può usare per la propria
  installazione personale di macro, font, ecc., aggiuntivi o aggiornati.
  L'espansione di questa variabile si adatta dinamicamente per ciascun
  utente alla directory individuale dell'utente stesso.
\item [TEXMFVAR] Il percorso (a livello di ciascun utente) usato da
  \verb+texconfig+, \verb+updmap-user+ e \verb+fmtutil-user+ per memorizzare (nella 
  cache) i dati generati durante l'esecuzione, come i file dei formati e le
  mappe per i font generati.
\item [TEXMFCONFIG] Il percorso (a livello di ciascun utente) usato dai
  programmi \verb+texconfig+, \verb+updmap-sys+ e \verb+fmtutil-sys+ per
  memorizzare i dati di configurazione modificati.
\item [TEXMFCACHE] I percorsi usati da \ConTeXt\ MkIV e Lua\LaTeX\
  per memorizzare (nella cache) i dati generati durante l'esecuzione; il valore 
  predefinito è \code{TEXMFSYSVAR}, oppure (se non si hanno i permessi di
  scrittura) \code{TEXMFVAR}.
\end{ttdescription}

\noindent
La strutturazione predefinita è:
\begin{description}
  \item[percorso a livello di sistema] può contenere diverse edizioni di \TL{}
  (in Unix di default è \texttt{/url/local/texlive}):
  \begin{ttdescription}
    \item[2020] Un'edizione precedente.
    \item[2021] L'attuale edizione.
    \begin{ttdescription}
      \item [bin] ~
      \begin{ttdescription}
        \item [i386-linux] Esebuibili per \GNU/Linux (32 bit)
        \item [...]
        \item [universal-darwin] Eseguibili per \MacOSX
        \item [x86\_64-linux] Eseguibili per \GNU/Linux (64 bit)
        \item [win32] Eseguibili per Windows
      \end{ttdescription}
      \item [texmf-dist\ \ ]      \envname{TEXMFDIST} e \envname{TEXMFMAIN}
      \item [texmf-var \ \ ]      \envname{TEXMFSYSVAR}, \envname{TEXMFCACHE}
      \item [texmf-config]        \envname{TEXMFSYSCONFIG}
    \end{ttdescription}
    \item [texmf-local] \envname{TEXMFLOCAL}, pensato per essere mantenuto
      tra diverse edizioni.
  \end{ttdescription}
  \item[percorso home dell'utente] (\texttt{\$HOME} o
      \texttt{\%USERPROFILE\%})
    \begin{ttdescription}
      \item[.texlive2020] Dati privati generati e di configurazione relativi ad
        un'edizione precedente.
      \item[.texlive2021] Dati privati generati e di configurazione relativi
        all'attuale edizione.
      \begin{ttdescription}
        \item [texmf-var\ \ \ ] \envname{TEXMFVAR}, \envname{TEXMFCACHE}
        \item [texmf-config]    \envname{TEXMFCONFIG}
      \end{ttdescription}
    \item[texmf] \envname{TEXMFHOME} Macro personali, ecc.
  \end{ttdescription}
\end{description}


\subsection{Estensioni di \protect\TeX}
\label{sec:tex-extensions}

Lo sviluppo dell'originale \TeX{} di Knuth è congelato, se si escludono
rare correzioni di bug. È presente in \TL\ come \prog{tex} e si prevede
che non sarà modificato nel prossimo futuro. 
\TL{} contiene anche diverse versioni estese
di \TeX\ (note anche come motori \TeX):

\begin{description}

\item [\eTeX] aggiunge un insieme di nuove primitive \label{text:etex}
(riguardanti l'espansione delle macro, la scansione dei caratteri, le
classi di segnaposto, funzionalità di debug aggiuntive ed altro ancora)
e le estensioni \TeXXeT{} per la scrittura bidirezionale. Nella modalità
di base, \eTeX{} è compatibile al 100\% con il \TeX{} ordinario.
Consultate \OnCD{texmf-dist/doc/etex/base/etex_man.pdf}.

\item [pdf\TeX] parte dalle estensioni di \eTeX, aggiunge il supporto per
la generazione di file PDF oltre che dei \dvi{} e molte estensioni
che non sono legate alla generazione dell'output. Questo programma è
invocato per molti formati comuni, come \prog{etex}, \prog{latex},
\prog{pdflatex}. Il suo sito web è \url{http://www.pdftex.org/}.
Consultate \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf} per il manuale
e \OnCD{texmf-dist/doc/pdftex/samplepdftex/samplepdf.tex} per gli
esempi d'uso di alcune delle sue funzionalità.

\item [Lua\TeX] aggiunge il supporto per l'input Unicode e per i font
OpenType\slash\ TrueType e di sistema. Incorpora anche un inteprete Lua
(\url{https://lua.org/}), permettendo soluzioni a molti problemi spinosi
di \TeX. Quando è invocato come \filename{luatex}, si comporta come un
interprete Lua autonomo. Il suo sito web è \url{http://www.luatex.org/}
e il manuale di riferimento è \OnCD{texmf-dist/doc/luatex/base/luatexref.pdf}.

\item [(e)(u)p\TeX] ha il supporto nativo per i requisiti dell'impaginazione
del giapponese; p\TeX\ è il motore di base, mentre le varianti e- aggiungono
le funzionalità di \eTeX\ e u- aggiunge il supporto per l'Unicode.

\item [\XeTeX] aggiunge il supporto per l'input in Unicode e per i font
OpenType e di sistema, implementato usando librerie di terze parti
standard. Visitate \url{https://tug.org/xetex}.

\item [\OMEGA\ (Omega)] è basato sull'Unicode (caratteri a 16 bit) e
dunque consente di lavorare con quasi tutti gli alfabeti del mondo
contemporaneamente. Supporta anche i cosiddetti ``\OMEGA{} Translation
Process'' (OTP, Processi di Traduzione Omega), per compiere
trasformazioni complesse su input arbitrari. Omega non è più incluso in
\TL{} come programma separato; soltanto Aleph è fornito.

\item [Aleph] combina le estensioni \OMEGA\ ed \eTeX. Consultate
\OnCD{texmf-dist/doc/aleph/base}.

\end{description}


\subsection{Altri programmi rilevanti inclusi in \protect\TL}

Seguono alcuni ulteriori programmi di uso comune inclusi in \TL{}:
\begin{cmddescription}

\item [bibtex, biber] supporto per la bibliografia.

\item [makeindex, xindy] supporto per gli indici.

\item [dvips] converte i \dvi{} in \PS{}.

\item [xdvi] programma di anteprima dei \dvi{} per l'X Window System.

\item [dviconcat, dviselect] tagliano ed incollano le pagine contenute nei
file \dvi{}.

\item [dvipdfmx] converte i \dvi{} in PDF, un approccio alternativo
a pdf\TeX\ (citato in precedenza).

\item [psselect, psnup, \ldots] programmi per il trattamento dei \PS{}.

\item [pdfjam, pdfjoin, \ldots] programmi per il trattamento dei PDF.

\item [context, mtxrun] processore Con\TeX{}t e PDF.

\item [htlatex, \ldots] \cmdname{tex4ht}: convertitore da \AllTeX{} ad
  HTML (e ad XML ed altro ancora).

\end{cmddescription}


\htmlanchor{installation}
\section{Installazione}
\label{sec:install}

\subsection{Avviare l'installatore}
\label{sec:inst-start}

Per cominciare, procuratevi il \DVD{} \TK{} oppure scaricate
l'installatore di rete di \TL. Consulate
\url{https://tug.org/texlive/acquire.html} per maggiori informazioni ed
altri metodi per ottenere il software.

\begin{description} \item [Installatore di rete, .zip o .tar.gz:]
Scaricatelo da \CTAN, dal percorso \dirname{systems/texlive/tlnet};
l'indirizzo \url{http://mirror.ctan.org/systems/texlive/tlnet}
dovrebbe reindirizzare ad un vicino mirror aggiornato. Potete
scaricare sia \filename{install-tl.zip} che può essere usato sotto
Unix e Windows, sia il notevolmente più piccolo
\filename{install-unx.tar.gz} solo per Unix. Dopo averlo
decompresso, \filename{install-tl} e
\filename{install-tl-windows.bat} si troveranno nella sotto
directory \dirname{install-tl}.

\item [Installatore di rete, .exe per Windows:] Scaricatelo da \CTAN{}
come sopra e fate doppio clic su di esso. Questo avvierà una prima fase
di decompressione e installazione; fate riferimento alla
figura~\ref{fig:nsis}. Vi dà due scelte: ``Intalla'' e
``Decomprimi soltanto''.

\item [\DVD{} \TeX{} Collection:] aprite la sotto directory
\dirname{texlive} del \DVD. Sotto Windows, il programma di installazione
dovrebbe avviarsi automaticamente quando inserite il \DVD. Potete ottenere il
\DVD\ diventando membri di un gruppo utenti \TeX\ (caldamente consigliato,
\url{https://tug.org/usergroups.html}) oppure acquistandolo separatamente
(\url{https://tug.org/store}) o ancora masterizzandolo a partire
dall'immagine \ISO. Sulla maggior parte dei sistemi potete anche montare
direttamente l'\ISO. Dopo l'installazione dal \DVD\ o dall'immagine \ISO, se
volete ottenere gli aggiornamenti da Internet, consulate
\ref{sec:dvd-install-net-updates}.

\end{description}

\begin{figure}[tb]
\tlpng{nsis_installer}{.6\linewidth}
\caption{Prima fase dell'installatore \code{.exe} per Windows}\label{fig:nsis}
\end{figure}

Indipendentemente dall'origine, viene eseguito lo stesso programma di
installazione. La differenza più evidente tra i due è che con l'installatore
di rete riceverete i pacchetti che sono disponibili al momento. Invece
le immagini \DVD\ e \ISO\ non vengono aggiornate tra una versione 
pricipale pubblicata e l'altra.

Se avete la necessità di usare un proxy, usate un file
\filename{~/.wgetrc} o le variabili d'ambiente con le impostazioni proxy
per Wget
(\url{https://www.gnu.org/software/wget/manual/html_node/Proxies.html}),
o l'equivalente per qualsiasi programma di download usiate. Questo non
conta se state installando dal \DVD\ o da un'immagine \ISO.

Le sezioni seguenti spiegano l'avvio dell'installazione in maggiore
dettaglio.

\subsubsection{Unix}

Di seguito, \texttt{>} denota il prompt della shell; l'input dell'utente è
in \Ucom{\texttt{grassetto}}.
Il programma \filename{install-tl} è uno script Perl. Il modo più semplice
per avviarlo su un sistema compatibile Unix è il seguente:
\begin{alltt}
> \Ucom{perl /percorso/verso/il/programma/install-tl}
\end{alltt}
In alternativa potete invocare
\Ucom{/percorso/verso/il/programma/install-lt} se è rimasto eseguibile,
oppure spostarvi con \texttt{cd} nella directory, ecc.; non staremo a ripetere
tutte queste varianti. Potreste dover ingrandire la finestra di terminale
(prompt dei comandi, per gli utenti Windows)
affinché mostri l'intera schermata dell'installatore testuale
(figura~\ref{fig:text-main}).

Per installare in modalità \GUI\ (figura~\ref{fig:advanced-lnx}),
dovete avere installato Tcl/Tk. In questo caso, potete eseguire
\begin{alltt}
> \Ucom{perl install-tl -gui}
\end{alltt}

Le vecchie opzioni \code{wizard} e \code{perltk}/\code{expert} sono ancora
disponibili, ma ora fanno le stesse cose di \code{-gui}. Per un elenco
completo delle varie opzioni:
\begin{alltt}
> \Ucom{perl install-tl -help}
\end{alltt}

\textbf{Sui permessi Unix:} Al momento dell'installazione,
la tua \code{umask} sarà rispettata dall'installatore di \TL{}.
Quindi, se vuoi che l'installazione sia usabile da altri utenti oltre che da
te, sii sicuro che le tue impostazioni siano permissive a sufficienza, per
esempio, \code{umask 002}. Per ulteriori informazioni riguardo
\code{umask}, consulta la documentazione del tuo sistema.

\textbf{Considerazioni speciali per Cygwin:} Diversamente da altri sistemi
Unix-compatibili, Cygwin non è preimpostato per includere tutti i
programmi di cui l'installatore di \TL{} ha bisogno. Consulta la
sezione~\ref{sec:cygwin}.


\subsubsection{MacOSX}
\label{sec:macosx}

Come accennato nella sezione~\ref{sec:tl-coll-dists}, abbiamo preparato
una distribuzione separata per \MacOSX{} chiamata Mac\TeX\
(\url{https://tug.org/mactex}). Su \MacOSX{} raccomandiamo di usare
l'installatore nativo di Mac\TeX\ al posto dell'installatore di \TL, in
quanto quello nativo esegue alcuni aggiustamenti specifici per il Mac, in
particolare per consentire con semplicità il passaggio tra le varie
distribuzioni \TeX\ per \MacOSX\ (Mac\TeX, Fink, MacPorts, \ldots)
usando la cosiddetta struttura dati \TeX{}Dist.

Mac\TeX\ è strettamente basato su \TL, le principali strutture delle
directory e gli eseguibili sono esattamente gli stessi, ma sono aggiunte
alcune ulteriori cartelle con documentazione e applicazioni specifici per
il Mac.


\subsubsection{Windows}\label{sec:wininst}

Se state usando il file zip scaricato e decompresso, oppure se
l'installatore su \DVD\ non si avvia automaticamente, fate doppio clic su
\filename{install-tl-windows.bat}.

Potete avviare l'installatore anche dal prompt dei comandi. Qui sotto,
\texttt{>} denota il prompt; l'input dell'utente è in
\Ucom{\texttt{grassetto}}. Se vi trovate nella cartella dell'installatore,
eseguite semplicemente:
\begin{alltt}
> \Ucom{install-tl-windows}
\end{alltt}

In alternativa potete lanciarlo con un percorso assoluto, come:
\begin{alltt}
> \Ucom{D:\bs{}texlive\bs{}install-tl-windows}
\end{alltt}
per il \DVD\ \TK, supponendo che \dirname{D:} sia l'unità del lettore \DVD. La
figura~\ref{fig:basic-w32} mostra la schermata base dell'installazione \GUI,
che è quella predefinita per Windows.

Per installare in modalità testuale, usate:
\begin{alltt}
> \Ucom{install-tl-windows -no-gui}
\end{alltt}

Per un elenco completo delle diverse opzioni:
\begin{alltt}
> \Ucom{install-tl-windows -help}
\end{alltt}

%%% TODO
\begin{figure}[tb]
\begin{boxedverbatim}
Installing TeX Live 2021 from: ...
Platform: x86_64-linux => 'GNU/Linux on Intel x86_64'
Distribution: inst (compressed)
Directory for temporary files: /tmp
...
 Detected platform: GNU/Linux on Intel x86_64

 <B> binary platforms: 1 out of 16

 <S> set installation scheme: scheme-full

 <C> customizing installation collections
     40 collections out of 41, disk space required: 7172 MB

 <D> directories:
   TEXDIR (the main TeX directory):
     /usr/local/texlive/2021
   ...

 <O> options:
   [ ] use letter size instead of A4 by default
   ...

 <V> set up for portable installation

Actions:
 <I> start installation to hard disk
 <P> save installation profile to 'texlive.profile' and exit
 <H> help
 <Q> quit
\end{boxedverbatim}
\vskip-.5\baselineskip
\caption{Schermata principale dell'installatore testuale
  (\GNU/Linux)}\label{fig:text-main}
\end{figure}

\begin{figure}[tb]
\tlpng{basic-w32}{.6\linewidth}
\caption{Schermata dell'installazione (Windows); il pulsante Avanzate
  darà qualcosa di simile alla figura~\ref{fig:advanced-lnx}}\label{fig:basic-w32}
\end{figure}

\begin{figure}[tb]
\tlpng{advanced-lnx}{\linewidth}
\caption{Schermata dell'installazione \GUI\ avanzata
  (\GNU/Linux)}\label{fig:advanced-lnx}
\end{figure}


\htmlanchor{cygwin}
\subsubsection{Cygwin}
\label{sec:cygwin}

Prima di iniziare l'installazione, usate il programma \filename{setup.exe}
di Cygwin per installare i pacchetti \filename{perl} e \filename{wget}, a
meno che non lo abbiate già fatto. I seguenti pacchetti aggiuntivi sono
raccomandati:
\begin{itemize*}
\item \filename{fontconfig} [richiesto da \XeTeX\ e Lua\TeX]
\item \filename{ghostscript} [richiesto da vari programmi]
\item \filename{libXaw7} [richiesto da \code{xdvi}]
\item \filename{ncurses} [fornisce il comando \code{clear} usato
  dall'installatore]
\end{itemize*}

\subsubsection{L'installatore testuale}

La figura~\ref{fig:text-main} mostra la schermata principale della
modalità testuale sotto Unix. L'installatore testuale è quello
predefinito, in ambiente Unix.

Questo è soltanto un installatore a riga di comando; non c'è alcun
supporto per il movimento del cursore. Ad esempio, non
potete muovervi tra le caselle di spunta o i campi di inserimento.
Voi semplicemente digitate qualcosa al prompt (MAIUSCOLE e minuscole sono
differenti), premete il tasto Invio e l'intera schermata del terminale
sarà aggiornata, con il contenuto modificato.

L'interfaccia di installazione testuale è così primitiva per farla
funzionare sul maggior numero possibile di piattaforme, anche con un Perl
minimale.

\subsubsection{L'installatore grafico}
\label{sec:graphical-inst}

L'installatore grafico predefinito parte semplice, giusto con poche opzioni;
vedi la figura~\ref{fig:basic-w32}. Può essere avviato con
\begin{alltt}
> \Ucom{install-tl -gui}
\end{alltt}
Il pulsante Avanzato dà accesso alla maggior parte delle opzioni
dell'installazione testuale; vedi la figura~\ref{fig:advanced-lnx}.

Le opzioni \GUI{} \texttt{perltk}/\texttt{expert} e \texttt{wizard} ora
chiamano il normale installatore grafico.

\subsection{Eseguire l'installatore}
\label{sec:runinstall}

L'installatore è pensato per essere perlopiù autoesplicativo, comunque seguono
alcune note riguardo a varie opzioni e sottomenu.

\subsubsection{Menu delle architetture (solo Unix)}
\label{sec:binary}

%TODO figura!
\begin{figure}[tb]
\begin{boxedverbatim}
Available platforms:
===============================================================================
   a [ ] Cygwin on Intel x86 (i386-cygwin)
   b [ ] Cygwin on x86_64 (x86_64-cygwin)
   c [ ] MacOSX current (10.14-) on ARM/x86_64 (universal-darwin)
   d [ ] MacOSX legacy (10.6-) on x86_64 (x86_64-darwinlegacy)
   e [ ] FreeBSD on x86_64 (amd64-freebsd)
   f [ ] FreeBSD on Intel x86 (i386-freebsd)
   g [ ] GNU/Linux on ARM64 (aarch64-linux)
   h [ ] GNU/Linux on ARMv6/RPi (armhf-linux)
   i [ ] GNU/Linux on Intel x86 (i386-linux)
   j [X] GNU/Linux on x86_64 (x86_64-linux)
   k [ ] GNU/Linux on x86_64 with musl (x86_64-linuxmusl)
   l [ ] NetBSD on x86_64 (amd64-netbsd)
   m [ ] NetBSD on Intel x86 (i386-netbsd)
   o [ ] Solaris on Intel x86 (i386-solaris)
   p [ ] Solaris on x86_64 (x86_64-solaris)
   s [ ] Windows (win32)
\end{boxedverbatim}
\vskip-.5\baselineskip
\caption{Menu delle architetture}\label{fig:bin-text}
\end{figure}

La figura~\ref{fig:bin-text} mostra il menu delle architetture in modalità
testuale. Di base, saranno installati solo gli eseguibili per la propria
piattaforma attuale. Da questo menu si può selezionare l'installazione
dei binari anche per altre piattaforme. Questa opzione è utile se si
condivide un'installazione di \TeX\ in una rete di macchine eterogenee,
oppure per una macchina con due sistemi operativi.

\subsubsection{Selezionare cosa deve essere installato}
\label{sec:components}

% TODO
\begin{figure}[tbh]
\begin{boxedverbatim}
Select scheme:
===============================================================================
 a [X] full scheme (everything)
 b [ ] medium scheme (small + more packages and languages)
 c [ ] small scheme (basic + xetex, metapost, a few languages)
 d [ ] basic scheme (plain and latex)
 e [ ] minimal scheme (plain only)
 f [ ] ConTeXt scheme
 g [ ] GUST TeX Live scheme
 h [ ] infrastructure-only scheme (no TeX at all)
 i [ ] teTeX scheme (more than medium, but nowhere near full)
 j [ ] custom selection of collections
\end{boxedverbatim}
\vskip-.5\baselineskip
\caption{Menu degli schemi}\label{fig:scheme-text}
\end{figure}

La figura~\ref{fig:scheme-text} mostra il menu degli schemi di \TL; da qui
potete scegliere uno ``schema'', che è un insieme di collezioni di pacchetti.
Lo schema \optname{full} installa tutto quanto disponibile.
Questo è lo schema raccomandato, ma potete anche scegliere \optname{basic}
per avere solo plain e \LaTeX, \optname{small} per quache programma in più
(equvallente alla cosiddetta installazione Basic\TeX\ di Mac\TeX),
\optname{minimal} per scopi di prova e \optname{medium} o \optname{teTeX} per
una via di mezzo. Ci sono anche ulteriori schemi specializzati e specifici per
particolari paesi.

\begin{figure}[tbh]
\centering \tlpng{stdcoll}{.7\linewidth}
\caption{Menu delle collezioni}\label{fig:collections-gui}
\end{figure}

Potete rifinire la vostra scelta dello schema con i menu ``Collezioni''
(figura~\ref{fig:collections-gui}, mostrati, per cambiare, in modalità \GUI).

Le collezioni stanno ad un livello di dettaglio maggiore rispetto agli
schemi \Dash\ in pratica, uno schema consiste in varie collezioni, una
collezione consiste in uno o più pacchetti e un pacchetto (la più piccola
forma di raggruppamento in \TL) contiene i file con le macro \TeX, i font
e così via.

Se desiderate un controllo maggiore di quello fornito dal menu delle
collezioni, potete usare il programma \TeX\ Live Manager (\prog{tlmgr})
dopo l'installazione (cfr.\ la sezione~\ref{sec:tlmgr}); tramite tale
programma, potete controllare l'installazione al livello di dettaglio dei
singoli pacchetti.

\subsubsection{Directory}
\label{sec:directories}

La strutturazione predefinita è descritta nella
sezione~\ref{sec:texmftrees}, \p.\pageref{sec:texmftrees}. La directory
predefinita di installazione è
\dirname{/usr/local/texlive/2021} sotto
Unix e |%SystemDrive%\texlive\2021| sotto Windows. Questa configurazione
permette di avere molte installazioni parallele di \TL, ad esempio una per
ogni edizione (tipicamente per anno, come qui) e di passare tra di loro
semplicemente modificando il vostro percorso di ricerca.

La directory di installazione può essere modificata impostando la
cosiddetta \dirname{TEXDIR} nel programma di installazione. La schermata
\GUI\ per questa ed altre opzioni è mostrata nella
figura~\ref{fig:advanced-lnx}. Tra le ragioni più comuni per cambiarla ci sono
la mancanza di sufficiente spazio su disco in quella partizione (l'intera
\TL\ richiede diversi gigabyte) o la mancanza di permessi di scrittura per
la posizione predefinita (non è necessario essere root o amministratori
per installare \TL, ma è necessario disporre dei permessi di scrittura sulla
directory di destinazione).

Le directory di installazione possono essere modificate anche impostando
alcune variabili d'ambiente prima di eseguire il programma di
installazione (molto probabilmente \envname{TEXLIVE\_INSTALL\_PREFIX} o
\envname{TEXLIVE\_INSTALL\_TEXDIR}); consultate la documentazione tramite
|install-tl --help| (disponibile online su
\url{https://tug.org/texlive/doc/install-tl.html}) per la lista completa e
per maggiori dettagli.

Una ragionevole scelta alternativa è una directory all'interno della
vostra home, soprattutto se sarete gli unici utilizzatori. Usate `|~|'
per specificare la vostra home, come ad esempio in `|~/texlive/2021|'.

Raccomandiamo di includere l'anno nel percorso, così da poter tenere
diverse edizioni di \TL{} fianco a fianco (potete anche mantenere un nome
indipendente dall'edizione, come \dirname{/usr/local/texlive-cur}, sotto
forma di collegamento simbolico, di cui modificare la destinazione dopo
aver provato la nuova edizione).

Modificare \dirname{TEXDIR} durante l'installazione causerà anche la
modifica di \dirname{TEXMFLOCAL}, \dirname{TEXMFSYSVAR} e
\dirname{TEXMFSYSCONFIG}.

\dirname{TEXMFHOME} è la posizione raccomandata per le macro e i pacchetti
personali. Il suo valore predefinito è |~/texmf| (|~/Library/texmf| su Mac).
A differenza di \dirname{TEXDIR}, qui il carattere |~| viene mantenuto all'interno dei
file di configurazione creati, dato che è utile che si riferisca alla home
dell'utente che esegue \TeX. Si espande in \dirname{$HOME} sotto
Unix e \verb|%USERPROFILE%| sotto Windows. Nota speciale ridondante:
\envname{TEXMFHOME}, come tutti gli altri percorsi, deve essere organizzata
secondo il \TDS, o i file potrebbero non essere trovati. %stopzone

\dirname{TEXMFVAR} è la posizione in cui vengono memorizzati la maggior
parte dei dati generati durante l'esecuzione specifici per ciascun utente.
\dirname{TEXMFCACHE} è il nome della variabile usata per lo stesso scopo da
Lua\LaTeX\ e \ConTeXt\ MkIV (consultate la
sezione~\ref{sec:context-mkiv}, \p.\pageref{sec:context-mkiv}); il suo
valore predefinito è \dirname{TEXMFSYSVAR}, oppure (se non si hanno i
permessi di scrittura per quel percorso) \dirname{TEXMFVAR}.


\subsubsection{Opzioni}
\label{sec:options}

% TODO FIGURA!!!
\begin{figure}[tbh]
\begin{boxedverbatim}
Options setup:
===============================================================================
 <P> use letter size instead of A4 by default: [ ]
 <E> execution of restricted list of programs: [X]
 <F> create all format files:                  [X]
 <D> install font/macro doc tree:              [X]
 <S> install font/macro source tree:           [X]
 <L> create symlinks in standard directories:  [ ]
            binaries to:
            manpages to:
                info to:
 <Y> after install, set CTAN as source for package updates: [X]
\end{boxedverbatim}
\vskip-.5\baselineskip
\caption{Menu delle opzioni (Unix)}\label{fig:options-text}
\end{figure}

La figura~\ref{fig:options-text} mostra il menu delle opzioni in modalità
testuale. Ulteriori informazioni su ciascuna opzione:

\begin{description}
\item[use letter size instead of A4 by default:]
  Questa è la selezione del formato di carta predefinito. Ovviamente, se
  lo si desidera, si potrà e si dovrebbe specificare il formato della
  carta in ogni singolo documento.

\item[execution of restricted list of programs:] A partire da \TL\ 2010,
  è consentita l'esecuzione da parte di \TeX\ di pochi programmi esterni.
  La (molto breve) lista di questi programmi è data nel file
  \filename{texmf.cnf}. Consultate le novità 2010
  (sezione~\ref{sec:2010news}) per maggiori dettagli.

\item[create all format files:] Per quanto i file di formato non
  strettamente necessari richiedano tempo per essere generati e spazio su
  disco per essere memorizzati, è comunque raccomandato di lasciare questa
  opzione attiva: se non lo fate, allora i file di formato saranno
  generati, quando necessari, all'interno delle directory private
  \dirname{TEXMFVAR} di ciascun utente. In tali posizioni, non saranno
  aggiornati automaticamente se lo sono (ad esempio) gli eseguibili o i
  modelli di sillabazione nell'installazione, e così potreste trovarvi ad
  avere formati incompatibili.

\item[install font/macro \ldots\ tree:] Scaricano/installano 
  la documentazione e i file sorgenti inclusi nella
  maggior parte dei pacchetti. Non è raccomandato disattivarle.

\item[create symlinks in standard directories:] Questa opzione
  (solo Unix) evita di dover modificare le variabili di ambiente.
  Senza di essa, le directory di \TL{} devono solitamente essere aggiunte
  alle variabili \envname{PATH}, \envname{MANPATH} e \envname{INFOPATH}.
  Avete bisogno dei permessi di scrittura nelle directory di destinazione.
  Questa opzione serve ad accedere al sistema \TeX\ tramite directory che
  sono già note agli utenti, come \dirname{/usr/local/bin}, che già non
  contengono alcun file di \TeX. State attenti a non sovrascrivere i file 
  esistenti sul
  vostro sistema, ad esempio, non fate l'errore di indicare directory di 
  sistema. L'approccio
  più sicuro e raccomandato è quello di lasciare questa opzione
  disattivata.

\item[after install, set CTAN as source for package updates:]
  Quando si esegue l'installazione
  da \DVD, questa opzione è abilitata di default, dato che di solito si
  vuole prendere ogni successivo aggiornamento di pacchetti dall'area
  \CTAN\ che è aggiornata durante l'anno. L'unica ragione plausibile per
  disabilitarla è quando si vuole installare solo un sottoinsieme dal \DVD
  e si ha intenzione di estendere l'installazione successivamente. In
  ogni caso, l'archivio dei pacchetti per l'installatore e per gli
  aggiornamenti successivi all'installazione può essere impostato in modo
  indipendente secondo le necessità; consultate le sezioni~\ref{sec:location}
  e \ref{sec:dvd-install-net-updates}.
\end{description}
Opzioni specifiche di Windows, come mostrate dall'interfaccia \GUI{} avanzata:
\begin{description}
\item[regola il percorso di ricerca] Questa assicura che tutti
  i programmi vedranno la directory degli esebuibili di \TL{} nel loro
  percorso di ricerca.

\item[aggiungi scorciatoie al menu] Se attiva, ci sarà un sottomenu \TL{}
   del menu Start. C'è una terza opzione `Voce nel launcher' oltre a
  `TeX Live menu' e `Nessuna scorciatoia'. Questa opzione è descritta nella
  sezione \ref{sec:sharedinstall}.

\item[associazioni dei file] Le opzioni sono solo `Solo nuovi'
  (crea le associazioni dei file, ma non sovrascrive quelle esistenti),
  `Tutti' e `Nessuno'.

\item[installa il programma \TeX{}works]
\end{description}
Quando tutte le impostazioni sono come le desiderate, potete digitare
``I'' nell'interfaccia testuale, oppure potete premere il pulsante
`Installa' nella \GUI, per avviare il processo di installazione. Quando
questo è completo, passate alla sezione~\ref{sec:postinstall} per leggere
cos'altro dovete fare, se ce n'è bisogno.

\subsection{Opzioni della riga di comando di install-tl}
\label{sec:cmdline}

Digitate
\begin{alltt}
> \Ucom{install-tl -help}
\end{alltt}
per ottenere un elenco delle opzioni della riga di comando. Sia |-| che
|--| possono essere usati per introdurre i nomi delle opzioni. Ecco le più
comuni:

\begin{ttdescription}
\item[-gui] Usa l'installatore \GUI\ se è possibile. Questo richiede Tcl/Tk
  versione 8.5 o superiore. Vale per \MacOSX\ ed è distribuito con \TL{}
  su Windows. Le opzoni obsolete \texttt{-gui=perltk} e \texttt{-gui=wizard}
  sono ancora disponibili ma richiamano la stessa interfaccia \GUI; 
  se Tcl/Tk non sono disponibili, l'installazione
  prosegue in modalità testuale.

\item[-no-gui] Costringe all'uso dell'installatore testuale.

\item[-lang {\sl LL}] Specifica la lingua dell'interfaccia
  dell'installatore sotto forma di un codice standard (di solito di due
  lettere). L'installatore cerca di determinare automaticamente la lingua
  corretta, ma se fallisce o se la lingua corretta non è disponibile,
  allora usa l'inglese come ripiego. Lanciate \verb|install-tl --help|
  per la lista delle lingue disponibili.

\item[-portable] Installa per un uso portabile su una chiavetta \USB{}.
  Questa opzione è anche selezionabile dall'installatore testuale con il 
  comando
  \code{V} e dall'installatore grafico. Consultate la
  sezione~\ref{sec:portable-tl}.

\item[-profile {\sl file}] Carica il profilo di installazione \var{file} ed
  esegue l'installazione senza interazione con l'utente. Il programma di
  installazione scrive sempre un file \filename{texlive.profile} nella sotto
  directory \dirname{tlpkg} della vostra installazione. Ad esempio, quel file 
  può essere
  passato come argomento per ripetere esattamente la stessa installazione su
  un sistema differente. In alternativa, potete usare un profilo
  personalizzato, creato facilmente partendo da uno generato automaticamente
  e modificandone i valori, oppure potete usare un file vuoto, che prenderà
  come valori tutti quelli predefiniti.

\item [-repository {\sl url-o-directory}] Specifica l'archivio dei
  pacchetti da cui installare; vedi più avanti.

\htmlanchor{opt-in-place}
\item[-in-place] (Documentato solo per completezza: non usate questa
  opzione a meno che non sappiate cosa state facendo.) Se avete già una
  copia di \TL{}, anche ottenuta tramite rsync o svn (consultate
  \url{https://tug.org/texlive/acquire-mirror.html}),
  allora questa opzione userà ciò che avete ottenuto, così com'è, ed
  eseguirà solo le necessarie procedure di post installazione. Siete
  avvisati che il file \filename{tlpkg/texlive.tlpdb} potrebbe venire
  sovrascritto; salvarne una copia è vostra responsabilità. Inoltre, la
  rimozione dei pacchetti deve essere eseguita manualmente. Questa
  opzione non può essere attivata dall'interfaccia dell'installatore.
\end{ttdescription}


\subsubsection{L'opzione \optname{-repository}}
\label{sec:location}

L'archivio dei pacchetti di rete predefinito è uno dei mirror di \CTAN{}
scelto automaticamente tramite \url{http://mirror.ctan.org}.

Per rimpiazzare questa scelta, potete specificare un url che comincia per
\texttt{ftp:}, \texttt{http:}, \texttt{https:} o \texttt{file:/}, oppure
il semplice nome di una directory (quando specificate un indirizzo
\texttt{http:}, \texttt{https:} o \texttt{ftp:}, l'eventuale carattere
finale ``\texttt{/}'' e l'eventuale ``\texttt{/tlpkg}'' conclusivo saranno
ignorati).

Per esempio, potete scegliere uno specifico mirror di \CTAN\ con qualcosa
del tipo:
\url{http://ctan.example.org/tex-archive/systems/texlive/tlnet/},
indicando un vero nome di un sito e il suo specifico
percorso che ospita \CTAN al posto di |ctan.example.org/tex-archive|. 
L'elenco dei mirror di \CTAN\ si trova alla
pagina \url{https://ctan.org/mirrors}.
 
Se il valore specificato è locale (sia tramite percorso che tramite un url
\texttt{file:/}), saranno usati i file compressi contenuti in una sotto
directory \dirname{archive} del percorso (anche se sono disponibili anche
file non compressi).


\subsection{Azioni successive all'installazione}
\label{sec:postinstall}

Potrebbero essere necessarie alcune azioni successivie all'installazione.

\subsubsection{Variabili d'ambiente per Unix}
\label{sec:env}

Se avete deciso di creare i collegamenti simbolici nelle directory standard
(come descritto nella sezione~\ref{sec:options}), allora non c'è bisogno di
modificare le variabili d'ambiente. Altrimenti, nei sistemi Unix, la
directory degli eseguibili per la vostra piattaforma deve essere aggiunta al
percorso di ricerca (sotto Windows, è l'installatore ad occuparsene).

Ogni piattaforma supportata ha la propria sotto directory all'interno di
\dirname{TEXDIR/bin}. Consultate la figura~\ref{fig:bin-text} per la lista
delle sotto directory e delle corrispondenti piattaforme.

Facoltativamente potete anche aggiungere le directory della documentazione
man e Info ai propri rispettivi percorsi di ricerca, se volete che gli
strumenti di sistema la trovino. Le pagine di manuale potrebbero essere
trovate magicamente dopo l'aggiunta al \envname{PATH}. 

Per le shell compatibili con la Bourne, come \prog{bash}, e usando
\GNU/Linux per Intel x86 e le directory predefinite come esempio, il file
da modificare dovrebbe essere \filename{$HOME/.profile} %stopzone
(o un qualunque altro file aperto da \filename{.profile}), e le linee da
aggiungere sarebbero simili alle seguenti:

\begin{sverbatim}
PATH=/usr/local/texlive/2021/bin/x86_64-linux:$PATH; export PATH
MANPATH=/usr/local/texlive/2021/texmf/doc/man:$MANPATH; export MANPATH
INFOPATH=/usr/local/texlive/2021/texmf/doc/info:$INFOPATH; export INFOPATH
\end{sverbatim}
%stopzone

Per csh o tcsh, il file da modificare tipicamente è
\filename{$HOME/.cshrc} e le linee da aggiungere sarebbero del
tipo:

\begin{sverbatim}
setenv PATH /usr/local/texlive/2021/bin/x86_64-linux:$PATH
setenv MANPATH /usr/local/texlive/2021/texmf/doc/man:$MANPATH
setenv INFOPATH /usr/local/texlive/2021/texmf/doc/info:$INFOPATH
\end{sverbatim}

Se già avete delle impostazioni del genere in uno dei file citati,
naturalmente dovete unirvi le directory di \TL\ come è più
opportuno.


\subsubsection{Variabili d'ambiente: configurazione globale}
\label{sec:envglobal}

Se volete che questi cambiamenti siano globali oppure che si applichino a
ciascun nuovo utente aggiunto nel sistema, allora dovete cavarvela da
soli; c'è semplicemente troppa varietà tra i diversi sistemi nel come e
nel dove queste cose siano configurate.

I nostri due suggerimenti sono: 1)~potete controllare il file
\filename{/etc/manpath.config} e, se esiste, aggiungere linee come

\begin{sverbatim}
MANPATH_MAP /usr/local/texlive/2021/bin/x86_64-linux \
            /usr/local/texlive/2021/texmf/doc/man
\end{sverbatim}

E 2)~verificate la presenza di un file \filename{/etc/environment} che
potrebbe definire il percorso di ricerca ed altre variabili di ambiente
predefinite.

In ciascuna directory contenente eseguibili (per Unix), noi creiamo anche
un collegamento simbolico chiamato \code{man} alla directory
\dirname{texmf-dist/doc/man}. Alcuni programmi \code{man}, come quello di
\MacOSX, lo individueranno automaticamente, ovviando alla necessità di
qualunque configurazione per le pagine di manuale.


\subsubsection{Aggiornamenti da Internet dopo l'installazione del \DVD}
\label{sec:dvd-install-net-updates}

Se avete installato \TL\ dal \DVD\ e successivamente volete ottenere gli
aggiornamenti da Internet, dovete eseguire questo comando---\emph{dopo} aver
aggiornato il vostro percorso di ricerca (come descritto nella sezione
precedente):

\begin{alltt}
> \Ucom{tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet}
\end{alltt}

Questo dice a \cmdname{tlmgr} di usare un mirror di \CTAN\ nelle vicinanze
per gli aggiornamenti futuri. È l'azione predefinita quando si installa dal
\DVD, tramite l'opzione descritta nella sezione~\ref{sec:options}.

Se ci sono problemi con la selezione automatica di un mirror, potete
specificarne uno in particolare dall'elenco alla pagina
\url{https://ctan.org/mirrors}. Usate il percorso esatto alla sotto directory
\dirname{tlnet} su quel mirror, come mostrato in precedenza.


\htmlanchor{xetexfontconfig}  % manteniamo il link storico funzionante
\htmlanchor{sysfontconfig}
\subsubsection{Configurazione dei font di sistema per \protect\XeTeX\protect\ e Lua\protect\TeX}
\label{sec:font-conf-sys}

\XeTeX\ e Lua\TeX\ possono usare qualsiasi font installato nel sistema,
non solo quelli nelle directory di \TeX. Fanno questo tramite metodi
correlati, ma non identici.

Su Windows, i font distribuiti con \TL\ sono resi automaticmanete
disponibili a \XeTeX\ tramite il loro nome. Su \MacOSX, il supporto
alla ricerca per nome dei font richiede del passi aggiuntivi; visitate
le pagine dedicate a Mac\TeX\ (\url{https://tug.org/mactex}). Per
altri sistemi Unix, segue la procedura per trovare i font forniti con
\TL\ tramite il loro nome.

Per facilitare il compito, quando il pacchetto \pkgname{xetex} è
installato (sia durante l'installazione iniziale che in seguito), viene 
creato il file di configurazione necessario in
\filename{TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf}.

Per impostare i font di \TL{} per l'uso nell'intero sistema (assumendo che
abbiate gli opportuni privilegi), procedete come segue:
\begin{enumerate*}
\item Copiate il file \filename{texlive-fontconfig.conf} in
  \dirname{/etc/fonts/conf.d/09-texlive.conf}.

\item Eseguite \Ucom{fc-cache -fsv}.
\end{enumerate*}

Se non avete privilegi sufficienti per completare i passi precedenti,
o se volete rendere disponibili i font di \TL{} ad un
solo utente, fate quello che segue:
\begin{enumerate*}
\item Copiate il file \filename{texlive-fontconfig.conf} in
  \filename{~/.fonts.conf}, dove \filename{~} è la vostra directory di
  home.

\item Eseguite \Ucom{fc-cache -fv}.
\end{enumerate*}

Potete eseguire \code{fc-list} per vedere i nomi dei font di sistema.
L'incantesimo \code{fc-list : family style file spacing} (dove tutti gli
argomenti sono esattamente come mostrati) generalmente fornisce alcune
informazioni interessanti.


\subsubsection{\protect\ConTeXt{} Mark IV}
\label{sec:context-mkiv}

Sia il ``vecchio'' \ConTeXt{} (Mark II) che il ``nuovo'' \ConTeXt{}
(Mark IV) dovrebbero funzionare così come sono dopo l'installazione
di \TL{} e non dovrebbero richiedere alcuna attenzione particolare finché
restate fedeli a \verb+tlmgr+ per gli aggiornamenti.

Comunque, dato che \ConTeXt{} MkIV non usa la libreria kpathsea,
sarà richiesta un po' di configurazione ogni qual volta installate nuovi
file manualmente (senza usare \verb+tlmgr+). Dopo ogni installazione del
genere, ogni utente di MkIV deve eseguire:
\begin{sverbatim}
context --generate
\end{sverbatim}
per aggiornare  i dati della cache di \ConTeXt{} sul disco.
I file risultanti sono memorizzati in \code{TEXMFCACHE}, il cui valore
predefinito in \TL\ è \verb+TEXMFSYSVAR;TEXMFVAR+.

\ConTeXt\ MkIV leggerà da tutti i percorsi menzionati in
\verb+TEXMFCACHE+ e scriverà nel primo percorso che sia scrivibile. Durante
la lettura, in caso di dati di cache duplicati avrà la precedenza l'ultima
corrispondenza trovata.

Per ulteriori informazioni, consultate le pagine
\url{https://wiki.contextgarden.net/Running_Mark_IV}.


\subsubsection{Integrare macro locali e personali}
\label{sec:local-personal-macros}

Questa questione è già stata citata implicitamente nella
sezione~\ref{sec:texmftrees}:
\dirname{TEXMFLOCAL} (\dirname{/usr/local/texlive/texmf-local} o
\verb|%SystemDrive%\texlive\texmf-local| su Windows, di default) è pensato
per i font e le macro locali, ma disponibili per l'intero sistema; mentre
\dirname{TEXMFHOME} (\dirname{$HOME/texmf} o \verb|%USERPROFILE%\texmf|,
come predefiniti) è per le macro e i font personali.
Queste directory sono pensate per rimanere fisse da un'edizione all'altra
ed il loro contenuto per essere visto automaticamente da una nuova versione di 
\TL.
Quindi, è meglio trattenersi dal modificare la definizione di
\dirname{TEXMFLOCAL} in modo che punti ad una directory troppo diversa da
quella principale di \TL, oppure potreste doverla modificare manualmente
nelle future edizioni.

In entrambe le posizioni, i file dovrebbero essere posti ognuno nella
propria sotto directory secondo la Struttura delle Directory di \TeX\
(\TDS); visitate \url{https://tug.org/tds} o consultate
\filename{texmf-dist/web2c/texmf.cnf}. Ad esempio, il file di una
classe o di un pacchetto \LaTeX{} andrebbero posizionati in
\dirname{TEXMFLOCAL/tex/latex} o in \dirname{TEXMFHOME/tex/latex}, oppure
in una sotto directory di una delle due.

\dirname{TEXMFLOCAL} richiede un database dei nomi dei file aggiornato,
altrimenti i file non saranno trovati. Potete aggiornarlo con il comando
\cmdname{mktexlsr} o utilizzando il pulsante ``Aggiorna il database dei
nomi dei file'' nel pannello di configurazione della \GUI\ di \TeX\ Live
Manager.

Di default, ciascuna di queste variabili è definita come una directory
singola, come mostrato. Questo non è un requisito rigido. Se dovete passare
facilmente tra diverse versioni di grandi pacchetti, ad esempio, potete
mantenere directory multiple per i vostri scopi. Questo è ottenuto
impostando \dirname{TEXMFHOME} alla lista delle directory, tra parentesi
graffe, separate da virgole:

\begin{verbatim}
  TEXMFHOME = {/mia/dir1,/miadir2,/una/terza/dir}
\end{verbatim}

La sezione~\ref{sec:brace-expansion} descrive ulteriormente l'espansione
delle graffe.


\subsubsection{Integrare font di terze parti}

Sfortunatamente, si tratta di un argomento ingarbugliato per \TeX\ e pdf\TeX.
Dimenticatevene a meno che non vogliate addentrarvi nei numerosi dettagli
dell'installazione di \TeX{}. Molti font sono già inclusi in \TL, quindi
dategli uno sguardo se ne avete voglia; le pagine web all'interno di
\url{https://tug.org/FontCatalogue} mostrano praticamente tutti i font testuali
inclusi nelle distribuzioni principali di \TeX, cagorizzati secondo vari
criteri.

Se volete installare i vostri font, visitate la pagina
\url{https://tug.org/fonts/fontinstall.html} dove abbiamo fatto del nostro
meglio per descrivere la procedura.

Prendete anche in considerazione l'uso di \XeTeX\ o Lua\TeX\ (consultate
la sezione~\ref{sec:tex-extensions}), che vi consentono di usare i font
del sistema operativo senza alcuna installazione in \TeX\ (ma fate attenzione
che usare i font di sistema rende i vostri documenti istantaneamente non
utilizzabili da chiunque in un ambiente differente).

\subsection{Collaudare l'installazione}
\label{sec:test-install}

Dopo aver installato \TL, naturalmente vorrete provarlo, così da poter
iniziare a creare bellissimi documenti e\slash o font.

Una cosa che vorrete immediatamente cercare è un programma con cui
elaborare i file. \TL{} installa \TeX{}works su Windows
(\url{https://tug.org/texworks}) e Mac\TeX\ installa TeXShop
(\url{https://pages.uoregon.edu/koch/texshop}). Su altri sistemi Unix
spetta a voi scegliere un editor. Ci sono molte scelte disponibili, alcune
delle quali sono elencate nella prossima sezione; consultate anche
\url{https://tug.org/interest.html#editors}. Qualsiasi editor di testo
funzionerà; non è necessario qualcosa specifico per \TeX.

Il resto di questa sezione fornisce alcune procedure elementari per verificare che il
nuovo sistema funzioni. Qui daremo i comandi per Unix; è più facile che
sotto \MacOSX e Windows eseguiate le prove tramite un'interfaccia grafica,
ma i principi sono gli stessi.

\begin{enumerate}

\item Assicuratevi per prima cosa di poter eseguire il programma
\cmdname{tex}:
\begin{alltt}
> \Ucom{tex -{}-version}
TeX 3.14159265 (TeX Live ...)
Copyright ... D.E. Knuth.
...
\end{alltt}
Se questo restituisce ``comando non trovato'' al posto delle informazioni
sulla versione e sul copyright, oppure una versione più vecchia,
verosimilmente non avete la giusta directory \dirname{bin} nel vostro
\envname{PATH}. Consultate le informazioni sull'impostazione delle
variabili d'ambiente a \p.\pageref{sec:env}.

\item Elaborate un file \LaTeX{} elementare, generando un PDF:
\begin{alltt}
> \Ucom{pdflatex sample2e.tex}
This is pdfTeX 3.14...
...
Output written on sample2e.pdf (3 pages, 142120 bytes).
Transcript written on sample2e.log.
\end{alltt}
Se questo non riesce a trovare \filename{sample2e.tex} o altri file,
potreste avere qualche interferenza proveniente da vecchie variabili
d'ambiente o vecchi file di configurazione; noi raccomandiamo, tanto per
iniziare, di eliminare tutte le variabili d'ambiente relative a \TeX\ (per
un'analisi approfondita, potete chiedere a \TeX{} di fare un resoconto su
ciò che esattamente stia cercando e che trovi; consultate ``Risoluzione
dei problemi'' a pagina~\pageref{sec:debugging}).

\item Mostrate un'anteprima del file PDF, ad esempio:
\begin{alltt}
> \Ucom{xpdf sample2e.pdf}
\end{alltt}
Dovreste vedere una nuova finestra con un bel documento che spiega alcuni
dei fondamenti di \LaTeX{} (che vale la pena leggere se siete nuovi a
\TeX).

Ovviamente ci sono molti altri visualizzatori di PDF; nei sistemi Unix,
\cmdname{evince} e \cmdname{okular} sono comunemente usati. Per Windows,
raccomandiamo di provare Sumatra PDF
(\url{https://www.sumatrapdfreader.org/free-pdf-reader.html}). Non ci
sono visualizzatori di PDF incusi in \TL, quindi dovete installare
separatamente qualunque vogliate usare.

\item Ovviamente potete ancora generare il formato originale di \TeX\ \dvi{}:
\begin{alltt}
> \Ucom{latex sample2e.tex}
\end{alltt}

\item E mostrare un'anteprima del \dvi:
\begin{alltt}
> \Ucom{xdvi sample2e.dvi}    # Unix
> \Ucom{dviout sample2e.dvi}  # Windows
\end{alltt}
Dovete avere X in esecuzione affinché \cmdname{xdvi} funzioni;
se non è così, oppure se la vostra variabile d'ambiente
\envname{DISPLAY} non è impostata correttamente, otterrete un errore
\samp{Can't open display}.

\item Per creare un file \PS{} dal \dvi:
\begin{alltt}
> \Ucom{dvips sample2e.dvi -o sample2e.ps}
\end{alltt}

\item Oppure per creare un file PDF dal \dvi{}, una strada alternativa
all'uo di pdf\TeX\ (o di Xe\TeX\ o Lua\TeX) che può essere utile qualche
volta è:
\begin{alltt}
> \Ucom{dvipdfmx sample2e.dvi -o sample2e.pdf}
\end{alltt}

\item Altri file di prova che potreste trovare utili in aggiunta a
\filename{sample2e.tex} sono:

\begin{ttdescription}
\item [small2e.tex] Un documento più semplice di \filename{sample2e}, per
ridurre la dimensione dell'input qualora si riscontrino problemi.
\item [testpage.tex] Verifica se la vostra stampante introduce qualche
margine.
\item [nfssfont.tex] Per stampare tabelle e prove riguardanti i font.
\item [testfont.tex] Anche questo per le tabelle dei font, ma usando plain
\TeX{}.
\item [story.tex] Il più canonico tra tutti file di prova per (plain) \TeX{}.
Dovete digitare \samp{\bs bye} al prompt \code{*} dopo \samp{tex story.tex}.
\end{ttdescription}

\item Se avete installato il pacchetto \filename{xetex}, potete verificare che
riesca ad accedere ai font di sistema in questo modo:
\begin{alltt}
> \Ucom{xetex opentype-info.tex}
This is XeTeX, Version 3.14\dots
...
Output written on opentype-info.pdf (1 page).
Transcript written on opentype-info.log.
\end{alltt}

Se ricevete un messaggio di errore che riporta ``Invalid fontname `Latin
Modern Roman/ICU\dots'', allora dovete configurare il vostro sistema in
modo che i font distribuiti con \TL\ possano essere trovati. Consultate la
sezione~\ref{sec:font-conf-sys}.

\end{enumerate}

\subsection{Collegamenti ad ulteriori software scaricabili}

Se siete nuovi utilizzatori di \TeX{} o comunque avete bisogno di aiuto
nella scrittura di documenti \TeX{} o \LaTeX, visitate la pagina
\url{https://tug.org/begin.html} per alcune risorse introduttive.

Ecco i collegamenti ad alcuni altri strumenti che potete prendere in
considerazione per l'installazione:
\begin{description}
\item[Ghostscript] \url{https://ghostscript.com/}
\item[Perl] \url{https://perl.org/} con i pacchetti supplementari da
      CPAN, \url{https://cpan.org/}
\item[ImageMagick] \url{https://imagemagick.org}, per l'elaborazione e
      la conversione di immagini
\item[NetPBM] \url{http://netpbm.sourceforge.net/}, anch'esso per le
      immagini.

\item[Editor orientati a \TeX] C'è un'ampia scelta ed è una questione di
      gusto dell'utente. Eccone una selezione in ordine alfabetico (alcuni
      sono solo per Windows).
  \begin{itemize*}
  \item \cmdname{GNU Emacs} è disponibile anche per Windows, visita
        \url{https://www.gnu.org/software/emacs/emacs.html}.
  \item \cmdname{Emacs con Auc\TeX} per Windows è disponibile su \CTAN. La
        home page di Auc\TeX\ è \url{https://www.gnu.org/software/auctex}.
  \item \cmdname{SciTE} è disponibile su
        \url{https://www.scintilla.org/SciTE.html}.
  \item \cmdname{Texmaker} è un software libero disponibile su
        \url{https://www.xm1math.net/texmaker/}.
  \item \cmdname{TeXstudio} è nato come un fork di \cmdname{Texmaker}
        e sono state poi aggiunge altre funzionalità; disponibile su
        \url{https://texstudio.org/} e nella distribuzione pro\TeX{}t.
  \item \cmdname{TeXnicCenter} è un software libero, disponibile su
        \url{https://www.texniccenter.org}.
  \item \cmdname{TeXworks} è un software libero disponibile su
        \url{https://tug.org/texworks} e installato come parte di \TL\ solo
        su Windows.
  \item \cmdname{Vim} è un software libero disponibile su
        \url{https://www.vim.org}.
  \item \cmdname{WinEdt} è un software shareware disponibile su
        \url{https://tug.org/winedt} o \url{https://www.winedt.com}.
  \item \cmdname{WinShell} è disponibile su \url{https://www.winshell.de}.
  \end{itemize*}
\end{description}
Per un elenco molto più lungo di pacchetti e programmi, visitate
\url{https://tug.org/interest.html}.


\section{Installazione specializzate}

Le sezioni precedenti hanno descritto il processo di installazione di base.
Ora passiamo ad alcuni casi particolari.

\htmlanchor{tlsharedinstall}
\subsection{Installazioni condivise tra utenti o macchine}
\label{sec:sharedinstall}

\TL{} è stato progettato per essere condiviso tra diversi sistemi in una
rete. Con l'organizzazione predefinita delle directory, nessun percorso
assoluto viene configurato: le posizioni dei file necessari ai programmi di
\TL{} sono relative ai programmi stessi. Potete vederlo nel file di
configurazione principale \filename{$TEXMFDIST/web2c/texmf.cnf}, che
contiene linee come:
\begin{sverbatim}
TEXMFROOT = $SELFAUTOPARENT
...
TEXMFDIST = $TEXMFROOT/texmf-dist
...
TEXMFLOCAL = $SELFAUTOGRANDPARENT/../texmf-local
\end{sverbatim}
Questo significa che aggiungere la directory degli eseguibili di \TL{}
appropriati alla piattaforma al loro percorso di ricerca è sufficiente
per ottenere una configurazione funzionante.

Per la stessa ragione, potete anche installare \TL{} localmente e
successivamente muovere l'intera struttura verso un percorso di rete.

Per Windows, \TL{} include un programma \filename{tlaunch}. La sua finestra
principale contiene voci di menu e pulsanti per i vari programmi e
documentazione relativi a \TeX, personalizzabili tramite un file
\code{ini}. Al primo utilizzo, il programma replica le tipiche operazioni
post-installazione specifiche per Windows, ossia la modifica dei percorsi
e le associazioni dei file, ma soltanto per l'utente corrente Quindi,
i computer che accedono a \TL{} nella rete locale hanno solo bisogno di una
scorciatoia di menu per questo programma. Consultate il manuale di
\code{tlaunch} (\code{texdoc tlaunch}, o \url{https://ctan.org/pkg/tlaunch}).


\htmlanchor{tlportable}
\subsection{Installazioni portabili (\USB)} 
\label{sec:portable-tl}

L'opzione \code{-portable} dell'installazione (o il comando \code{V}
nell'installatore testuale o la corrispondente opzione della \GUI) crea
un'installazione di \TL{} contenuta completamente in sé stessa all'interno
di una radice comune e rinuncia all'integrazione con il sistema. Potete
creare una tale installazione direttamente su una penna \USB{} o copiarla su
una penna \USB{} successivamente.

Tecnicamente, l'installazione portabile è resa auto contenuta impostando
i valori predefiniti di \envname{TEXMFHOME}, \envname{TEXMFVAR} e
\envname{TEXMFCONFIG} pari rispettivamente a \envname{TEXMFLOCAL},
\envname{TEXMFSYSVAR} e \envname{TEXMFSYSCONFIG}; di conseguenza la
configurazione e le cache per ogni utente non saranno crete.

Per eseguire \TeX\ usando l'installazione portabile, avete bisogno di
aggiungere la directory degli eseguibili appropriata al percorso di ricerca
durante la sessione di terminale, come al solito.

Su Windows, potete fare doppio click su \filename{tl-tray-menu} alla radice
dell'installazione e creare un `menu tray' temporaneo che permette di
scegliere tra alcuni compiti comuni, come indicato in questa schermata:
\medskip
\tlpng{tray-menu}{4cm}
\smallskip
\noindent La voce ``More\ldots'' spiega come potete personalizzare questo menu.

%\htmlanchor{tlisoinstall}
%\subsection{Installazioni degli \ISO\ (o del \DVD)}
%\label{sec:isoinstall}
%
%Se non avete bisogno di aggiornare o in qualunque altro modo modificare
%spesso la vostra installazione e\slash o avete diversi sistemi sui quali
%usare \TL, potrebbe essere conveniente creare un'\ISO\ della vostra
%installazione di \TL{} perché:
%
%\begin{itemize}
%\item Copiare una \ISO\ tra diversi computer è molto più rapido che copiare
%  un'installazione normale.
%\item Se avete due sistemi operativi sulla stessa macchina e volete che
%  condividano un'installazione di \TL, un'installazione \ISO\ non è
%  vincolata alle idiosincrasie e alle limitazioni di altri filesystem
%  reciprocamente supportati (FAT32, NTFS, HFS+).
%\item Le macchine virtuali possono semplicemente montare tale \ISO.
%\end{itemize}
%
%Ovviamente potete anche masterizzare un'\ISO\ su un \DVD, se lo ritenete
%utile per voi.
%
%I sistemi desktop \GNU/Linux/Unix, incluso \MacOSX, sono capaci di montare
%una \ISO. Windows 8 è la prima versione di Windows che può farlo. Al di là
%di questo, non cambia nulla confrontato con una normale
%installazione su hard disk, consulate la sezione \ref{sec:env}.
%
%Quando preparate tale installazione su \ISO, è meglio omettere la
%sottodirectory per l'anno dell'edizione e avere \filename{texmf-local} allo
%stesso livello degli altri alberi (\filename{texmf-dist},
%\filename{texmf-var}, ecc.). Potete fare ciò con le normali opzioni per le
%directory nell'installatore.
%
%Per un sistema Windows fisico (piuttosto che virtuale), potete masterizzare
%la \ISO\ su un DVD. Comunque, potrebbe valere la pena investigare le
%varie opzioni gratuite per il montaggio delle \ISO, come WinCDEmu da
%\url{http://wincdemu.sysprogs.org/}.
%
%Per l'integrazione con il sistema Windows, potete includere gli script
%\filename{w32client} descritti nella sezione~\ref{sec:sharedinstall} e su
%\url{http://tug.org/texlive/w32client.html}, che funzionano per
%un'installazione \ISO\ così come per una condivisa.
%
%Su \MacOSX, TeXShop sarà capace di usare l'installazione su
%DVD se un collegamento simbolico \filename{/usr/texbin} punta alla
%directory degli eseguibili appropriata, per esempio,
%\begin{verbatim}
%sudo ln -s /Volumes/MyTeXLive/bin/universal-darwin /usr/texbin
%\end{verbatim}
%
%Nota storica: \TL{} 2010 è stata la prima edizione di \TL{} che non è stata
%più distribuita ``live''. Comunque, richiedeva sempre alcune acrobazie per
%funzionare da \DVD\ o da \ISO; in particolare, non c'era alcun modo di
%evitare di impostare almeno un'ulteriore variabile d'ambiente. Se create la
%vostra \ISO\ da un'installazione esistente, allora non c'è bisogno di
%questo.

\htmlanchor{tlmgr}
\section{\cmdname{tlmgr}: gestire la vostra installazione}
\label{sec:tlmgr}

\begin{figure}[tb]
\tlpng{tlshell-macos}{\linewidth}
\caption{\GUI\ \prog{tlshell} che mostra il menu Azioni (\MacOSX)}
\label{fig:tlshell}
\end{figure}

\begin{figure}[tb]
\tlpng{tlcockpit-packages}{.8\linewidth}
\caption{\GUI\ \prog{tlcockpit} per \prog{tlmgr}}
\label{fig:tlcockpit}
\end{figure}

\begin{figure}[tb]
\tlpng{tlmgr-gui}{\linewidth}
\caption{Modalità \GUI\ obsoleta di \prog{tlmgr}: finestra principlae dopo aver
  premuto il pulsante `Carica'}
\label{fig:tlmgr-gui}
\end{figure}

\TL{} include un programma chiamato \prog{tlmgr} per gestire \TL{} dopo
l'installazione iniziale. Le sue funzionalità includono:

\begin{itemize*}
\item installare, aggiornare, archiviare, ripristinare e disinstallare i
  singoli pacchetti, eventualmente tenendo conto delle dipendenze;
\item cercare ed elencare pacchetti e le loro descrizioni;
\item elencare, aggiungere e rimuovere le piattaforme disponibili;
\item cambiare le opzioni di installazione come la dimensione del foglio e
  il percorso di installazione (consultate la sezione~\ref{sec:location}).
\end{itemize*}

Le funzionalità di \prog{tlmgr} incorporano completamente quelle del
programma \prog{texconfig}. Distribuiamo e manteniamo ancora
\prog{texconfig} per tutti quelli abituati alla sua interfaccia, ma
attualmente raccomandiamo di usare \prog{tlmgr}.

\subsection{Interfacce \GUI\ per \cmdname{tlmgr}}

\TL{} contiene diverse interfacce \GUI\ per \prog{tlmgr}. Due degne di nota:
(1)~la figura~\ref{fig:tlshell} mostra \cmdname{tlshell}, che è scritto in Tcl/Tk
e funziona così com'è sotto Windows e \MacOSX; (2)~la figura~\ref{fig:tlcockpit}
mostra \prog{tlcockpit}, che richiede Java versione~8 o superiore e JavaFX.
Entrambi sono pacchetti separati.

\prog{tlmgr} ha anche una \GUI{} nativa (mostrata in
figura~\ref{fig:tlmgr-gui}), che è avviata con:
\begin{alltt}
> \Ucom{tlmgr -gui}
\end{alltt}
Tuttavia questa estensione \GUI\ richiede Perl/Tk, il cui modulo non è più
incluso nella distribuzione Perl di \TL\ per Windows.

\subsection{Esempi di invocazioni di \cmdname{tlmgr} dalla riga di comando}

Dopo l'installazione iniziale, potete aggiornare il vostro sistema alle
ultime versioni disponibili con:
\begin{alltt}
> \Ucom{tlmgr update -all}
\end{alltt}
Se questo vi rende ansiosi, provate prima
%If this makes you nervous, first try
\begin{alltt}
> \Ucom{tlmgr update -all -dry-run}
\end{alltt}
o (meno prolisso):
%or (less verbose):
\begin{alltt}
> \Ucom{tlmgr update -list}
\end{alltt}

Questo esempio più complesso aggiunge una collezione, per il motore
Xe\TeX, da una directory locale:

\begin{alltt}
> \Ucom{tlmgr -repository /local/mirror/tlnet install collection-xetex}
\end{alltt}
Genera il seguente risultato (ridotto):
\begin{fverbatim}
install: collection-xetex
install: arabxetex
...
install: xetex
install: xetexconfig
install: xetex.i386-linux
running post install action for xetex
install: xetex-def
...
running mktexlsr
mktexlsr: Updating /usr/local/texlive/2021/texmf-dist/ls-R...
...
running fmtutil-sys --missing
...
Transcript written on xelatex.log.
fmtutil: /usr/local/texlive/2021/texmf-var/web2c/xetex/xelatex.fmt installed.
\end{fverbatim}

Come potete vedere, \prog{tlmgr} installa le dipendenze e si occupa di ogni
azione necessaria dopo l'installazione, incluso l'aggiornamento del
database dei nomi dei file e la generazione (o rigenerazione) dei formati.
Nell'esempio precedente, abbiamo generato nuovi formati per \XeTeX.

Per ottenere la descrizione di un pacchetto (o di una collezione o di uno
schema):
\begin{alltt}
> \Ucom{tlmgr show collection-latexextra}
\end{alltt}
che produce un output simile a questo:
\begin{fverbatim}
package:    collection-latexextra
category:   Collection
shortdesc:  LaTeX supplementary packages
longdesc:   A very large collection of add-on packages for LaTeX.
installed:  Yes
revision:   46963
sizes:      657941k
\end{fverbatim}

Infine, cosa più importante, per ottenere la documentazione completa,
visitate \url{https://tug.org/texlive/tlmgr.html} oppure eseguite:
\begin{alltt}
> \Ucom{tlmgr -help}
\end{alltt}


\section{Note relative a Windows}
\label{sec:windows}


\subsection{Funzionalità specifiche per Windows}
\label{sec:winfeatures}

Sotto Windows, l'installatore fa alcune cose in più:
\begin{description}
\item[Menu e collegamenti.] Viene creato nel menu Start un nuovo sotto
  menu ``\TL'' che contiene le voci per alcuni programmi grafici
  (\prog{tlmgr}, \prog{texdoctk}) e per un po' di documentazione. 
\item[Associazioni dei file.] Se abilitati, \prog{TeXworks}, \prog{Dviout} e
  \prog{PS\_view} diventano ciascuno il programma predefinito per i loro
  rispettivi tipi di file, oppure ottengono una voce nei menu contestuali
  ``Apri con'' per quei tipi di file.
\item[Convertitore da bitmap ad eps.] I vari formati bitmap ricevono una
  voce \cmdname{bitmap2eps} nei loro menu contestuali ``Apri con''.
  Bitmap2eps è un semplice script che permette a \cmdname{sam2p} o
  \cmdname{bmeps} di compiere il vero lavoro.
\item[Impostazione automatica delle variabili di ambiente.] Non sono
  richiesti interventi manuali per la loro configurazione.
\item[Disinstallatore.] Il programma di installazione crea una voce per
  \TL\ in ``Installazione Applicazioni''. La pagina di disinstallazione
  della \GUI\ \TeX\ Live Manager fa riferimento a questo. Nel caso di
  installazione per singolo utente, il programma crea anche una voce di
  disinstallazione nel menu Start.
\item[Protezione dalla scrittura.] Nel caso dell'installazione da parte
  di un amministratore, le directory di \TL\ sono protette dalla
  scrittura, per lo meno se \TL\ è installato su un normale disco non
  removibile formattato con NTFS.
\end{description}

Inoltre, per un approccio diverso, date un'occhiata al comando 
\cmdname{tlaunch}, descritto nella sezione~\ref{sec:sharedinstall}.

\subsection{Software aggiuntivo incluso sotto Windows}

Per essere completa, un'installazione di \TL\ ha bisogno di alcuni
pacchetti di supporto che di solito non sono presenti su una macchina
Windows. \TL{} fornisce questi pezzi mancanti. Questi programmi sono
installati come parte di \TL{} solo su Windows.

\begin{description}
\item[Perl e Ghostscript.] A causa dell'importanza di Perl e Ghostscript,
  \TL{} include una copia ``nascosta'' di questi programmi. I programmi di
  \TL{} che ne hanno bisogno sanno dove trovarli, ma non ne tradiscono la
  presenza tramite variabili d'ambiente o impostazioni sul registro di
  sistema. Non si tratta di installazioni complete e non dovrebbero
  interferire con installazioni nel sistema di Perl o Ghostscript.

\item[dviout.] Viene installato anche \prog{dviout}, un visualizzatore di
  DVI. All'inizio, quando visualizzate i file con \cmdname{dviout},
  questo creerà i font in quanto quelli per la visione su schermo non sono
  installati. Dopo un po', avrete creato la maggior parte dei font che
  usate e raramente vedrete la finestra di creazione dei font. Maggiori
  informazioni possono essere trovate nell'aiuto del programma (altamente
  raccomandato).

\item[\TeX{}works.] \TeX{}works è un editor orientato a \TeX\ con un
  visualizzatore per PDF incorporato.

\item[Strumenti a riga di comando.] Assieme ai soliti programmi di \TL{}
  vengono installate alcune versioni per Windows di tipici programmi Unix
  a riga di comando. Questi programmi includono \cmdname{gzip},
  \cmdname{zip}, \cmdname{unzip} e gli strumenti della suite \cmdname{poppler}
  (\cmdname{pdfinfo}, \cmdname{pdffonts}, \ldots); non è incluso nessun
  visualizzatore di PDF per Windows. Una possibilità è
  Sumatra PDF, disponibile su
  \url{https://www.sumatrapdfreader.org/}.

\item[fc-list, fc-cache, \ldots] Gli strumenti dalla libreria fontconfig
  consentono a \XeTeX{} di gestire i font di sistema sotto Windows. Potete
  usare \prog{fc-list} per trovare i nomi dei font da passare al comando
  esteso di \XeTeX\ \cs{font}. Se è necessario, eseguite prima
  \prog{fc-cache} per aggiornare le informazioni sui font.

\end{description}


\subsection{Il profilo utente è ``home''}
\label{sec:winhome}

La controparte Windows di una directory di home di Unix è la directory
\verb|%USERPROFILE%|. Sotto Windows Vista e successivi è
\verb|C:\Users\<nomeutente>|. Nel file
\filename{texmf.cnf} e in
generale in \KPS{}, \verb|~| verrà interpretato in modo appropriato sia
sotto Windows che sotto Unix.


\subsection{Il registro di configurazione di Windows}
\label{sec:registry}

Windows memorizza quasi tutti i dati di configurazione nel suo registro.
Il registro contiene un insieme di chiavi organizzate gerarchicamente,
con varie gerarchie. Le più importanti per i programmi di installazione
sono \path{HKEY_CURRENT_USER} e \path{HKEY_LOCAL_MACHINE}, abbreviate in
\path{HKCU} e \path{HKLM}. La porzione \path{HKCU} del registro si trova
nella directory di home dell'utente (vedi sezione~\ref{sec:winhome}).
\path{HKLM} si trova di solito in una sotto directory della cartella
Windows.

In alcuni casi, le informazioni di sistema possono essere ottenute dalle
variabili d'ambiente, ma per altre informazioni, come la posizione dei
collegamenti, è necessario consultare il registro. Impostare
permanentemente le variabili d'ambiente richiede ugualmente l'accesso al
registro.


\subsection{Permessi di Windows}
\label{sec:winpermissions}

Nelle ultime versioni di Windows si fa distinzione tra utenti normali ed
amministratori e solo questi ultimi hanno libero accesso quasi l'intero
sistema operativo. Ci siamo sforzati di rendere \TL{} installabile senza i
privilegi di amministratore.

Se il programma di installazione è eseguito con i privilegi di
amministratore, c'è un'opzione per rendere l'installazione disponibile a
tutti gli utenti. Se questa opzione è selezionata, i collegamenti sono
creati per tutti gli utenti e il percorso di ricerca di sistema è modificato.
Altrimenti, i collegamenti e le voci nel menu sono creati solo per
l'utente corrente e viene modificato il percorso di ricerca dell'utente.

Indipendentemente dallo stato di amministratore, la cartella predefinita
di \TL{} proposta dal programma di installazione si trova sempre sotto
\verb|%SystemDrive%|. L'installatore verifica sempre se l'utente corrente
ha i permessi di scrittura in tale cartella.

Possono sorgere dei problemi se l'utente non è un amministratore e \TeX{}
già esiste nel percorso di ricerca. Dato che nel percorso di ricerca
vengono prima le impostazioni di sistema e poi quelle dell'utente, la
nuova \TL{} non avrebbe mai la precedenza. Come ripiego, il programma
di installazione crea un collegamento ad un prompt dei comandi in cui la
nuova directory degli eseguibili di \TL{} è anteposta al percorso di
ricerca locale. La nuova \TL{} sarà sempre accessibile usando questo
prompt. Anche il collegamento a \TeX{}works, se è installato, antepone
\TL{} al percorso di ricerca, quindi dovrebbe essere immune a questo
problema.

Siate consapevoli che anche se avete eseguito l'accesso come amministratori,
dovete chiedere esplicitamente i privilegi di amministrazione. In pratica, non
serve a molto entrare come amministratore. Invece, facendo clic con il tasto
destro sul programma o sul collegamento che volete eseguire, solitamente appare
anche la voce ``Esegui come amministratore''.


\subsection{Incrementare la memoria massima sotto Windows e Cygwin}
\label{sec:cygwin-maxmem}

Gli utenti di Windows e Cygwin (consulta la sezione~\ref{sec:cygwin} per i
dettagli sull'installazione con Cygwin) possono ritrovarsi con la memoria
esaurita durante l'esecuzione di alcuni dei programmi forniti con \TL. Ad
esempio, \prog{asy} potrebbe esaurire la memoria se tentate di allocare un
array di 25.000.000 numeri reali e Lua\TeX\ potrebbe esaurirla se tentate di
elaborare un documento con un gran numero di font grandi.

Per Cygwin, potete incrementare la quantità di memoria disponibile seguendo
le istruzioni nella Guida dell'Utente di Cygwin
(\url{https://cygwin.com/cygwin-ug-net/setup-maxmem.html}).

Per Windows, dovete creare un file, ad esempio \code{moremem.reg}, con le
seguenti quattro righe:

\begin{sverbatim}
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\Software\Cygwin]
"heap_chunk_in_mb"=dword:ffffff00
\end{sverbatim}

\noindent e poi eseguire il comando \code{regedit /s moremem.reg} come
amministratore (se volete cambiare la memoria unicamente per l'utente
corrente invece che per l'intero sistema, usate \code{HKEY\_CURRENT\_USER}).


\section{Una guida a Web2C}

\Webc{} è una collezione integrata di programmi legati a \TeX: \TeX{}
stesso, \MF{}, \MP, \BibTeX{}, ecc. È il cuore di \TL{}. Il sito web di
\Webc{}, con il manuale più recente e molto altro, è
\url{https://tug.org/web2c}.

Ecco un po' di storia: l'implementazione originale fu realizzata da Tomas
Rokicki il quale, nel 1987, sviluppò un primo sistema \TeX{}-to-C
cambiando dei file sotto Unix, che erano principalmente un lavoro
originale di Howard Trickey e Pavel Curtis. Tim Morgan divenne il
manutentore del sistema e durante questo periodo il nome cambiò in
Web-to-C\@. Nel 1990, Karl Berry prese in mano il lavoro, con il
contributo di molte persone, e nel 1997 passò il testimone a Olaf Weber,
il quale lo restituì a Karl nel 2006.

Il sistema \Webc{} gira sotto Unix, sotto i sistemi Windows a 32 bit,
sotto MacOSX{} e sotto altri sistemi operativi. Usa i sorgenti originali
di Knuth per \TeX{} e per altri programmi scritti nel sistema di
programmazione letterata \web{} e li traduce in codice C. I programmi
basilari di \TeX{} gestiti in questo modo sono:

\begin{cmddescription}
\item[bibtex]    Gestisce le bibliografie.
\item[dvicopy]   Espande i riferimenti ai font virtuali nei file \dvi{}.
\item[dvitomp]   Converte da \dvi{} a MPX (immagini MetaPost).
\item[dvitype]   Converte i \dvi{} in testo leggibile
\item[gftodvi]   Provini dei font generici.
\item[gftopk]    Converte da font generici ad impacchettati.
\item[gftype]    Converte i font generici in testo leggibile.
\item[mf]        Crea famiglie di caratteri tipografici.
\item[mft]       Formatta i sorgenti \MF{}.
\item[mpost]     Crea diagrammi tecnici.
\item[patgen]    Crea modelli di sillabazione.
\item[pktogf]    Converte da font impacchettati a generici.
\item[pktype]    Converte i font impacchettati in testo leggibile.
\item[pltotf]    Converte le liste di proprietà da testo leggibile in TFM.
\item[pooltype]  Mostra i file delle riserve di \web{}.
\item[tangle]    Converte da \web{} al Pascal.
\item[tex]       Compone tipograficamente i documenti.
\item[tftopl]    Converte le liste di proprietà da TFM in testo leggibile
\item[vftovp]    Converte da font virtuali a liste di proprietà virtuali.
\item[vptovf]    Converte da liste di proprietà virtuali a font virtuali.
\item[weave]     Converte da \web{} a \TeX.
\end{cmddescription}

\noindent Le esatte funzioni e la sintassi di questi programmi sono
descritte nella documentazione dei singoli pacchetti e di \Webc{} stesso.
Tuttavia, conoscere alcuni principi che governano l'intera famiglia di
programmi vi aiuterà a trarre vantaggio dalla vostra installazione \Webc{}.

Tutti i programmi rispettano queste opzioni \GNU{} standard:
\begin{ttdescription}
\item[-{}-help] visualizza una guida sintetica all'utilizzo.
\item[-{}-verbose] visualizza un rapporto dettagliato sull'avanzamento.
\item[-{}-version] visualizza le informazioni sulla versione, poi esce.
\end{ttdescription}

E molti rispettano anche:
\begin{ttdescription}
\item[-{}-verbose] stampa un rapporto dettagliato dell'avanzamento
\end{ttdescription}

Per individuare i file, i programmi \Webc{} usano la libreria di ricerca
dei percorsi \KPS{} (\url{https://tug.org/kpathsea}). Questa libreria usa
una combinazione di variabili d'ambiente e un file di configurazione per
ottimizzare la ricerca nella (enorme) raccolta di file di \TeX{}. \Webc{}
può controllare simultaneamente molte directory, cosa utile per mantenere
la distribuzione standard \TeX{}, le estensioni locali e quelle personali
in directory distinte. Per velocizzare le ricerche dei file, alla radice
di ogni albero di directory c'è un file \file{ls-R} contenente una voce
con il nome ed il percorso relativo per ciascun file all'interno di
quell'albero.


\subsection{Ricerca dei percorsi con Kpathsea}
\label{sec:kpathsea}

Per prima cosa descriviamo il generico meccanismo di ricerca dei percorsi
della libreria \KPS.

Chiameremo \emph{percorso di ricerca} una lista separata da un due punti o
da un punto e virgola di \emph{elementi di percorso}, che sono
fondamentalmente nomi di directory. Un percorso di ricerca può provenire
da (una combinazione di) molte fonti. Per cercare un file \samp{my-file}
attraverso un percorso \samp{.:/dir}, \KPS{} controlla a turno ogni
elemento del percorso: prima \file{./my-file}, poi \file{/dir/my-file},
restituendo la prima corrispondenza (o, eventualmente, tutte).

Al fine di adattarsi al meglio alle convenzioni di tutti i sistemi
operativi, sui sistemi non Unix \KPS{} può usare separatori di nomi di
file diversi dai due punti (\samp{:}) e dalla barra obliqua (slash, \samp{/}).

Per controllare un particolare elemento \var{p} di un percorso, \KPS{} per
prima cosa verifica se può applicare a \var{p} un database precostruito
(consulta ``Database di file'' a pagina~\pageref{sec:filename-database}),
cioè se il database è in una directory che è prefisso di \var{p}. Se è
così, la specifica del percorso è abbinata al contenuto del
database.

Per quanto il più semplice e comune elemento di un percorso sia il nome di
una directory, \KPS{} supporta caratteristiche aggiuntive nei percorsi di
ricerca: valori predefiniti stratificati, nomi di variabili
d'ambiente, valori di file di configurazione, directory personali degli
utenti e ricerca ricorsiva di sotto directory. Dunque, diciamo che \KPS{}
\emph{espande} un elemento di percorso, intendendo che trasforma tutte le
specifiche in semplici nomi di directory. Questa trasformazione è
descritta nelle seguenti sezioni nello stesso ordine in cui avviene.

Notate che se il nome del file cercato è assoluto o esplicitamente relativo,
ossia se comincia con \samp{/}, \samp{./} o \samp{../}, \KPS{} controlla
semplicemente se quel file esiste.

\ifSingleColumn
\else
\begin{figure*}
\verbatiminput{examples/ex5.tex}
\setlength{\abovecaptionskip}{0pt}
  \caption{Un pezzo illustrativo di file di configurazione}
  \label{fig:config-sample}
\end{figure*}
\fi

\subsubsection{Fonti dei percorsi}
\label{sec:path-sources}

Un percorso di ricerca può provenire da molte fonti. Nell'ordine in cui
\KPS{} le usa:

\begin{enumerate}
\item
  Una variabile d'ambiente impostata dall'utente, per esempio
  \envname{TEXINPUTS}\@. Le variabili d'ambiente a cui è stato aggiunto un
  punto ed il nome di un programma hanno la precedenza; per esempio, se
  \samp{latex} è il nome del programma in esecuzione, allora
  \envname{TEXINPUTS.latex} avrà la precedenza su \envname{TEXINPUTS}.
\item
  Il file di configurazione specifico per un programma, per esempio una
  riga \samp{S /a:/b} nel file di configurazione \file{config.ps} di
  \cmdname{dvips}.
\item
  Un file di configurazione \file{texmf.cnf} di \KPS, contenente una riga
  del tipo \samp{TEXINPUTS=/c:/d} (vedi più avanti).
\item Il valore predefinito in essere al momento della compilazione del 
  programma.
\end{enumerate}
\noindent Potete vedere ciascuno di questi valori per un dato percorso di
ricerca usando le opzioni di debug (consultate ``Risoluzione dei
problemi'' a pagina~\pageref{sec:debugging}).

\subsubsection{File di configurazione}

\KPS{} legge i percorsi di ricerca ed altre definizioni nei \emph{file di
configurazione al momento dell'esecuzione} chiamati \file{texmf.cnf}. Il
percorso di ricerca \envname{TEXMFCNF} è usato per cercare questi file,
ma non raccomandiamo di impostare questa (o qualunque altra) variabile
d'ambiente per scavalcare le directory di sistema.

Invece, l'installazione normale dà luogo ad un file
\file{.../2021/texmf.cnf}. Se dovete apportare delle modifiche ai valori
predefiniti (di norma non è necessario), questo è il posto in cui
piazzarle. Il file di configurazione principale è
\file{.../2021/texmf-dist/web2c/texmf.cnf}. Non dovreste modificare
quest'ultimo file, dato che le vostre modifiche andrebbero perdute quando
la versione distribuita viene aggiornata.

Per inciso, se avete semplicemente bisogno di aggiungere una directory
personale ad un particolare percorso di ricerca, impostare una variabile
d'ambiente è un metodo ragionevole:
\begin{verbatim}
  TEXINPUTS=.:/my/macro/dir:
\end{verbatim}
Affinché l'impostazione resti mantenibile e portable negli anni, usate un
\samp{:} come terminatore (\samp{;} su Windows) per inserire i percorsi di
sistema, invece di provare a scriverli tutti esplicitamente (consultate la
sezione~\ref{sec:default-expansion}). Un'altra possibilità è quella di
usare l'alberatura \envname{TREEMFHOME} (cfr.
sezione~\ref{sec:directories}).

\emph{Tutti} i file \file{texmf.cnf} nel percorso di ricerca saranno letti
e le definizioni in quelli che appaiono per primi sostituiranno quelle nei
file che appaiono per ultimi. Ad esempio, con un percorso di ricerca di
\verb|.:$TEXMF|, i valori provenienti da \file{./texmf.cnf} sostituiranno
quelli provenienti da \verb|$TEXMF/texmf.cnf|.

\begin{itemize*}
\item
  I commenti iniziano con il carattere \code{\%}, sia all'inizio di una
  riga che preceduto da uno spazio bianco, e continuano fino alla fine
  della riga.
\item
  Le righe vuote sono ignorate.
\item
  Una \bs{} alla fine di una riga funziona come un carattere di
  continuazione, cioè la linea successiva viene aggiunta di seguito alla
  precedente. Gli spazi bianchi
  all'inizio delle righe di continuazione non sono ignorati.
\item
  Ogni riga rimanente ha la forma:\\
  \hspace*{2em}\texttt{\var{variabile} \textrm{[}.\var{nomeprogramma}\textrm{]}
  \textrm{[}=\textrm{]} \var{valore}}\\[1pt]
  dove il carattere \samp{=} e gli spazi che lo circondano sono opzionali
  (ma se \var{valore} inizia con \samp{.}, è più semplice usare il \samp{=}
  per evitare che il punto sia interpretato come qualificatore del nome
  del programma).
\item
  Il nome \ttvar{variabile} può contenere un qualunque carattere diverso
  dallo spazio, da \samp{=} e da \samp{.}, ma usare solo i caratteri
  \samp{A-Za-z\_} è più sicuro.
\item
  Se la parte \samp{.\var{nomeprogramma}} è presente, la definizione si
  applica solo se il programma che è in esecuzione ha il nome
  \texttt{\var{nomeprogramma}} oppure \texttt{\var{nomeprogramma}.exe}.
  Questo consente, ad esempio, alle diverse varianti di \TeX{} di avere
  diversi percorsi di ricerca.
\item Trattato come stringa, \var{valore} può contentere qualunque
  carattere. Tuttavia in pratica la maggior parte dei valori in
  \file{texmf.cnf} sono correlati all'espansione dei percorsi e dato che
  diversi caratteri speciali sono usati nell'espansione (cfr.
  sezione~\ref{sec:cnf-special-chars}), come parentesi e virgole, questi
  non possono essere usati nei nomi delle directory.

  Un \samp{;}\ in \var{valore} è tradotto in \samp{:} se state usando
  Unix, in modo da avere un singolo \file{texmf.cnf} che può supportare
  sia i sistemi Unix che Windows. Questa traduzione avviene con qualsiasi
  valore, non solo con i percorsi di ricerca, ma fortunatamente in pratica
  \samp{;} non è necessario in altri valori.

  La forma \code{\$\var{variabile}.\var{programma}} non è disponibile sul
  lato destro dell'espressione; al suo posto dovete usare una variabile
  aggiuntiva.

\item
  Tutte le definizioni vengono lette prima che qualunque cosa sia espansa,
  quindi si può fare riferimento alle variabili prima che siano definite.
\end{itemize*}
Un frammento di file di configurazione che mostra la maggior parte di
questi punti è
\ifSingleColumn
riportato sotto:

\verbatiminput{examples/ex5.tex}
\else
mostrato nella figura~\ref{fig:config-sample}.
\fi

\subsubsection{Espansione dei percorsi}
\label{sec:path-expansion}

\KPS{} riconosce nei percorsi di ricerca alcuni caratteri e costrutti
speciali, simili a quelli disponibili nelle shell di Unix. Come esempio
generale, il percorso \verb+~$USER/{foo,bar}//baz+ viene espanso
in tutte le directory sotto \file{foo} e \file{bar}, nella home dell'utente
\texttt{\$USER}, che contengono a loro volta una directory o un file di
nome \file{baz}. Queste espansioni sono spiegate nelle prossime sezioni.
%$
\subsubsection{Espansione predefinita}
\label{sec:default-expansion}

Se il percorso di ricerca a più alta priorità (consultate ``Fonti dei
percorsi'' a pagina~\pageref{sec:path-sources}) contiene un carattere \emph{due
punti in più} (all'inizio, alla fine oppure una coppia di due
punti), \KPS{} inserisce in quel punto il percorso di ricerca con la
seconda più alta priorità che sia stato definito. Se questo percorso
inserito ha a sua vuolta un due punti aggiuntivo, accade lo stesso con il
successivo in ordine di priorità. Per esempio, data l'impostazione di una
variabile d'ambiente

\begin{alltt}
> \Ucom{setenv TEXINPUTS /home/karl:}
\end{alltt}
e un valore di \code{TEXINPUTS} proveniente da \file{texmf.cnf} di

\begin{alltt}
  .:\$TEXMF//tex
\end{alltt}
allora il valore finale usato nella ricerca sarà:

\begin{alltt}
  /home/karl:.:\$TEXMF//tex
\end{alltt}

Dato che sarebbe inutile inserire lo stesso valore predefinito in più di
un posto, \KPS{} cambia solo uno dei \samp{:}\ di troppo e lascia gli
altri al loro posto. Per prima cosa cerca un \samp{:} all'inizio, quindi
cerca un \samp{:} alla fine, per ultimo cerca un \samp{:} doppio.

\subsubsection{Espansione delle parentesi graffe}
\label{sec:brace-expansion}

Una caratteristica utile è l'espansione delle parentesi graffe, che
significa che, per esempio, \verb+v{a,b}w+ viene espanso in
\verb+vaw:vbw+. L'annidamento delle parentesi è permesso. Tale
caratteristica è usata per implementare gerarchie \TeX{} multiple,
assegnando una lista di nomi tra graffe a \code{\$TEXMF}.
Nel \file{texmf.cnf} distribuito, viene fatta una definizione
(semplificata per questo esempio) di questo tipo:
\begin{verbatim}
  TEXMF = {$TEXMFVAR,$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFDIST}
\end{verbatim}
Quindi la usiamo per definire, ad esempio, il percorso di input per \TeX:
\begin{verbatim}
  TEXINPUTS = .;$TEXMF/tex//
\end{verbatim}
%$
che vuol dire che, dopo aver guardato nella directory attuale, saranno
esaminati i percorsi \code{\$TEXMFVAR/tex}, \code{\$TEXMFHOME/tex},
\code{\$TEXMFLOCAL/tex} e \code{\$TEXMFDIST/tex} (gli ultimi due usando i
database \file{ls-R}).

\subsubsection{Espansione delle sotto directory}
\label{sec:subdirectory-expansion}

In un elemento di percorso, due o più barre (slash) consecutive alla fine
di una directory \var{d} sono sostituite da tutte le sotto directory di
\var{d\/}: prima quelle che si trovano direttamente sotto \var{d}, quindi
quelle all'interno delle prime e così via. Ad ogni livello, l'ordine in
cui le directory sono cercate \emph{non è specificato}.

Se specificate il nome di un file dopo il \samp{//}, saranno incluse solo
le sotto directory che lo contengono. Ad esempio, \samp{/a//b} si
espande nelle directory \file{/a/1/b}, \file{/a/2/b}, \file{/a/1/1/b} e
così via, ma non in \file{/a/b/c} o \file{/a/1}.

È possibile usare più volte il costrutto \samp{//} in un percorso, ma ogni
\samp{//} all'inizio di un percorso viene ignorato.

\subsubsection{Riepilogo dei caratteri speciali in \file{texmf.cnf}}
\label{sec:cnf-special-chars}

Il seguente elenco riassume i caratteri speciali e i costrutti nei file di
configurazione di \KPS{}.

% need a wider space for the item labels here.
\newcommand{\CODE}[1]{\makebox[3em][l]{\code{#1}}}
\begin{ttdescription}
\item[\CODE{:}] Separatore nella specifica di un percorso; all'inizio o
  alla fine di un percorso, o doppio nel mezzo, sostituisce l'espansione
  di percorso predefinita.\par
\item[\CODE{;}] Separatore nei sistemi non Unix (si comporta come
  \code{:}).
\item[\CODE{\$}] Espansione di una variabile.
\item[\CODE{\string~}] Rappresenta la directory di home di un utente.
\item[\CODE{\char`\{...\char`\}}] Espansione di parentesi graffe.
\item[\CODE{//}] Espansione di sotto directory (può trovarsi ovunque in un
  percorso tranne che al suo inizio).
\item[\CODE{\%}] Inizio di un commento.
\item[\CODE{\bs}] Alla fine di una linea, carattere di continuazione per
  permettere voci di più linee.
\item[\CODE{!!}] Cerca \emph{solo} nei database per individuare un file,
    \emph{non} cerca sul disco.
\end{ttdescription}

Quando esattamente un carattere sarà considerato speciale o si comporterà
come sé stesso dipende dal contesto in cui è usato. Le regole sono
intrinseche nei livelli multipli di interpretazione della configurazione
(parsing, espansione, ricerca, \ldots)\ e quindi, sfortunatamente, non
possono essere espresse in modo conciso. Non esiste un meccanismo di
\emph{escape} generale; in particolare, \samp{\bs} non è un ``carattere di
escape'' nei file \file{texmf.cnf}.

Quando è il momento di scegliere i nomi delle directory per
l'istallazione, è più sicuro saltarli completamente.

\subsection{Database di nomi di file}
\label{sec:filename-database}

\KPS{} si sforza di minimizzare gli accessi al disco per le ricerche.
Nonostante ciò, nella \TL\ standard o in qualunque installazione con un
numero sufficiente di directory, esplorare qualunque possibile directory
per un dato file richiederebbe un tempo eccessivamente lungo. Per questo
\KPS{} può usare un file di ``database'' testuale costruito esternamente,
chiamato \file{ls-R}, che mappa file a directory, evitando così la
necessità di esplorare esaustivamente il disco.

Un secondo file di database, \file{aliases}, permette di dare nomi
aggiuntivi ai file elencati in \file{ls-R}.

\subsubsection{Il database di nomi}
\label{sec:ls-R}

Come spiegato in precedenza, il nome del database principale di nomi di
file deve essere \file{ls-R}. Potete metterne uno alla radice di ogni
ramo \TeX{} della vostra installazione nel quale volete che si effettuino
le ricerche (\code{\$TEXMF} di base). \KPS{} cerca i file \file{ls-R} nel
percorso \code{TEXMFDBS}.

Il metodo raccomandato per creare e mantenere \samp{ls-R} è quello di
eseguire lo script \code{mktexlsr} incluso nella distribuzione. Esso è
invocato dai vari script \samp{mktex}\dots. In teoria, questo script esegue
semplicemente il comando
\begin{alltt}
cd \var{/la/vostra/radice/texmf} && \path|\|ls -1LAR ./ >ls-R
\end{alltt}
assumendo che il comando \code{ls} del vostro sistema produca il giusto
formato di output (\code{ls} del progetto \GNU lo fa). Per garantire che
l'archivio sia sempre aggiornato, la cosa più semplice è rigenerarlo
regolarmente tramite \code{cron}, così che sia automaticamente ricostruito
quando i file installati cambiano, ad esempio dopo aver installato o
aggiornato un pacchetto \LaTeX.

Se un file non è trovato nel database, per default \KPS{} va avanti e
cerca sul disco. Se un particolare elemento di percorso comincia con
\samp{!!}, però, la ricerca per quell'elemento sarà effettuata \emph{solo}
nel database, mai sul disco.


\subsubsection{kpsewhich: ricerca indipendente di percorsi}
\label{sec:invoking-kpsewhich}

Il programma \texttt{kpsewhich} compie la ricerca di percorsi
indipendentemente da qualunque particolare applicazione. Esso può essere utile
come una sorta di programma \code{find} per individuare i file nelle
gerarchie \TeX{} (è ampiamente usato negli script \samp{mktex}\dots\
distribuiti).

\begin{alltt}
> \Ucom{kpsewhich \var{opzioni}\dots{} \var{nomefile}\dots{}}
\end{alltt}
Le opzioni specificate in \ttvar{opzioni} cominciano con \samp{-} oppure
con \samp{-{}-} ed è accettata qualunque abbreviazione non ambigua.

\KPS{} cerca ogni argomento sulla riga di comando che non sia un'opzione
come se fosse il nome di un file e restituisce il primo trovato. Non ci
sono opzioni per restituire tutti i file con un particolare nome (per fare
questo, potete eseguire il programma Unix \samp{find}).

Le opzioni più comuni sono descritte in seguito.

\begin{ttdescription}
\item[\texttt{-{}-dpi=\var{num}}]\mbox{}
  Imposta la risoluzione a \ttvar{num}; questa opzione ha effetto solo
  nelle ricerche dei file \samp{gf} e \samp{pk}. \samp{-D} è un sinonimo,
  per compatibilità con \cmdname{dvips}. Il valore preimpostato è 600.

\item[\texttt{-{}-format=\var{nome}}]\mbox{}\\
  Imposta il formato da cercare a \ttvar{nome}. Di base, il formato è
  ipotizzato a partire dal nome del file. Per i formati che non hanno
  associato un suffisso non ambiguo, come i file di supporto di \MP{} e i
  file di configurazione di \cmdname{dvips}, dovete specificare il nome
  così come è conosciuto da \KPS{}, come \texttt{tex} o \texttt{enc
  files}. Eseguite \texttt{kpsewhich -{}-help-formats} per un elenco.

\item[\texttt{-{}-mode=\var{stringa}}]\mbox{}\\
  Imposta il nome della modalità a \ttvar{stringa}; questa opzione ha
  effetto solo sulle ricerche dei file \samp{gf} e \samp{pk}. Non esiste
  un valore preimpostato: sarà trovata qualunque tipo di modalità.
\item[\texttt{-{}-must-exist}]\mbox{}\\
  Fa tutto ciò che è possibile per trovare il file, inclusa nello
  specifico la ricerca sul disco. Di base, per questioni di efficienza, è
  controllato solo l'archivio \file{ls-R}.
\item[\texttt{-{}-path=\var{stringa}}]\mbox{}\\
  Cerca nel percorso di ricerca \ttvar{stringa} (separata da due punti,
  come al solito), invece di ricavarlo dal nome del file. \samp{//} e
  tutte le solite espansioni sono supportate. Le opzioni \samp{-{}-path} e
  \samp{-{}-format} si escludono a vicenda.
\item[\texttt{-{}-progname=\var{nome}}]\mbox{}\\
  Imposta il nome del programma a \texttt{\var{nome}}. Questa opzione può
  modificare i percorsi di ricerca per mezzo della funzionalità
  \texttt{.\var{nomeprogramma}}. Il valore predefinito è
  \cmdname{kpsewhich}.
\item[\texttt{-{}-show-path=\var{nome}}]\mbox{}\\
  Mostra il percorso usato per la ricerca dei file il cui tipo sia
  \texttt{\var{nome}}. Può essere usata sia un'estensione (\code{.pk},
  \code{.vf}, ecc.) che un nome, proprio come per l'opzione
  \samp{-{}-format}.
\item[\texttt{-{}-debug=\var{num}}]\mbox{}\\
  Imposta le opzioni per la ricerca degli errori a \texttt{\var{num}}.
\end{ttdescription}


\subsubsection{Esempi d'uso}
\label{sec:examples-of-use}

Diamo uno sguardo a \KPS{} in azione. Ecco una ricerca semplice:

\begin{alltt}
> \Ucom{kpsewhich article.cls}
   /usr/local/texmf-dist/tex/latex/base/article.cls
\end{alltt}
Stiamo cercando il file \file{article.cls}. Dato che il suffisso
\samp{.cls} non è ambiguo, non abbiamo bisogno di specificare che vogliamo
cercare un file di tipo \optname{tex} (directory dei file sorgente \TeX). Lo 
troviamo
nella sotto directory \file{tex/latex/base} sotto la directory di \TL\
\samp{texmf-dist}. In modo simile, tutti i file seguenti sono trovati
senza problemi grazie alla non ambiguità dei loro suffissi.
\begin{alltt}
> \Ucom{kpsewhich array.sty}
   /usr/local/texmf-dist/tex/latex/tools/array.sty
> \Ucom{kpsewhich latin1.def}
   /usr/local/texmf-dist/tex/latex/base/latin1.def
> \Ucom{kpsewhich size10.clo}
   /usr/local/texmf-dist/tex/latex/base/size10.clo
> \Ucom{kpsewhich small2e.tex}
   /usr/local/texmf-dist/tex/latex/base/small2e.tex
> \Ucom{kpsewhich tugboat.bib}
   /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib
\end{alltt}

A proposito, quest'ultimo è un database bibliografico in formato
\BibTeX{} per gli articoli di \textsl{TUGboat}.

\begin{alltt}
> \Ucom{kpsewhich cmr10.pk}
\end{alltt}
I file di glifi dei font bitmat di tipo \file{.pk} sono usati dai
programmi di visualizzazione come \cmdname{dvips} e \cmdname{xdvi}. Non
viene restituito nulla in questo caso dato che in \TL\ non ci sono file
\samp{.pk} pregenerati per il carattere tipografico Computer Modern \Dash
come predefinite sono usate le varianti Type~1.
\begin{alltt}
> \Ucom{kpsewhich wsuipa10.pk}
\ifSingleColumn   /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk
\else /usr/local/texmf-var/fonts/pk/ljfour/public/
...                         wsuipa/wsuipa10.600pk
\fi\end{alltt}
Per questi font (un alfabeto fonetico creato dall'Università di
Washington) dobbiamo generare i file \samp{.pk} e dato che la modalità
predefinita di \MF{} nella nostra installazione è \texttt{ljfour} con una
risoluzione di base di 600\dpi{} (dots per inch, punti per pollice), viene
restituito questo valore.
\begin{alltt}
> \Ucom{kpsewhich -dpi=300 wsuipa10.pk}
\end{alltt}
In questo caso, quando specifichiamo di essere interessati ad una
risoluzione di 300\dpi{} (\texttt{-dpi=300}) osserviamo che questo font
non è disponibile nel sistema. Un programma come \cmdname{dvips} o
\cmdname{xdvi} andrebbe avanti e genererebbe i file \texttt{.pk} richiesti
usando lo script \cmdname{mktexpk}.

Adesso spostiamo la nostra attenzione sui file di intestazione e di
configurazione di \cmdname{dvips}. Cercheremo innanzitutto un file tra
quelli usati comunemente, il prologo generale \file{tex.pro} per il
supporto a \TeX, prima di spostare l'attenzione sul generico file di
configurazione (\file{config.ps}) e la mappa dei font \PS{}
\file{psfonts.map} \Dash\ a partire dal 2004, i file di mappatura e di
codifica hanno i propri percorsi di ricerca e una nuova posizione negli
alberi \dirname{texmf}. Dato che il suffisso \samp{.ps} è ambiguo,
dobbiamo specificare esplicitamente quale tipo stiamo considerando
(\optname{dvips config}) per il file \texttt{config.ps}.
\begin{alltt}
> \Ucom{kpsewhich tex.pro}
   /usr/local/texmf/dvips/base/tex.pro
> \Ucom{kpsewhich --format="dvips config" config.ps}
   /usr/local/texmf/dvips/config/config.ps
> \Ucom{kpsewhich psfonts.map}
   /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map
\end{alltt}

Diamo ora uno sguardo ravvicinato ai file di supporto per il carattere
\PS{} URW Times. Il prefisso per questi file nello schema standard dei nomi
dei font è \samp{utm}. Il primo file che cerchiamo è quello di
configurazione, che contiene il nome del file di mappatura:
\begin{alltt}
> \Ucom{kpsewhich --format="dvips config" config.utm}
   /usr/local/texmf-dist/dvips/psnfss/config.utm
\end{alltt}
Il contenuto di questo file è
\begin{alltt}
  p +utm.map
\end{alltt}
che punta al file \file{utm.map}, che sarà il prossimo che cercheremo.
\begin{alltt}
> \Ucom{kpsewhich utm.map}
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map
\end{alltt}
Questo file di mappatura definisce i nomi dei file dei font \PS{} Type~1
nella collezione URW. Il suo contenuto è simile al seguente (mostriamo
solo una parte delle righe):
\begin{alltt}
utmb8r  NimbusRomNo9L-Medi    ... <utmb8a.pfb
utmbi8r NimbusRomNo9L-MediItal... <utmbi8a.pfb
utmr8r  NimbusRomNo9L-Regu    ... <utmr8a.pfb
utmri8r NimbusRomNo9L-ReguItal... <utmri8a.pfb
utmbo8r NimbusRomNo9L-Medi    ... <utmb8a.pfb
utmro8r NimbusRomNo9L-Regu    ... <utmr8a.pfb
\end{alltt}
Prendiamo, ad esempio, il file per il Times Roman \file{utmr8a.pfb} e
cerchiamo la sua posizione nell'albero delle directory \file{texmf} con
una ricerca dei file di font Type~1:
\begin{alltt}
> \Ucom{kpsewhich utmr8a.pfb}
\ifSingleColumn   /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb
\else   /usr/local/texmf-dist/fonts/type1/
... urw/utm/utmr8a.pfb
\fi\end{alltt}

Dovrebbe essere chiaro da questi esempi come potete individuare facilmente
dove si trovi un dato file. Tutto ciò è particolarmente importante se
sospettate che in qualche modo venga prelevata la versione sbagliata di un
file, in quanto \cmdname{kpsewhich} mostrerà il primo file incontrato.

\subsubsection{Risoluzione dei problemi}
\label{sec:debugging}

A volte è necessario investigare sul come un programma determina i
riferimenti ad un file. Per rendere pratico ciò, \KPS{} offre vari livelli
di messaggi diagnostici:

\begin{ttdescription}
\item[\texttt{\ 1}] Chiamate a \texttt{stat} (accessi al disco). Quando si
  compie una ricerca avendo a disposizione un database \file{ls-R}
  aggiornato, questo livello non dovrebbe mostrare quasi nessun messaggio.
\item[\texttt{\ 2}] Riferimenti alle tabelle dei dati (come i database
  \file{ls-R}, i file di mappatura, quelli di configurazione).
\item[\texttt{\ 4}] Operazioni di apertura e chiusura dei file.
\item[\texttt{\ 8}] Informazioni generali sui percorsi per i tipi di file
  cercati da \KPS. Utile per scoprire dove è stato definito un particolare
  percorso per un file.
\item[\texttt{16}] Elenco delle directory per ogni elemento di un percorso
  (rilevante solo per le ricerche su disco).
\item[\texttt{32}] Ricerche di file.
\item[\texttt{64}] Valori delle variabili.
\end{ttdescription}
Il valore \texttt{-1} attiverà tutte le opzioni precedenti; in
pratica, questo valore è di solito il più comodo.

Analogamente, con il programma \cmdname{dvips}, impostando una
combinazione di opzioni di diagnostica, è possibile seguire in dettaglio
le posizioni da cui i file sono prelevati. In alternativa, quando un file
non viene trovato, la traccia dei messaggi mostra in quali directory il
programma ha cercato il file, così che si possa ottenere un'indicazione
sull'origine del problema.

In termini generali, dato che la maggior parte dei programmi invoca la
libreria \KPS{} internamente, è possibile selezionare il livello di
diagnostica usando la variabile d'ambiente \envname{KPATHSEA\_DEBUG} ed
impostandola ad una combinazione dei valori descritti nell'elenco di cui
sopra.

(Nota per gli utenti Windows: in questo sistema non è semplice redirigere
tutti i messaggi verso un file. Per scopi di diagnostica potete impostare
temporaneamente \texttt{SET KPATHSEA\_DEBUG\_OUTPUT=err.log}).

Consideriamo, come esempio, un piccolo file sorgente di \LaTeX,
\file{hello-world.tex}, che contiene il seguente testo.
\begin{verbatim}
  \documentclass{article}
  \begin{document}
  Ciao Mondo!
  \end{document}
\end{verbatim}
Questo piccolo file usa solo il font \file{cmr10}, quindi vediamo come
\cmdname{dvips} prepara il file \PS{} (vogliamo usare la versione Type~1
dei font Computer Modern, da qui l'opzione \texttt{-Pcms}).
\begin{alltt}
> \Ucom{dvips -d4100 hello-world -Pcms -o}
\end{alltt}
In questo caso abbiamo combinato la classe di diagnostica 4 di
\cmdname{dvips} (percorsi dei font) con l'espansione degli elementi di
percorso di \KPS{} (vedi il manuale di riferimento di \cmdname{dvips}).
Il risultato (leggermente riorganizzato) appare in
figura~\ref{fig:dvipsdbga}.
\begin{figure*}[tp]
\centering
\input{examples/ex6a.tex}
\caption{Ricerca dei file di configurazione}\label{fig:dvipsdbga}
\end{figure*}

\cmdname{dvips} inizia individuando i propri file di lavoro. Per primo
viene trovato \file{texmf.cnf}, che fornisce le definizioni dei percorsi
di ricerca per gli altri file, quindi il database di file \file{ls-R} (per
ottimizzare la ricerca) e il file \file{aliases}, che rende possibile
dichiarare diversi nomi (ad esempio, una versione breve in formato
DOS 8.3 e una più lunga e più naturale) per lo stesso file. Quindi
\cmdname{dvips} prosegue nel cercare il file di configurazione generico
\file{config.ps} prima di guardare al file per le personalizzazioni 
\file{.dvipsrc}
(che in questo caso \emph{non viene trovato}). Infine,
\cmdname{dvips} individua il file di configurazione \file{config.cms} per
il font \PS{} Computer Modern (questo passo è stato attivato con l'opzione
\texttt{-Pcms} data al comando \cmdname{dvips}). Questo file contiene
la lista delle mappature che definiscono la relazione tra il modo di
chiamare i font in \TeX{}, in \PS{} e sul disco.
\begin{alltt}
> \Ucom{more /usr/local/texmf/dvips/cms/config.cms}
   p +ams.map
   p +cms.map
   p +cmbkm.map
   p +amsbkm.map
\end{alltt}
\cmdname{dvips}, quindi, procede nel trovare tutti questi file, più il
generico file di mappatura \file{psfonts.map}, che è caricato sempre
(contiene le dichiarazioni per i font \PS{} usati comunemente; consultate
la parte finale della sezione~\ref{sec:examples-of-use} per ulteriori
dettagli sulla gestione delle mappature \PS).

A questo punto, \cmdname{dvips} si presenta all'utente:
\begin{alltt}
This is dvips(k) 5.92b Copyright 2002 Radical Eye Software (www.radicaleye.com)
\end{alltt}
\ifSingleColumn
Quindi prosegue nel cercare il file di prologo \file{texc.pro}:
\begin{alltt}\small
kdebug:start search(file=texc.pro, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro
\end{alltt}
\else
Quindi prosegue nel cercare il file di prologo \file{texc.pro} (vedi la
figura~\ref{fig:dvipsdbgb}).
\fi

Dopo aver trovato il file in questione, \cmdname{dvips} mostra la data e
l'ora, ci informa che genererà il file \file{hello-world.ps}, poi
che avrà bisogno del file del font \file{cmr10} e che quest'ultimo è
dichiarato ``residente'' (non sono necessarie bitmap):
\begin{alltt}\small
TeX output 1998.02.26:1204' -> hello-world.ps
Defining font () cmr10 at 10.0pt
Font cmr10 <CMR10> is resident.
\end{alltt}
Adesso la ricerca prosegue con il file \file{cmr10.tfm}, che viene
trovato, quindi viene fatto riferimento ad alcuni ulteriori file di
prologo (non mostrati) e, infine, l'istanza Type~1 del font,
\file{cmr10.pfb}, è individuata ed inclusa del file in uscita (vedi
l'ultima riga).
\begin{alltt}\small
kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]
\end{alltt}

\subsection{Opzioni di esecuzione}

Un'altra funzionalità utile di \Webc{} è la sua possibilità di controllare
un certo numero di parametri relativi alla memoria (nello specifico la
dimensione degli array) tramite il file \file{texmf.cnf} letto da \KPS{}
durante l'esecuzione. Le impostazioni della memoria possono essere trovate
nella Parte 3 di quel file nella distribuzione \TL. Le più importanti
sono:

\begin{ttdescription}
\item[\texttt{main\_memory}]
  La quantità complessiva di memoria disponibile per \TeX, \MF{} e \MP.
  Dovete creare un nuovo file di formato per ogni impostazione differente.
  Per esempio, potreste generare una versione ``enorme'' di \TeX{} e
  chiamare il file di formato \texttt{hugetex.fmt}. Usando il modo normale
  di indicare il nome del programma usato da \KPS{}, lo specifico valore
  della variabile \texttt{main\_memory} sarà letto da \file{texmf.cnf}.
\item[\texttt{extra\_mem\_bot}]
  Spazio aggiuntivo per le strutture dati ``grandi'' di \TeX: scatole,
  colle, interruzioni, ecc. Utile specialmente se usate \PiCTeX.
\item[\texttt{font\_mem\_size}]
  Numero di registri per le informazioni sui font disponibili in \TeX.
  Questo valore è più o meno pari alla dimensione totale di tutti i file
  TFM che vengono letti.
\item[\texttt{hash\_extra}]
  Spazio aggiuntivo per la tabella con i nomi delle sequenze di
  controllo; il suo valore predefinito è \texttt{600000}.
\end{ttdescription}

\noindent Questa funzionalità non è un sostituto per una vera
allocazione dinamica di memoria e array, ma dato che questi sono
estremamente difficili da implementare negli attuali sorgenti di \TeX,
questi parametri di esecuzione forniscono un pratico compromesso per
offrire  un minimo di flessibilità.

\htmlanchor{texmfdotdir}
\subsection{\texttt{\$TEXMFDOTDIR}}
\label{sec:texmfdotdir}

Nei vari posti qui sopra, abbiamo dato diversi percorsi di ricerca che
iniziano per \code{.} (per cercarre prima nella directory corrente), come
in
\begin{alltt}\small
TEXINPUTS=.;$TEXMF/tex//
\end{alltt}

Questa è una semplificazione. Il file \code{texmf.cnf} che distribuiamo in
\TL{} usa \filename{$TEXMFDOTDIR} al posto del semplice \samp{.}, come in:
\begin{alltt}\small
TEXINPUTS=$TEXMFDOTDIR;$TEXMF/tex//
\end{alltt}
(nel file distribuito, anche il secondo elemento del percorso è
leggermente più complesso di \filename{$TEXMF/tex//}, ma è un dettaglio;
qui vogliamo parlare di \filename{$TEXMFDOTDIR}).

Il motivo per usare la variabile \filename{$TEXMFDOTDIR} nelle definizioni
dei percorsi invece del semplice \samp{.} è soltanto per poterla
ridefinire. Ad esempio, un documento commplesso potrebbe avere molti file
sorgente organizzati in molte sotto directory. Per gestire questo, potete
impostare \filename{TEXMFDOTDIR} a \filename{.//} (ad esempio
nell'ambiente in cui compilate il documento) e saranno esplorate tutte
(attenzione: non usate \filename{.//} automaticamente; di solito è
fortemente indesiderato e potenzialmente insicuro cercare tra tutte le
sotto directory per un documento qualunque).

Come altro esempio, potreste non voler cercare per nulla nella directory
attuale, per esempio se avete organizzato i vostri file per essere
individuati tramite percorsi espliciti. Potete impostare
\filename{$TEXMFDOTDIR} a, per dire, \filename{/nonesuch} o qualunque
directory non esistente per questo.

Il valore predefinito di \filename{$TEXMFDOTDIR} è semplicemente \samp{.},
come impostato nel nostro \filename{texmf.cnf}.

\htmlanchor{ack}
\section{Ringraziamenti}

\TL{} è il risultato dello sforzo congiunto di praticamente tutti i gruppi
utenti \TeX.  Questa edizione di \TL{} è stata supervisionata da Karl
Berry. Gli altri contributori principali, passati e presenti, sono
elencati qui sotto.

\begin{itemize*}

\item I gruppi utenti \TeX{} Inglese, Tedesco, Olandese e Polacco
(TUG, DANTE e.V., NTG e GUST,
rispettivamente), che forniscono la necessaria infrastruttura tecnica ed
amministrativa. Unitevi al gruppo utenti \TeX\ più vicino a voi
(consultate la pagina \url{https://tug.org/usergroups.html})!

\item Il team di CTAN (\url{https://ctan.org}), che distribuisce le
immagini di \TL{} e fornisce l'infrastruttura comune per gli aggiornamenti
dei pacchetti, dalla quale dipende \TL.

\item Nelson Beebe per aver reso disponibili molte piattaforme agli
sviluppatori di \TL{}, per i suoi esaustivi collaudi e per gli
impareggiabili sforzi bibliografici.

\item John Bowman per aver fatto molti cambiamenti al suo programma
di grafica avanzata Asymptote affinché funzionasse in \TL.

\item Peter Breitenlohner ed il team di \eTeX\ per le stabili
fondamenta del \TeX{} del futuro e Peter in particolare per gli anni
di aiuto stellare con gli autotool di \GNU e per aver mantenuto i sorgenti 
aggiornati. Peter è venuto a mancare
nell'ottobre 2015 e noi dedichiamo il lavoro che va avanti alla sua
memoria.

\item Jin-Hwan Cho e tutti i membri del team di DVIPDFM$x$ per il loro
eccellente driver e la velocità di risposta ai problemi di configurazione.

\item Thomas Esser, senza il cui meraviglioso pacchetto \teTeX{} \TL{} non
sarebbe mai esistito.

\item Michel Goossens, che è stato coautore della documentazione
originale.

\item Eitan Gurari, il cui \TeX4ht è stato usato per creare la versione
\HTML{} di questa documentazione e che ha lavorato instancabilmente per
migliorarlo con brevi preavvisi ogni anno. Eitan è scomparso
prematuramente nel giugno 2009 e dedichiamo questa documentazione alla sua
memoria.

\item Hans Hagen per la grande quantità di collaudi e per aver permesso al
suo pacchetto \ConTeXt{} (\url{https://pragma-ade.com}) di lavorare
nell'infrastruttura di \TL\ e per guidare continuamente lo sviluppo di
\TeX.

\item \Thanh, Martin Schr\"oder e il team di pdf\TeX{}
(\url{http://pdftex.prg}) per i continui miglioramenti delle capacità di
\TeX.

\item Hartmut Henkel per i significativi contributi allo sviluppo di
pdf\TeX, Lua\TeX{} e molto ancora.

\item Shunshaku Hirata, per i contributi originalissimi e per continuare
il lavoro su DVIPDFM$x$.

\item Taco Hoekwater per gli importanti forzi nel rinnovato sviluppo di
MetaPost e (Lua)\TeX{} (\url{http://luatex.org}) stesso, per aver
incorporato \ConTeXt{} in \TL, per aver dato a Kpathsea le funzionalità
multi-thread e per molto altro ancora.

\item Khaled Hosny, per il considerevole lavoro su \XeTeX, DVIPDFM$x$, e
per gli sforzi con i font, arabi ed altri.

\item Pawe{\l} Jackowski per l'installatore Windows \cmdname{tlpm} e
Tomasz {\L}uczak per \cmdname{tlpmgui}, usati nelle edizioni passate.

\item Akira Kakuto per aver fornito gli eseguibili per Windows a partire
dalle sue distribuzioni per il \TeX{} giapponese W32TEX e W64TEX
(\url{http://w32tex.org}) e per molti altri
contributi allo sviluppo.

\item Jonathan Kew per aver sviluppato il notevole motore \XeTeX{} e per
aver investito tempo e fatica per integrarlo in \TL, così come per la
versione iniziale dell'installatore di Mac\TeX{} e per l'editor
\TeX{}works, che raccomandiamo.

\item Hironori Kitagawa, per la manutenzione di (e)p\TeX\ e il relativo
supporto.

\item Dick Koch per mantenere Mac\TeX\ (\url{https://tug.org/mactex}) a
distanza molto ravvicinata da \TL{} e per il suo gran buon umore nel
farlo.

\item Reinhard Kotucha per i suoi considerevoli contributi 
all'infrastruttura e
all'installatore di \TL{} 2008, così come per gli sforzi di ricerca sotto
Windows, lo script \texttt{getnonfreefonts} e molto altro.

\item Siep Kroonenberg, anche lui per importanti contributi
all'infrastruttura e all'installatore di \TL{} 2008, specialmente sotto
Windows, e il grosso del lavoro di aggiornamento di questo manuale per
descrivere queste funzionalità.

\item Clerk Ma, per la correzione dei bug e le estensioni nel motore.

\item Mojca Miklavec, per il grande aiuto con \ConTeXt, per aver fornito gli
eseguibili per molte piattaforme e per tanto altro ancora.

\item Heiko Oberdiek per il pacchetto \pkgname{epstopdf} e molti altri,
per aver compresso gli enormi file di dati di \pkgname{pst-geo} così che
potessimo includerli e, soprattutto, per il suo notevole lavoro su
\pkgname{hyperref}.

\item Phelype Oleinik, per l'\cs{input} confinato nel gruppo tra i motori
nel 2020, e molto altro.

\item Petr Ok\v{s}ak che ha coordinato e controllato con grande attenzione
tutto il materiale in ceco e in slovacco.

\item Toshio Oshima per il suo visualizzatore per Windows
\cmdname{dviout}.

\item Manuel Pégourié-Gonnard per aver aiutato con gli aggiornamenti dei
pacchetti, con i miglioramenti alla documentazione e con lo sviluppo di
\cmdname{texdoc}.

\item Fabrice Popineau per l'originale supporto per Windows in \TL{} e per
il lavoro sulla documentazione in francese.

\item Norbert Preining, l'architetto principale dell'attuale infrastruttura e
installatore di \TL{}, anche per aver coordinato la versione Debian di \TL{}
(insieme con Frank Küster) e per l'enorme lavoro svolto lungo il percorso.

\item Sebastian Rahtz per aver originariamente creato \TL{} ed averne
curato la manutenzione per molti anni. Sebastian è venuto a mancare nel
marzo 2016 e noi dedichiamo il lavoro che va avanti alla sua memoria.

\item Luigi Scarso, per aver continuato lo sviluppo di Metapost, Lua\TeX\
e molto altro ancora.

\item Andreas Scherer per \texttt{cwebbit}, l'implementazione di CWEB
usata in \TL{}, e per continuare la manutenzione del CWEB originale.

\item Takuji Tanaka per la manutenzione di (e)(u)p\TeX\ e il relativo
supporto.

\item Tomasz Trzeciak per aiuti su vasta scala con Windows.

\item Vladimir Volovich per il sostanziale aiuto nel porting e in altre
problemi di manutenzione e specialmente per aver reso possibile includere
\cmdname{xindy}.

\item Staszek Wawrykiewicz, un collaudatore principale di tutta \TL{} e
coordinatore di molti dei più importanti contributi polacchi: font,
installazione sotto Windows e molto altro. Staszek è venuto a mancare
nel febbraio 2018 e noi dedichiamo il lavoro che va avanti alla sua memoria.

\item Olaf Weber per la sua paziente manutenzione di \Webc\ negli anni
passati.

\item Gerben Wierda per aver creato e fatto manutenzione all'originale
supporto per \MacOSX{}.

\item Graham Williams, l'artefice del Catalogo \TeX{} dei pacchetti.

\item Joseph Wright, per il tanto lavoro sul rendere le stesse
funzionalità primitive disponibili su tutti i motori.

\item Hironobu Yamashita, per il tanto lavoro su p\TeX\ e il relativo
supporto.

\end{itemize*}

Preparatori degli eseguibili:
Marc Baudoin (\pkgname{amd64-netbsd}, \pkgname{i386-netbsd}),
Ken Brown (\pkgname{i386-cygwin}, \pkgname{x86\_64-cygwin}),
Simon Dales (\pkgname{armhf-linux}),
Johannes Hielscher (\pkgname{aarch64-linux}),
Akira Kakuto (\pkgname{win32}),
Dick Koch (\pkgname{universal-darwin}),
Mojca Miklavec (\pkgname{amd64-freebsd},
                \pkgname{i386-freebsd},
                \pkgname{x86\_64-darwinlegacy},
                \pkgname{i386-solaris}, \pkgname{x86\_64-solaris},
                \pkgname{sparc-solaris}),
Norbert Preining (\pkgname{i386-linux},
                  \pkgname{x86\_64-linux}
                  \pkgname{x86\_64-linuxmusl}).
Per informazioni sul processo di compilazione di \TL, visitate
\url{https://tug.org/texlive/build.html}.

Attuali traduttori della documentazione:
Takuto Asakura (giapponese),
Denis Bitouz\'e \& Patrick Bideault (francese),
Carlos Enriquez Figueras (spagnolo),
Jjgod Jiang, Jinsong Zhao, Yue Wang \& Helin Gai (cinese),
Nikola Le\v{c}ić (serbo),
Marco Pallante \& Carla Maggi (italiano),
Petr Sojka \& Jan Busa (ceco\slash slovacco),
Boris Veytsman (russo),
Zofia Walczak (polacco),
Uwe Ziegenhagen (tedesco), La pagina web della documentazione di
\TL{} è \url{https://tug.org/texlive/doc.html}.

Ovviamente il più importante ringraziamento deve andare a Donald Knuth,
innanzitutto per aver inventato \TeX{} e poi per averlo donato al mondo.


\section{Storia delle edizioni}
\label{sec:history}

\subsection{Passato}

La discussione iniziò nel tardo 1993 quando il gruppo utenti \TeX{}
olandese stava iniziando a lavorare al proprio \CD{} 4All\TeX{} per gli
utenti MS-DOS e si sperava a quel tempo di rilasciare un solo,
razionale, \CD{} per tutti i sistemi. Questo era un obiettivo troppo
ambizioso a quel tempo, ma non solo diede origine al \CD{} di grande successo
4All\TeX{}, ma altresì spinse il gruppo di lavoro del TUG Technical
Council verso una \emph{Struttura delle Directory \TeX{}} (\TDS{}, \TeX{}
Directory Structure, \url{https://tug.org/tds}), che specificò come creare
collezioni coerenti e gestibili di file di supporto a \TeX. Una bozza
completa della \TDS{} fu pubblicata nel numero di dicembre 1995 di
\textsl{TUGboat} e fu chiaro dalle fasi iniziali che un prodotto
desiderabile sarebbe stata una struttura di modello su \CD{}. La
distribuzione che hai ora è il risultato diretto delle decisioni del
gruppo di lavoro. Fu anche chiaro dal successo del \CD{} 4All\TeX{} che
gli utenti Unix avrebbero beneficiato da un simile semplice sistema e
questo è l'altro filone principale di \TL.

Per prima cosa ci mettemmo all'opera per realizzare un nuovo \CD{} della
\TDS{} basato su Unix nell'autunno del 1995 e rapidamente identificammo il
\teTeX{} di Thomas Esser come l'impianto ideale, dato che già aveva il
supporto per più piattaforme ed era costruito con la portabilità tra
diversi file system in mente. Thomas acconsentì ad aiutarci e il lavoro
cominciò seriamente all'inizio del 1996. La prima edizione fu rilasciata
nel maggio 1996. All'inizio del 1996, Karl Berry completò una nuova
versione di Web2c, che includeva praticamente tutte le funzionalità che
Thomas Esser aveva aggiunto in \teTeX{} e decidemmo di basare la seconda
edizione del \CD{} sul \Webc{} standard, con l'inclusione dello script
\texttt{texconfig} proveniente da \teTeX. La terza edizione del \CD{} fu
basata su una nuova importante revisione di \Webc, la 7.2, realizzata da Olaf
Weber; allo stesso tempo, era stata fatta una nuova revisione di \teTeX{}
e \TL{} incluse quasi tutte le sue funzionalità. La quarta edizione seguì
lo stesso modello, usando una nuova versione di \teTeX{} e di \Webc{}
(7.3). Il sistema adesso includeva anche un completo allestimento per
Windows, grazie a Fabrice Popineau.

Per la quinta edizione (marzo 2000) furono riviste e controllate molte
parti del \CD, aggiornando centinaia di pacchetti. I dettagli sui
pacchetti furono memorizzati in file XML. Ma il cambiamento principale per
\TeX\ Live 5 fu che tutto il software non libero fu rimosso. Tutto in
\TL{} era pensato per essere compatibile con le Debian Free Software
Guidelines (linee guida Debian sul software libero,
\url{https://debian.org/intro/free}); abbiamo fatto del nostro meglio
per controllare le condizioni di licenza di tutti i pacchetti, ma
apprezzeremo tantissimo ogni segnalazione di errori.

La sesta edizione (luglio 2001) aveva aggiornato ancora più materiale. Il
cambiamento più importante fu un nuovo concetto di installazione: l'utente
poteva selezionare un insieme più preciso delle collezioni desiderate. Le
collezioni relative alle lingue furono completamente riorganizzate, così
che, selezionandone una qualunque, non solo venissero installati le macro, i
font, ecc., ma fosse anche preparato un opportuno file
\texttt{language.dat}.

La settima edizione del 2002 ebbe la notevole aggiunta del supporto per
\MacOSX{} e la solita miriade di aggiornamenti ad ogni genere di pacchetto
e programma. Un traguardo importante fu l'integrazione dei sorgenti con
quelli di \teTeX{} per correggere l'allontanamento l'uno dall'altro
avvenuto nelle versioni~5 e~6.

\subsubsection{2003}

Nel 2003, con il continuo flusso di aggiornamenti ed aggiunte, scoprimmo
che \TL{} era cresciuta così tanto che non poteva più essere contenuta in
un singolo \CD, quindi la dividemmo in tre diverse distribuzioni (consultate
la sezione~\ref{sec:tl-coll-dists}, \p.\pageref{sec:tl-coll-dists}). In
più:

\begin{itemize*}
\item Su richiesta del team di \LaTeX, cambiammo i comandi \cmdname{latex} e
      \cmdname{pdflatex} affinché usassero \eTeX{} (consultate 
      \p.\pageref{text:etex}).
\item I nuovi font Latin Modern furono inclusi (e sono raccomandati).
\item Il supporto per Alpha OSF fu rimosso (il supporto per
      HPUX era già stato rimosso in precedenza) dato che nessuno
      aveva (o voleva offrire) l'hardware su cui compilare i nuovi
      eseguibili.
\item L'allestimento per Windows fu cambiato sostanzialmente; per la prima
      volta fu introdotto un ambiente integrato basato su XEmacs.
\item Importanti programmi aggiuntivi per Windows (Perl, Ghost\-script,
      Image\-Magic, Ispell) sono ora installati nelle directory \TL{}.
\item I file di mappatura per i font usati da \cmdname{dvips},
      \cmdname{dvipdfm} e \cmdname{pdftex} sono ora generati da un nuovo
      programma \cmdname{updmap} ed installati in
      \dirname{texmf/fonts/map}.    
\item \TeX, \MF{} e \MP{} adesso, come impostazione predefinita, mostrano la 
      maggior parte dei caratteri
      in ingresso (dal numero 32 \acro{ASCII} in su) come sé stessi nei
      file che vengono generati (ad esempio, con \verb|\write|), nei file
      di registro e sul terminale, ossia \emph{non sono più} tradotti
      usando la notazione \verb|^^|. In \TL{}~7 questa traduzione
      dipendeva dalle impostazioni sulla lingua del sistema; adesso,
      queste impostazioni locali non influenzano più il comportamento dei 
      programmi
      \TeX. Se per qualche ragione avete bisogno della notazione \verb|^^|,
      rinominate il file \verb|texmf/web2c/cp8bit.tcx| (le edizioni future
      avranno un modo più pulito per controllare questa opzione).
\item Questa documentazione fu revisionata sostanzialmente.
\item Infine, dato che i numeri delle edizioni erano cresciuti in modo
      poco agevole, da adesso la versione è identificata semplicemente
      dall'anno: \TL{} 2003.
\end{itemize*}


\subsubsection{2004}

Il 2004 vide molti cambiamenti:

\begin{itemize}

\item Se avete font installati localmente che usano i propri file di
supporto \filename{.map} o (molto meno probabilmente) \filename{.enc},
potreste aver bisogno di spostare questi file.

I file \filename{.map} adesso sono cercati soltanto in sotto directory di
\dirname{fonts/map} (per ciascuna gerarchia \filename{texmf}, lungo il
percorso \envname{TEXFONTMAPS}). In modo simile, i file \filename{.enc}
sono cercati soltanto nelle sottodirectory di \dirname{font/enc}, lungo il
percorso \envname{ENCFONTS}. \cmdname{updmap} tenterà di avvisarvi su file
che possono provocare problemi.

Per i metodi per gestire questa ed altre informazioni, visitate la pagina
\url{https://tug.org/texlive/mapenc.html}.

\item \TK{} è stata espansa con l'aggiunta di un \CD{} installabile basato
su \MIKTEX, per coloro che preferiscono quell'implementazione a Web2C.
Consultate la sezione~\ref{sec:overview-tl} (\p.\pageref{sec:overview-tl}).

\item All'interno di \TL, la singola grande directory \dirname{texmf}
delle edizioni precedenti è stata sostituita da: \dirname{texmf},
\dirname{texmf-dist} e \dirname{texmf-doc}. Consultate la
sezione~\ref{sec:tld} (\p.\pageref{sec:tld}) e il file \filename{README}
contenuto in ciascuna di esse.

\item Tutti file in ingresso relativi a \TeX{} sono adesso raccolti nella
sotto directory \dirname{tex} delle varie \dirname{texmf*}, piuttosto che
avere le diverse posizioni \dirname{tex}, \dirname{etex},
\dirname{pdftex}, \dirname{pdfetex}, ecc. Consultate
\CDref{texmf-dist/doc/generic/tds/tds.html\#Extensions}
{\texttt{texmf-dist/doc/generic/tds/tds.html\#Extensions}}.

\item Gli script di supporto (pensati per non essere invocati dagli
utenti) sono adesso posizionati in una nuova sotto directory delle varie
\dirname{texmf*} chiamata \dirname{scripts} e possono essere cercati
usando \verb|kpsewhich -format=texmfscripts|. Se quindi avete dei programmi
che richiamano questi script, dovranno essere corretti. Consultate
\CDref{texmf-dist/doc/generic/tds/tds.html\#Scripts}
{\texttt{texmf-dist/doc/generic/tds/tds.html\#Scripts}}.

\item Quasi tutti i formati lasciano la maggior parte dei caratteri
stampabili uguali a se stessi tramite il ``file di traduzione''
\filename{cp227.tcx}, piuttosto che trasformarli nella notazione
\verb|^^|. Nello specifico, i caratteri alle posizioni ASCII
32--256, la tabulazione orizzontale, quella verticale e il ``form feed''
sono considerati stampabili e non vengono trasformati. Le eccezioni sono
plain \TeX{} (solo i caratteri 32--126 sono stampabili), \ConTeXt{}
(caratteri 0--255) e i formati legati ad \OMEGA. Questo comportamento
predefinito è quasi lo stesso che in \TL\,2003, ma è implementato in
maniera più pulita, con maggiori possibilità di personalizzazione.
Consultate \CDref{texmf-dist/doc/web2c/web2c.html\#TCX-files}
{\texttt{texmf-dist/doc/web2c/web2c.html\#TCX-files}} (ad ogni modo, con
l'input in formato Unicode, \TeX{} potrebbe stampare sequenze parziali di
caratteri quando viene mostrato il contesto degli errori dato che legge
l'input come una sequenza di byte, non di caratteri).

\item \textsf{pdfetex} è adesso il motore predefinito per tutti i formati
tranne (plain) \textsf{tex} stesso (ovviamente genera file DVI
quando è eseguito come \textsf{latex}, ecc.). Questo significa, tra le
altre cose, che le caratteristiche di microtipografia di \textsf{pdftex}
sono disponibili in \LaTeX, \ConTeXt, ecc., così come le funzionalità di
\eTeX{} (\OnCD{texmf-dist/doc/etex/base/}).

Significa anche che è \emph{più importante che mai} usare il pacchetto
\pkgname{ifpdf} (funziona sia con plain \TeX, che con \LaTeX) o del codice
equivalente, perché verificare semplicemente se \cs{pdfoutput} o qualche
altra primitiva sono definiti non è un modo affidabile per determinare se
si sta generando un file PDF. Per quest'anno abbiamo cercato di
rendere questo aspetto compatibile con le edizioni passate nel miglior modo
possibile, ma a partire dal prossimo anno \cs{pdfoutput} potrebbe
essere definito anche se il file generato è un DVI.

\item pdf\TeX\ (\url{http://pdftex.org}) ha molte nuove funzionalità:

  \begin{itemize*}

  \item \cs{pdfmapfile} e \cs{pdfmapline} forniscono il supporto alle
  mappature dei font direttamente all'interno di un documento.

  \item L'espansione microtipografica dei font può essere usata più
  facilmente.\\
  \url{https://www.ntg.nl/pipermail/ntg-pdftex/2004-May/000504.html}

  \item Tutti i parametri che prima erano impostati tramite lo speciale
  file di configurazione \filename{pdftex.cfg} devono essere adesso
  impostati tramite primitive, tipicamente in \filename{pdftexconfig.tex};
  \filename{pdftex.cfg} non è più supportato. Ogni file \filename{.fmt}
  esistente
  deve essere rigenerato quando \filename{pdftexconfig.tex} viene
  modificato.

  \item Per saperne di più, consultate il manuale di pdf\TeX{}:
  \OnCD{texmf-dist/doc/pdftex/manual/pdftex-a.pdf}.

  \end{itemize*}

\item La primitiva \cs{input} in \cmdname{tex} (e in \cmdname{mf} e
\cmdname{mpost}) adesso accetta nomi con spazi ed altri caratteri speciali
racchiusi tra doppi apici. Esempi tipici:
\begin{verbatim}
\input "file con spazi"   % plain
\input{"file con spazi"}  % latex
\end{verbatim}
Consultate il manuale di Web2C per saperne di più:
\OnCD{texmf-dist/doc/web2c}.

\item Il supporto per enc\TeX{} è ora incluso in Web2C e, di conseguenza,
in tutti i programmi \TeX, per mezzo dell'opzione \optname{-enc} \Dash\
\emph{solo quando i formati sono stati generati}. enc\TeX{} supporta la
ricodifica generale dell'input e dell'output, permettendo il supporto
completo per l'Unicode (in UTF-8). Consultate
\OnCD{texmf-dist/doc/generic/enctex/} e
\url{http://olsak.net/enctex.html}.

\item Aleph, un nuovo motore che combina \eTeX\ ed \OMEGA, è disponibile.
Alcune informazioni sono disponibili in \OnCD{texmf-dist/doc/aleph/base} e
su \url{https://texfaq.org/FAQ-enginedev}. Il formato
basato su \LaTeX{} per Aleph è chiamato \textsf{lamed}.

\item L'ultimo aggiornamento di \LaTeX\ ha una nuova versione della
LPPL \Dash\ ora una licenza ufficialmente approvata da Debian.
Per altri svariati aggiornamenti, consultate i file \filename{ltnews} in
\OnCD{texmf-dist/doc/latex/base}.

\item \cmdname{dvipng}, un nuovo programma per convertire i DVI in
immagini PNG, è incluso. Consultate
\url{https://ctan.org/pkg/dvipng}.

\item Abbiamo ridotto il pacchetto \pkgname{cbgreek} ad un insieme di font
di ``medie'' dimensioni, con il consenso e i suggerimenti dell'autore
(Claudio Beccari). I font omessi sono quelli invisibili, quelli profilati
e i trasparenti, che sono usati abbastanza raramente, mentre noi avevamo
bisogno di spazio. L'insieme completo è ovviamente disponibile su
CTAN (\url{https://ctan.org/pkg/cbgreek-complete}).

\item \cmdname{oxdvi} è stato rimosso; usate semplicemente \cmdname{xdvi}.

\item I comandi (collegamenti) \cmdname{ini} e \cmdname{vir} per
\cmdname{tex}, \cmdname{mf} e \cmdname{mpost} non sono più creati, così
come \cmdname{initex}. Le funzionalità di \cmdname{ini} sono disponibili
oramai da anni tramite l'opzione su riga di comando \optname{-ini}.

\item Il supporto per la piattaforma \textsf{i386-openbsd} è stato
rimosso. Dato che è disponibile il pacchetto \pkgname{tetex} nel sistema
BSD Ports e gli eseguibili per GNU/Linux e FreeBSD
erano disponibili, ci è sembrato che il tempo dedicato dai volontari
potesse essere meglio speso in altre attività.

\item Su \textsf{sparc-solaris} (almeno), potreste dover impostare la
variabile d'ambiente \envname{LD\_LIBRARY\_PATH} per eseguire i programmi
delle \pkgname{t1utils}. La ragione è che questi sono compilati con il C++
e non esiste una posizione comune per le librerie (questo problema non è
nuovo dell'edizione 2004, ma non era stato documentato in precedenza). In
modo simile, su \textsf{mips-irix}, sono richieste le librerie di runtime
del MIPSpro 7.4.

\end{itemize}

\subsubsection{2005}

L'edizione del 2005 ha visto il solito enorme numero di aggiornamenti ai
pacchetti ed ai programmi. L'infrastruttura è rimasta sostanzialmente
invariata dal 2004, ma inevitabilmente ci sono stati comunque dei
cambiamenti:

\begin{itemize}

\item Sono stati introdotti i nuovi script \cmdname{texconfig-sys},
      \cmdname{updmap-sys} e \cmdname{fmtutil-sys} che modificano la
      configurazione nei percorsi di sistema. Gli script
      \cmdname{texconfig}, \cmdname{updmap} e \cmdname{fmtutil} ora
      modificano i file specifici per i singoli utenti, sotto
      \dirname{$HOME/.texlive2005}.

\item Sono state introdotte le corrispondenti nuove variabili
      \envname{TEXMFCONFIG} e \envname{TEXMFSYSCONFIG} per specificare i
      percorsi dove trovare i file di configurazione (per il singolo
      utente e per l'intero sistema, rispettivamente). Quindi, potreste
      dover spostare le versioni personali di \filename{fmtutil.cnf} e
      \filename{updmap.cfg} in questi percorsi; un'altra possibilità è quella
      di ridefinire \envname{TEXMFCONFIG} o \envname{TEXMFSYSCONFIG} in
      \filename{texmf.cnf}. In ogni caso la posizione reale di questi file
      e i valori di \envname{TEXMFCONFIG} e \envname{TEXMFSYSCONFIG}
      devono concordare. Consultate la sezione~\ref{sec:texmftrees},
      \p.\pageref{sec:texmftrees}.

\item L'anno scorso abbiamo tenuto \verb|\pdfoutput| ed altre
      primitive non definite per l'output in \dvi, anche quando veniva
      usato il programma \cmdname{pdfetex}. Quest'anno, come promesso,
      abbiamo annullato quella misura di compatibilità. Per cui, se il
      vostro documento usa \verb|\ifx\pdfoutput\undefined| per verificare
      se viene generato un PDF, dovrà essere cambiato. Potete usare il
      pacchetto \pkgname{ifpdf.sty} (che funziona sia sotto plain \TeX{}
      che sotto \LaTeX) per fare ciò, oppure rubarne la logica.

\item L'anno scorso abbiamo cambiato la maggior parte dei formati per
      stampare i caratteri (a 8 bit) come sé stessi (consultate la sezione
      precedente). Il nuovo file TCX \filename{empty.tcx} adesso offre un
      modo più semplice per ottenere l'originaria notazione \verb|^^| se
      la desiderate, come in:
\begin{verbatim}
latex --translate-file=empty.tcx vostrofile.tex
\end{verbatim}

\item È incluso il nuovo programma \cmdname{dvipdfmx} per la
      trasformazione dei DVI in PDF; si tratta di un aggiornamento
      attivamente mantenuto di \cmdname{dvipdfm} (che per ora è ancora
      disponibile, anche se non più raccomandato).

\item Sono inclusi i nuovi programmi \cmdname{pdfopen} e
      \cmdname{pdfclose} per consentire di ricaricare i file PDF nel
      lettore Adobe Acrobat Reader senza riavviare il programma
      (altri lettori PDF, in particolare \cmdname{xpdf}, \cmdname{gv} e
      \cmdname{gsview}, non hanno mai sofferto di questo problema).

\item Per coerenza, le variabili \envname{HOMETEXMF} e
      \envname{VARTEXMF} sono state rinominate \envname{TEXMFHOME} e
      \envname{TEXMFVAR}, rispettivamente. C'è anche \envname{TEXMFVAR},
      che è, di default, specifica per ogni utente. Consultate il primo punto
      dell'elenco.

\end{itemize}


\subsubsection{2006--2007}

Nell'edizione 2006--2007, la nuova aggiunta più rilevante a \TL{} è stato il
programma \XeTeX, disponibile con i comandi \texttt{xetex} e
\texttt{xelatex}; visitate il sito \url{https://scripts.sil.org/xetex}.

Anche MetaPost ha ricevuto un aggiornamento degno di nota, mentre altri ne
sono stati pianificati per il futuro
(\url{https://tug.org/metapost/articles}), così come per pdf\TeX{}
(\url{https://tug.org/applications/pdftex}).

I \filename{.fmt} di \TeX{} (formati ad alta velocità) e i file simili per
MetaPost e \MF{} adesso sono posizionati in sotto directory di
\dirname{texmf/web2c}, invece che nella directory stessa (sebbene la
directory sia ancora visitata durante la ricerca, a beneficio dei
\filename{.fmt} esisitenti). Le sotto directory sono chiamate in base al
``motore'' usato, come \filename{tex} o \filename{pdftex} o
\filename{xetex}. Questo cambiamento dovrebbe essere invisibile nell'uso
normale.

Il programma (plain) \texttt{tex} non legge più le prime linee
identificate da \texttt{\%\&} per determinare quale formato adoperare; è
il puro \TeX{} Knuthiano (\LaTeX{} e tutto il resto leggono ancora le
linee \texttt{\%\&}).

Ovviamente anche quest'anno ha visto (i soliti) centinaia di altri
aggiornamenti ai pacchetti ed ai programmi. Come sempre, visitate
CTAN (\url{https://ctan.org}) per tutti gli aggiornamenti.

Internamente, i sorgenti sono ora memorizzati tramite Subversion, con
un'interfaccia web standard per visitarli; il collegamento è sulla nostra
pagina home. Sebbene invisibile nella distribuzione finale, ci aspettiamo
che questo fornisca un fondamento stabile per lo sviluppo negli anni a
venire.

Infine, nel maggio 2006 Thomas Esser ha annunciato che non avrebbe più
aggiornato te\TeX{} (\url{https://tug.org/tetex}). Come risultato, c'è
stata un'impennata nell'interesse verso \TL, specialmente tra i distributori
di \GNU/Linux (c'è un nuovo schema di installazione in \TL{} chiamato
\texttt{tetex}, che fornisce un equivalente approssimativo).  Speriamo che
alla fine questo si traduca in miglioramenti all'ambiente \TeX{} per tutti.

\subsubsection{2008}

Nell'edizione del 2008, l'intera infrastruttura di \TL{} è stata
riprogettata e reimplementata. Le informazioni complete su
un'installazione sono adesso memorizzate in un file di testo puro
\filename{tlpkg/texlive.tlpdb}.

Tra le altre cose, ciò rende finalmente possibile aggiornare
un'installazione \TL{} tramite Internet dopo l'installazione iniziale, una
caratteristica che Mik\TeX{} ha offerto per anni. Prevediamo di
aggiornare regolarmente i nuovi pacchetti così come diventano disponibili
su \CTAN.

Il nuovo motore Lua\TeX{} (\url{http://luatex.org}) è ora incluso;
accanto ad un nuovo livello di flessibilità nella composizione
tipografica, questo fornisce un eccellente linguaggio di scripting da
usare sia dentro che fuori i documenti \TeX.

Il supporto tra Windows e le piattaforme basate su Unix è ora molto più
uniforme. In particolare, la maggior parte degli script Perl e Lua sono
ora disponibili sotto Windows tramite l'interprete Perl distribuito
internamente con \TL.

Il nuovo script \cmdname{tlmgr} (sezione~\ref{sec:tlmgr}) è l'interfaccia
generale per amministrare \TL{} dopo l'installazione iniziale. Esso
gestice l'aggiornamento dei pacchetti e la conseguente rigenerazione dei
formati, dei file di mappatura e dei file delle lingue, incluse
opzionalmente le aggiunte locali.

Con l'avvento di \cmdname{tlmgr}, è ora disabilitata l'azione di modifica
dei file di configurazione dei formati e delle sillabazioni operata da
\cmdname{texconfig}.

Il programma per la creazione degli indici \cmdname{xindy}
(\url{http://xindy.sourceforge.net/}) è ora incluso nella maggior parte
delle piattaforme.

Lo strumento \cmdname{kpsewhich} può ora riportare tutte le corrispondenze
per un dato file (opzione \optname{--all}) e limitarle ad una data sotto
directory (opzione \optname{--subdir}).

Il programma \cmdname{dvipdfmx} adesso include la funzionalità di estrarre
le informazioni sulla bounding box attraverso il comando
\cmdname{extractbb}; si tratta di una delle ultime funzionalità che
erano fornite da \cmdname{dvipdfm} ma non ancora incluse in
\cmdname{dvipdfmx}.

Gli alias dei font \filename{Times-Roman}, \filename{Helvetica} e così via
sono stati rimossi. Diversi pacchetti si aspettavano che funzionassero in
modo diverso (in particolare, che avessero codifiche differenti) e non
c'era un buon modo per risolvere questo problema.

Il formato \pkgname{platex} è stato rimosso per risolvere un conflitto di
nome con un completamente diverso \pkgname{platex} giapponese; il
pacchetto \pkgname{polski} contiene ora il principale supporto per la
lingua polacca.

Internamente, i file con le riserve di stringhe di \web{} sono compilati
dentro gli eseguibili, per semplificare gli aggiornamenti.

Infine, in questa edizione sono stati inclusi i cambiamenti fatti da
Donald Knuth nella sua ``messa a punto di \TeX\ del 2008''. Consultate
\url{https://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf}.


\subsubsection{2009}

Nell'edizione 2009, il formato di output predefinito di Lua\AllTeX\ è ora
il PDF per avvalersi del supporto OpenType di Lua\TeX, ecc. I nuovi
eseguibili chiamati \code{dviluatex} e \code{dvilualatex} eseguono
Lua\TeX{} con l'output in DVI. La pagina web di Lua\TeX{} è
\url{http://luatex.org}.

Il motore Omega e il formato Lambda originari sono stati rimossi dopo
averne discusso con gli autori di Omega. Restano le versioni aggiornate
Aleph e Lamed, così come le utilità di Omega.

È stata inclusa una nuova versione dei font AMS \TypeI, compreso il
Computer Modern: sono stati integrati alcuni cambiamenti nelle forme
fatti da Knuth nei sorgenti Metafont nel corso degli anni e
l'\emph{hinting} è stato aggiornato. I font Euler sono stati ridisegnati 
meticolosamente da Hermann Zapf (visitate
\url{https://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf}). In ogni
caso, le metriche non hanno subito modifiche. La pagina dei font AMS è
\url{https://ams.org/tex/amsfonts.html}.

Il nuovo editor \GUI{} \TeX{}works è incluso per Windows così come in
Mac\TeX. Per le altre piattaforme e per ulteriori informazioni, consultate
il sito di \TeX{}works, \url{https://tug.org/texworks}. Si tratta di un
programma multi piattaforma ispirato all'editor TeXShop per \MacOSX\ e che
ha come obiettivo la facilità d'uso.

Il programma per la grafica Asymptote è stato incluso per diverse
piattaforme. Esso implementa un linguaggio descrittivo per la grafica
basato su testo vagamente simile a MetaPost, ma con un supporto avanzato
al 3D ed altre caratteristiche. Il suo sito web è
\url{https://asymptote.sourceforge.io}.

Il programma \code{dvipdfm} è stato sostituito da \code{dvipdfmx}, che
opera in una speciale modalità di compatibilità quando viene invocato con
il primo nome. \code{dvipdfmx} include il supporto per CJK
(Chinese-Japanese-Korean, Cinese-Giapponese-Coreano) ed ha accumulato
molte correzioni negli anni trascorsi dall'ultima versione di
\code{dvipdfm}.

Gli eseguibili per le piattaforme \pkgname{cygwin} e
\pkgname{i386-netbsd} sono ora inclusi, mentre siamo stati avvisati che
gli utenti di OpenBSD ottengono \TeX\ tramite il loro sistema di
pacchetti, e in più c'erano difficoltà nel produrre eseguibili che
avessero una qualche possibilità di funzionare su più di una versione.

Una varietà di cambiamenti minori: adesso usiamo la compressione
\pkgname{xz}, il rimpiazzo stabile per \pkgname{lzma}
(\url{https://tukaani.org/xz/}); il carattere |$| è ammesso nei nomi dei
file quando non introduce il nome di variabile noto; la libreria Kpathsea
è ora multi-thread (lo sfrutta MetaPost); l'intera compilazione di
\TL{} è ora basata su Automake.%stopzone

Nota finale sul passato: tutte le edizioni di \TL{}, assieme al materiale
ausiliario come le etichette dei \CD, sono disponibili all'indirizzo
\url{ftp://tug.org/historic/systems/texlive}.


\subsubsection{2010}
\label{sec:2010news} % keep with 2010

Nell'edizione 2010, la versione predefinita per l'output PDF è ora la 1.5,
che consente una maggiore compressione. Questo si applica a tutti i motori
\TeX\ quando vengono usati per produrre PDF e a \code{dvipdfmx}. Caricando
il pacchetto \LaTeX\ \pkgname{pdf14} o impostando |\pdfminorversion=4|, si
si ritorna al PDF~1.4.

pdf\AllTeX\ ora converte \emph{automaticamente} un dato file di tipo 
Encapsulated
Postscript (EPS) in PDF tramite il pacchetto \pkgname{epstopdf}
quando e se viene caricato il file di configurazione per \LaTeX\
\code{graphics.cfg} e viene richiesto l'output in PDF. Le opzioni
predefinite sono tali da eliminare ogni possibilità che siano sovrascritti i
file PDF creati a mano, ma potete del tutto evitare che \code{epstopdf} sia
caricato mettendo |\newcommand{\DoNotLoadEpstopdf}{}| (o |\def...|) prima
della dichiarazione \cs{documentclass}. Non viene caricato neppure se viene
usato il pacchetto \pkgname{pst-pdf}. Per maggiori dettagli, consultate la
documentazione del pacchetto \pkgname{epstopdf}
(\url{https://ctan.org/pkg/epstopdf-pkg}).

Un cambiamento correlato è che adesso è abilitata per default l'esecuzione
di alcuni comandi esterni a \TeX, tramite la funzionalità \cs{write18}.
Questi comandi sono \code{repstopdf}, \code{makeindex}, \code{kpsewhich},
\code{bibtex} e \code{bibtex8}; la lista è definita in \code{texmf.cnf}. Gli
ambienti che devono disabilitare tutti questi comandi esterni possono
deselezionare questa opzione nell'installatore (consultate la
sezione~\ref{sec:options}), oppure rimpiazzare il valore dopo
l'installazione eseguendo |tlmgr conf texmf shell_escape 0|.

Ancora un altro cambiamento correlato è che ora \BibTeX\ e Makeindex si
rifiutano di scrivere il proprio output in una directory arbitraria (come lo
stesso \TeX) per default. In questo modo diventa ora possibile consentirne
l'uso tramite la funzionalità ristretta \cs{write18}. Per cambiare
questo, può essere impostata la variabile d'ambiente \envname{TEXMFOUTPUT}
oppure può essere modificata l'opzione |openout_any|.

\XeTeX\ ora supporta la crenatura al margine lungo le stesse righe come
pdf\TeX\ (l'espansione dei caratteri non è supportata al momento).

Per default, \prog{tlmgr} ora salva un backup di ciascun pacchetto
aggiornato (\code{tlmgr option autobackup 1}), così che gli aggiornamenti
con pacchetti danneggiati possano essere facilmente ripristinati con
\code{tlmgr restore}. Se eseguite aggiornamenti successivi all'installazione
e non avete spazio sul disco per i backup, eseguite \code{tlmgr option
autobackup 0}.

Nuovi programmi inclusi: il motore p\TeX\ e le utilità correlate per la
composizione in giapponese; il programma \BibTeX{}U per un \BibTeX\
compatibile con Unicode; l'utilità \prog{chktex}
(originariamente da \url{http://baruch.ev-en.org/proj/chktex}) per
controllare i documenti \AllTeX; il traduttore da DVI a SVG \prog{dvisvgm}
(\url{https://dvisvgm.de}).

Ora sono inclusi gli eseguibili per queste nuove piattaforme:
\code{amd64-freebsd}, \code{amd64-kfreebsd}, \code{i386-freebsd},
\code{i386-kfreebsd}, \code{x86\_64-darwin}, \code{x86\_64-solaris}.

Un cambiamento in \TL{} 2009 che ci siamo dimenticati di evidenziare: numerosi
eseguibili legati a \TeX4ht (\url{https://tug.org/tex4ht}) sono stati rimossi
dalle directory degli eseguibili. Il programma generico \code{mk4ht} può
essere usato per eseguire una qualunque tra le varie combinazioni di
\code{tex4ht}.

Infine, la versione di \TL{} sul \DVD\ \TK\ non può più essere eseguita
``live'' (curiosamente). Un singolo \DVD\ non ha più abbastanza spazio. Un
effetto collaterale positivo è che l'installazione da un \DVD\ fisico è ora
molto più rapida.

\subsubsection{2011}

Gli eseguibili per \MacOSX\ (\code{universal-darwin} e \code{x86\_64-darwin}
ora funzionano solo su Leopard e succesivi; Panther e Tiger non sono più
supportati.

Il programma \code{biber} per l'elaborazione delle bibliografie è incluso
per le piattaforme comuni. Il suo sviluppo è strettamente accoppiato con il
pacchetto \code{biblatex}, che reimplementa completamente l'infrastruttura
bibliografica fornita da LaTeX.

Il programma MetaPost (\code{mpost}) non crea né usa più i file \code{.mem}.
I file necessari, come \code{plain.mp}, sono semplicemente letti ad ogni
esecuzione. Questo è correlato al supporto di MetaPost come libreria, che è
un'altra modifica significativa, sebbene non visibile dall'utente.

L'implementazione di \code{updmap} in Perl, precedentemente usata solo su
Windows, è stata rimodernata ed è ora usata su tutte le piattaforme. Non
dovrebbe esserci alcun cambiamento visibile dall'utente, tranne che ora gira
molto più velocemente.

I programmi \cmdname{initex} e \cmdname{inimf} sono stati ripristinati
(ma non le altre varianti \cmdname{ini*}).

\subsubsection{2012}

\code{tlmgr} supporta gli aggiornamenti da archivi di rete multipli. La
sezione sugli archivi multipli nel messaggio di output di \code{tlmgr help} ha
ulteriori informazioni.

Il parametro \cs{XeTeXdashbreakstate} ha il valore predefinito di~1 sia per
\code{xetex} che per \code{xelatex}. Questo permette l'interruzione delle
linee dopo i trattini lunghi e medi, che è stato sempre il comportamento di
\TeX, \LaTeX, Lua\TeX, ecc. I documenti \XeTeX\ esistenti che devono
mantenere la perfetta compatibilità con le interruzioni di linee, devono
impostare \cs{XeTeXdashbreakstate} a~0 esplicitamente.

I file di output generati, tra gli altri, da \code{pdftex} e \code{dvips}
possono ora superare i 2 gigabyte.

I 35 font standard di PostScript sono ora inclusi nell'output di \code{dvips}
per default, dato che ne esistono così tante versioni differenti.

Nella modalità di esecuzione \cs{write18} ristretta, che è impostata per
default, \code{mpost} è diventato un programma consentito.

Un file \code{texmf.cnf} viene trovato anche in \filename{../texmf-local},
se esiste (ad esempio, \filename{/usr/local/texlive/texmf-local/web2c/texmf.cnf}).

Lo script \code{updmap} legge un file \code{updmap.cfg} in ciascuna directory
invece di una configurazione globale. Questo cambiamento dovrebbe essere 
trasparente per l'utente,
a meno che non abbiate modificato il vostro updmap.cfg direttamente. Il messaggio
mostrato da \verb|updmap --help| dà ulteriori informazioni.

Piattaforme: aggiunte \pkgname{armel-linux} e \pkgname{mipsel-linux};
\pkgname{sparc-linux} e \pkgname{i386-netbsd} non fanno più parte della
distribuzione principale.

\subsubsection{2013}

Struttura della distribuzione: per semplicità, la directory \code{texmf/} è stata
fusa all'interno di \code{texmf-dist}. Entrambe le variabili
di Kpathsea \code{TEXMFMAIN} e \code{TEXMFDIST} adesso puntano a
\code{texmf-dist}.

Molte piccole collezioni di lingue sono state fuse insieme, per
semplificare l'instllazione.

\MP: sono stati aggiunti il supporto nativo per l'output in PNG e per
i numeri in virgola mobile (\em{double} secondo lo standard IEEE 754).

Lua\TeX: aggiornato a Lua 5.2 e include una nuova libreria
(\code{pdfscanner}) per processare il contenuto di pagine PDF esterne,
tra le altre cose (visitate il suo sito).

\XeTeX\ (anche in questo caso, visitate il sito per altri dettagli):
\begin{itemize*}
\item Ora, per il layout dei font, è usata la libreria HarfBuzz al posto di
ICU (ICU è ancora usata per la codifica dell'input, la bidirezionalità
e interruzione di riga Unicode opzionale).
\item Graphite2 e HarfBuzz sono usate al posto di SilGraphite per il
layout di Graphite.
\item Sul Mac, Core Text è usato al posto del deprecato ATSUI.
\item Preferisce i font TrueType/OpenType ai Type1 quando i nomi sono
gli stessi.
\item Corregge le occasionali discrepanze tra \XeTeX\ e \code{xdvipdfmx}
nella ricerca dei font.
\item Supporta i cut-in per i font OpenType Math.
\end{itemize*}

\cmdname{xdvi}: ora usa FreeType al posto di \code{t1lib} per il
rendering.

\pkgname{microtype.sty}: un qualche supporto per \XeTeX\ (protrusione)
e Lua\TeX\ (protrusione, espansione dei font, tracking), tra i vari
miglioramenti.

\cmdname{tlmgr}: nuova azione di \emph{affissione} (\code{pinning}) per
facilitare la configurazione di repository multipli; la relativa sezione
in \verb|tlmgr --help|, visibile online su
\url{https://tug.org/texlive/doc/tlmgr.html#MULTIPLE-REPOSITORIES},
ne parla più approfonditamente.

Piattaforme: \pkgname{armhf-linux}, \pkgname{mips-irix},
\pkgname{i386-netbsd} e \pkgname{amd64-netbsd} aggiunte o ripristinate;
\pkgname{powerpc-aix} rimossa.

\subsubsection{2014}

Il 2014 ha visto un altro aggiustamento a \TeX\ da parte di Knuth; questo ha
riguardato tutti i motori, ma l'unico cambiamento visibile è probabilmente il
ripristino della stringa \code{preloaded format} nella linea di
intestazione. Dal punto di vista di Knuth, questo ora riflette il formato che
\emph{dovrebbe} essere caricato di default, piuttosto che un formato 
incorporato nell'eseguibile; può essere sostituito in vari modi.

pdf\TeX: nuovo parametro per la soppressione dei warning
\cs{pdfsuppresswarningpagegroup}; nuove primitive per falsi spazi tra
parole per facilitare la ridisposizione del testo PDF:
\cs{pdfinterwordspaceon}, \cs{pdfinterwordspaceoff}, \cs{pdffakespace}.

Lua\TeX: sono stati fatti notevoli cambiamenti e correzioni al caricamento dei
font e alla sillabazione. L'aggiunta più grande è una nuova variante del
motore, \code{luajittex} e i suoi fratelli \code{texluajit} e
\code{texluajitc}. Questo motore usa un compilatore Lua
just-in-time (articolo \textsl{TUGboat} dettagliato su
\url{https://tug.org/TUGboat/tb34-1/tb106scarso.pdf}). \code{luajittex} è
ancora in fase di sviluppo, non è disponibile su tutte le piattaforme ed è
notevolmente meno stabile di \code{luatex}. Né noi né i suoi sviluppatori
lo raccomandano eccetto che per lo scopo di sperimentare la
compilazione jit del codice Lua.

\XeTeX: gli stessi formati di immagini sono ora supportati su tutte le
piattaforme (incluso il Mac); evita il fallback di decomposizione di
compatibilità di Unicode (ma non altre varianti); preferisce i font
OpenType ai Graphite, per compatibilità con le versioni precedenti di
\XeTeX.

\MP: un nuovo sistema di numerazione \code{decimal} è supportato, insieme
ad uno che lo accompagna, \code{numberprecision}, ad uso interno; una nuova
definizione di \code{drawdot} in \filename{plain.mp}, secondo Knuth;
correzioni di bug nell'output in SVG e PNG, tra le altre
cose.

L'utilità Con\TeX{}t \cmdname{pstopdf} sarà rimossa come comando a sé
stante ad un certo punto dopo questa versione, a causa dei conflitti con
le utilità del sistema operativo con lo stesso nome. Può essere ancora (e
tuttora) invocato con \code{mtxrun --script pstopdf}.

\cmdname{psutils} è stato notevolmente revisionato da un nuovo
manutentore. Come risultato, molte utilità usate raramente (\code{fix*},
\code{getafm}, \code{psmerge}, \code{showchar}) ora si trovano solo nella
directory \dirname{scripts/} invece che essere eseguibili accessibili
direttamente (si può tornare indietro, se si rivela problematico). Un
nuovo script, \code{psjoin}, è stato aggiunto.

La distribuzione Mac\TeX\ di \TeX\ Live (sezione~\ref{sec:macosx}) non
include più i pacchetti opzionali solo per Mac dei font Latin Modern e
\TeX\ Gyre, dato che è abbastanza semplice per i singoli utenti renderli
disponibili al sistema. Anche il programma \cmdname{convert} da ImageMagick
è stato rimosso, dato che \TeX4ht (nello specifico \code{tex4ht.env}) ora
usa Ghostscript direttamente.

La collezione \pkgname{langcjk} per il supporto al cinese, giapponese e
coreano è stata suddivisa in collezioni per le singole lingue per avere
dimensioni più piccole.

Piattaforme: \pkgname{x86\_64-cygwin} aggiunta, \pkgname{mips-irix}
rimossa; Microsoft ha cessato il supporto di Windows XP, quindi i
nostri programmi potrebbero iniziare a funzionare male su quel sistema in
qualunque momento.


\subsubsection{2015}

\LaTeXe\ ora incorpora, per default, i cambiamenti precedentemente inclusi
solo caricando esplicitamente il pacchetto \pkgname{fixltx2e}, che ora non
fa nulla. Un nuovo pacchetto \pkgname{latexrelease} ed altri meccanismi
permettono di controllare ciò che viene fatto. I documenti inclusi \LaTeX\
News \#22 e ``\LaTeX\ changes'' contengono i dettagli. Incidentalmente, i
pacchetti \pkgname{babel} e \pkgname{psnfss}, nonostante siano parti
centrali di \LaTeX, sono mantenuti separatamente e non sono toccati da
questi cambiamenti (e dovrebbero ancora funzionare).

Internamente, \LaTeXe\ ora include una configurazione del motore relativa
a Unicode (quali caratteri sono lettere, nome delle primitive, ecc.) che
prima era parte di \TeX\ Live. Questo cambiamento dovrebbe essere
trasparente per gli utenti; alcune sequenze di controllo interne di basso
livello sono state
rinominate o rimosse, ma il comportamento dovrebbe essere lo stesso.

pdf\TeX: supporto per gli Exif nei JPEG e per i JFIF; non
emette più un warning se \cs{pdfinclusionerrorlevel} è negativo;
sincronizzazione con \prog{xpdf}~3.04.

Lua\TeX: nuova libreria \pkgname{newtokenlib} per la scansione dei token;
correzione di errori nel generatore di numeri casuali \code{normal} e in
altri punti.

\XeTeX: corretta la gestione delle immagini; l'eseguibile \prog{xdvipdfmx}
viene cercato per primo, come gemello di \prog{xetex}; cambiati gli opcode 
interni
\code{XDV}.

MetaPost: nuovo sistema di numerazione \code{binary}; nuovi programmi per
il giapponese \prog{upmpost} e \prog{updvitomp}, analogamente a
\prog{up*tex}.

Mac\TeX:\ aggiornamenti al pacchetto Ghostscript per il supporto a
CJK. Il Pannello delle Preferenze della Distribuzione \TeX\ ora
funziona in Yosemite (\MacOSX~10.10). I resource fork dei font (di solito
senza un'estensione) non sono più supportati da \XeTeX; i data fork
(\code{.dfont}) restano supportati.

Infrastruttura: lo script \prog{fmtutil} è stato reimplementato per
leggere i \filename{fmtutil.cnf} rispettando le gerarchie delle directory, 
analogamente a
\prog{updmap}. Gli script Web2c \prog{mktex*} (inclusi \prog{mktexlsr},
\prog{mktextfm}, \prog{mktexpk}) ora preferiscono i programmi nelle loro
directory, invece di usare sempre il \envname{PATH} esistente.

Piattaforme: \pkgname{*-kfreebsd} rimossa, dato che \TeX\ Live è ora
facilmente disponibile tramite il meccanismo di piattaforma del sistema.
Il supporto per alcune piattaforme aggiuntive è disponibile come
eseguibili personalizzati (\url{https://tug.org/texlive/custom-bin.html}).
In più, alcune piattaforme adesso sono omesse dal \DVD\ (semplicemente per
risparmiare spazio), ma possono essere installate normalmente via
internet.

% 
\subsubsection{2016}

Lua\TeX: cambiamenti radicali alle primitive, che sono state sia
rinominate che rimosse, assieme ad alcune riorganizzazioni della
struttura dei nodi. Questi cambiamenti sono ricapitolati in un articolo
di Hans Hagen, ``Lua\TeX\ 0.90 backend changes for PDF and more''
(\url{https://tug.org/TUGboat/tb37-1/tb115hagen-pdf.pdf}); per tutti
i dettagli, consultate il manuale di Lua\TeX,
\OnCD{texmf-dist/doc/luatex/base/luatex.pdf}.

Metafont: nuovi programmi fratelli altamente sperimentali MFlua e
MFluajit che integrano Lua con \MF, per scopi di test.

MetaPost: correzione di bug e preparazioni interne per MetaPost 2.0.

pdf\TeX: nuove primitive \cs{pdfinfoomitdate}, \cs{pdftrailerid},
\cs{pdfsuppressptexinfo}, per controllare quei valori che appaiono
nell'output e che normalmente cambiano ad ogni esecuzione. Queste
funzionalità sono solo per l'output in PDF, non per il DVI.

Xe\TeX: nuove primitive \cs{XeTeXhypenatablelength},
\cs{XeTeXgenerateactualtext},\\ \cs{XeTeXinterwordspaceshaping},
\cs{mdfivesum}; limite delle classi di caratteri innalzato a 4096;
incremetati i byte di id nel DVI.

Altri strumenti:
\begin{itemize*}
\item \code{gregorio} è un nuovo programma che fa parte del pacchetto
\code{gregoriotex} per impaginare le partiture di canto gregoriano; è
incluso di default in \code{shell\_escape\_commads}.

\item \code{upmendex} è un programma di creazione dell'indice, quasi
del tutto compatibile con \code{makeindex}, con il supporto tra le
altre cose per l'ordinamento basato sull'Unicode.

\item \code{afm2tfm} ora esegue solo aggiustamenti dell'altezza basati
sull'accento verso l'alto; una nuova opzione \code{-a} tralascia tutti
gli aggiustamenti.

\item \code{ps2pk} può gestire i font PK/GF estesi.
\end{itemize*}

Mac\TeX:\ il pannello \TeX\ Distribution Preference è stato rimosso; le
sue funzionalità ora si trovano nella \TeX\ Live Utility; aggiornate le
applicazioni grafiche a corredo; il nuovo script \code{cjk-gs-integrate}
deve essere eseguito dagli utenti che vogliono incorporare i font CJK in
Ghostscript.

Infrastruttura: supporto per il file di configurazione di \code{tlmgr}
a livello di sistema; verifica delle checksum dei pacchetti; se GPG è
disponibile, verifica la firma degli aggiornamenti di rete. Queste
verifiche avvengono sia nell'installatore che in \code{tlmgr}. Se
GPG non è disponibile, gli aggiornamenti avvengono come di consueto.

Piattaforme: rimosse \code{alpha-linux} e \code{mipsel-linux}.


\subsubsection{2017}

Lua\TeX: più callback, più controllo per la composizione tipografica, più 
accesso
ai dati inteni; libreria \code{ffi} per il caricamento dinamico del
codice in alcune piattaforme.

pdf\TeX: variabile d'ambiente |SOURCE_DATE_EPOCH_TEX_PRIMITIVES|
dell'anno precedente rinominata |FORCE_SOURCE_DATE|, con nessuna modifica
alle funzionalità; se la lista di token \cs{pdfpageattr} contiene la
stringa \code{/MediaBox}, omette l'output del \code{/MediaBox} predefinito.

Xe\TeX: font Unicode/OpenType Math ora basati sulla tabella di supporto
MATH di HarfBuzz; correzione di alcuni bug.

%CM non so come tradurre "special" in questo contesto, ma non penso sia "speciale"
%MP il dizionario https://www.wordreference.com/enit/special ha come
% possibile traduzione di "special", "offerta", "offerta speciale"; penso
% qui "special" possa avere un significato del genere, ma in italiano
% suona un po' male, quindi ho liberamente sostituito "offerta" con
% "proposta"
Dvips: fa sì che l'ultima proposta di dimensione carta vinca, per
coerenza con \code{dvipdfmx} e con le attese dei pacchetti; l'opzione
\code{-L0} (impostazione di configurazione \code{L0}) ripristina il
comportamento precedente in cui vince la prima proposta di dimensione.

ep\TeX, eup\TeX: nuove primitive \cs{pdfuniformdeviate},
\cs{pdfnormaldeviate}, \cs{pdfrandomseed}, \cs{pdfsetrandomseed},
\cs{pdfelapsedtime}, \cs{pdfresettimer}, da pdf\TeX.

Mac\TeX:\ a partire da quest'anno, solo le versioni di \MacOSX\ per
cui Apple ancora rilascia aggiornamenti di sicurezza saranno supportate
in Mac\TeX, sotto il nome di piattaforma |x86_64-darwin|; attualmente
ciò significa Yosemite, El~Capitan e Sierra (10.10 e successivi). Gli
eseguibili per le versioni precedenti di \MacOSX\ non sono incluse in
Mac\TeX, ma sono ancora disponibili in \TeX\ Live (|x86_64-darwinlegacy|,
\code{i386-darwin}, \code{powerpc-darwin}).

Infrastruttura: la directory \envname{TEXMFLOCAL} viene ora esplorata prima
di \envname{TEXMFSYSCONFIG} e \envname{TEXMFSYSVAR} (di default); la
speranza è che questo corrisponda meglio alle attese dei file locali che
sostituiscono quelli di sistema. Inoltre, \code{tlmgr} ha una nuova
modalità \code{shell} per l'uso interattivo e in script e una nuova
azione \code{conf auxtrees} per aggiungere e rimovere con facilità
ulteriori directory.

\code{updmap} e \code{fmtutil}: questi script ora avvisano quando sono
chiamati senza specificare esplicitamente la cosiddetta modalità di
sistema (\code{updmap-sys}, \code{fmtutil-sys} o l'opzione \code{-sys}),
o la modalità utente (\code{updmap-user}, \code{fmtutil-user} o
l'opzione \code{-user}).
La speranza è che questo riduca il costante problema di invocare la
modalità utente per sbaglio e quindi perdere i futuri aggiornamenti di
sistema. Consultate
\url{https://tug.org/texlive/scripts-sys-user.html} per i dettagli.

\code{install-tl}: i percorsi personali come \envname{TEXMFHOME} su Mac sono
ora impostati di default agli stessi valori di Mac\TeX\ (|~/Library/...|).
Nuova opzione \code{-init-from-profile} per iniziare un'installazione con i
valori da un dato profilo; nuovo comando \code{P} per salvare esplicitamente un
profilo; nuovi nomi di variabili di profilo (ma i precedenti sono ancora
accettati).

Sync\TeX: il nome del file temporaneo ora somiglia a 
\code{foo.synctex(busy)} e non a \code{foo.synctex.gz(busy)}
(niente~\code{.gz}). Le applicazioni e i sistemi di compilazione che
vogliono rimuovere i file temporanei potrebbero richiedere un adattamento.

Altri strumenti: \code{texosquery-jre8} è un nuovo programma
multi-piattaforma per recuperare alcune informazioni di ambiente e del
sistema operativo da un documento \TeX; di default è incluso in
|shell_escape_command| per essere eseguito in modalità ristretta (versioni
precedenti della JRE sono supportate da texosquery, ma non possono essere
attivate in modalità ristretta perché non sono più supportate da Oracle,
neppure per gli aggiornamenti di sicurezza).

Piattaforme: consultate il paragrafo su Mac\TeX\ qui sopra; nessun altro
cambiamento.


\subsection{2018}

Kpathsea: la ricerca di file nelle directory non di sistema è ora per default
insensibile alle maiuscole; per disattivare questo comportamento, impostate il
parametro \code{texmf\_casefold\_search} a~\code{0} in \code{texmf.cnf} o nella
variabile d'ambiente. Tutti i dettagli nel manuale di Kpathsea
(\url{https://tug.org/kpathsea}).

ep\TeX, eup\TeX: nuova primitiva \cs{epTeXversion}.

Lua\TeX: preparazione per migrare a Lua 5.3 nel 2019: un eseguibile
\code{luatex53} è disponibile nella maggior parte delle piattaforme, ma deve
essere rinominato in \code{luatex} per funzionare. Altrimenti usate i file di
\ConTeXt\ Garden (\url{https://wiki.contextgarden.net}); visitate il sito per
maggiori informazioni.

MetaPost: correzioni per direzioni di path sbagliate,  per output di TFM e di PNG.

pdf\TeX: consente i vettori di codifica per i font bitmap; la directory attuale
non è usata per generare l'ID del PDF; fix di bug per \cs{pdfprimitive} e
correlati.

Xe\TeX: supporto per \code{/Rotate} nell'inclusione di immagini nel PDF;
termina con un codice di uscita diverso da zero se il driver in uscita
fallisce; varie correzioni a primitive per UTF-8 e altro.

Mac\TeX:\ consultate qui sotto i cambiante sul supporto alle versioni. Oltre a
questo, i file installati in \code{/Applications/TeX/} da Mac\TeX\ sono stati
riorganizzati per maggiore chiarezza; ora questa directory contiene quattro
programmi grafici (BibDesk, LaTeXiT, \TeX\ Live Utility e TeXShop) e ha varie
sottodirectory con utility e documentazione aggiuntive.

\code{tlmgr}: nuove interfacce grafiche \code{tlshell} (Tcl/Tk) e
\code{tlcockpit} (Java); output in JSON; \code{uninstall} è ora un sinonimo
di \code{remove}; nuova azione/opzione \code{print-platform-info}.

Piattaforme:
\begin{itemize*}
\item
Rimosse: \code{armel-linux}, \code{powerpc-linux}.

\item \code{x86\_64-darwin} supporta le versioni 10.10--10.13
(Yosemite, El~Capitan, Sierra e High~Sierra).

\item \code{x86\_64-darwinlegacy} supporta le versioni 10.6--10.10 (sebbene
\code{x86\_64-darwin} sia preferito per la 10.10). Tutto il supporto per la
versione 10.5 (Leopard) è andato via, nel senso che sia \code{powerpc-darwin}
che \code{i386-darwin platforms} sono stati rimossi.

\item Windows: XP non è più supportato.
\end{itemize*}


\subsection{2019}

Kpathsea: suddivisione dei path ed espansione delle graffe più consistenti;
nuova variabile \code{TEXMFDOTDIR} al posto del \code{.}\ esplicito nei path
consente di cercare più facilmente in sotto directory aggiuntive (consultate
i commenti in \code{texmf.cnf}).

ep\TeX, eup\TeX: nuove primitive \cs{readpapersizespecial} e \cs{expanded}.

Lua\TeX: adesso si usa Lua 5.3, con i concomitanti cambiamenti all'aritmetica
e all'interfaccia. La libreria pplib fatta in casa è usata per leggere i file
pdf, così eliminando la dipendenza da poppler (e la necessità del C++);
l'interfaccia Lua è cambiata di conseguenza.

MetaPost: il nome del comando \code{r-mpost} è riconosciuto come un alias
per l'invocazione con l'opzione \code{--restricted} ed è stato aggiunto alla
lista dei comandi riservati disponibili di default.
La precisione minima ora è di 2 per la modalità binaria e decimale.
La modalità binaria non è più disponibile in MPlib ma è ancora disponibile
nel MetaPost a sé stante.

pdf\TeX: nuova primitiva \cs{expanded}; se il nuovo parametro primitivo
\cs{pdfomitcharset} è impostato a 1, la stringa \code{/CharSet} è omessa
dall'output PDF, dato che non può essere garantita corretta in modo fattibile,
come richiesto da PDF/A-2 e PDF/A-3.

Xe\TeX: nuove primitive \cs{expanded},
\cs{creationdate},
\cs{elapsedtime},
\cs{filedump}, 
\cs{filemoddate}, 
\cs{filesize}, 
\cs{resettimer}, 
\cs{normaldeviate}, 
\cs{uniformdeviate}, 
\cs{randomseed}; esteso \cs{Ucharcat} per produrre i caratteri attivi.

\code{tlmgr}: supporto per \code{curl} come programma di download; uso di
  \code{lz4} e gzip prima di \code{xz} per i backup locali, se disponibile;
  preferisce i binari forniti dal sistema a quelli forniti da \TL\ per i
  programmi di compressione e download, a meno che la variabile d'ambiente
  \code{TEXLIVE\_PREFER\_OWN} è impostata.

\code{install-tl}: la nuova opzione \code{-gui} (senza argomenti) è predefinita
su Windows e Macs e lancia una nuova GUI in Tcl/Tk (vedi le
sezioni~\ref{sec:basic} e~\ref{sec:graphical-inst}).

Utilità:
\begin{itemize*}
\item \code{cwebbin} (\url{https://ctan.org/pkg/cwebbin}) è ora l'implementazione
di CWEB in \TeX\ Live, con il supporto per più dialetti di lingue e l'inclusione
del programma \code{ctwill} per creare mini-indici.

\item \code{chkdvifont}: riporta le informazioni sui font dai file \dvi{} e
anche da tfm/ofm, vf, gf, pk.

\item \code{dvispc}: rende un file DVI indipendente dalla pagina rispetto agli
specials.
\end{itemize*}

Mac\TeX:\ \code{x86\_64-darwin} ora supporta la versione 10.12 e successive
(Sierra, High Sierra, Mojave); \code{x86\_86-darwinlegacy} supporta ancora
la versione 10.6 e successive. Il controllore ortografico Excalibur non è
più incluso in quanto richiede il supporto a 32 bit.

Piattaforme: rimossa \code{sparc-solaris}.


\subsubsection{2020}

Generale: \begin{itemize}
\item La primitiva \cs{input} in tutti i motori \TeX, incluso \texttt{tex},
ora accetta anche come argomento un nome di file delimitato da gruppo, come
estensione dipendente dal sistema. L'uso con il solito filename delimitato da
spazi/token non è cambiato. L'argomento delimitato da gruppo era implementato
precedentemente in Lua\TeX; ora è disponibile per tutti i motori. I caratteri
ASCII dei doppi apici (\texttt{"}) sono rimossi dal nome del file, ma oltre
questo resta invariato dopo la divisione in token. Questo non riguarda
attualmente il comando \cs{input} di \LaTeX\ in quanto è una ridefinizione
macro della primitiva standard \cs{input}.

\item Nuova opzione \texttt{--cnf-lline} per \texttt{kpsewhich}, \texttt{tex},
\texttt{mf} e tutti gli altri motori per supportare impostazioni di
configurazione arbitrarie sulla riga di comando.

\item L'aggiunta delle varie primitive ai diversi motori in questo e nei
precedenti anni è pensata per concludersi con un insieme comune di funzionlità
disponibili tra tutti i motori (\textsl{\LaTeX\ News \#31},
\url{https://latex-project.org/news}).

\end{itemize}

ep\TeX, eup\TeX: nuove primitive \cs{Uchar}, \cs{Ucharcat},
\cs{current(x)spacingmode}, \cs{ifincsname}; rivedere \cs{fontchar??} e
\cs{iffontchar}. Per il solo eup\TeX: \cs{currentcjktoken}.

Lua\TeX: integrazione con la libreria HarfBuzz disponibile come nuovo motore
\texttt{luahbtex} (usato per \texttt{lualatex}) e \texttt{luajithbtex}. Nuove
primitive: \cs{eTeXgluestretchorder}, \cs{eTeXglueshrinkorder}.

pdf\TeX: nuova primitiva \cs{pdfmajorversion}; questa semplicemente cambia il
numero di versione del PDF prodotto; non ha effetto su alcun contenuto del
PDF. \cs{pdfximage} e simili ora cercano i file di immagine nello stesso modo
di \cs{openin}.

p\TeX: nuove primitive \cs{ifjfont}, \cs{iftfont}. Anche in ep\TeX, up\TeX,
eup\TeX.

Xe\TeX: correzioni per \cs{Umathchardef}, \cs{XeTeXinterchartoks},
\cs{pdfsavepos}.

Dvips: codifiche in uscita per i font bitmap, per migliori capacità di
copia/incolla
(\url{https://tug.org/TUGboat/tb40-2/tb125rokicki-type3search.pdf}).

Mac\TeX:\ Mac\TeX\ e \texttt{x86\_64-darwin} ora richiedono la 10.13 o
successive (High~Sierra, Mojave e Catalina); \texttt{x86\_64-darwinlegacy}
supporta la 10.6 e successive. Mac\TeX\ è certificato e i programmi a riga di
comando hanno runtime irrobustiti come richiesto ora da Apple per i pacchetti
di installazione. BibDesk e \TeX\ Live Utility non fanno parte di Mac\TeX\
perché non sono certificati, ma un file \filename{README} elenca gli indirizzi
da dove possono essere ottenuti.

\code{tlmgr} e infrastruttura: \begin{itemize*}
\item prova di nuovo automaticamente (una sola volta) i pacchetti il cui
download è fallito;
\item nuova opzione \texttt{tlmgr check texmfdbs} per verificare la
consistenza dei file \texttt{ls-R} e delle specifiche \texttt{!!} in ogni
sotto directory;
\item usa nomi di file versionati per i container dei pacchetti, come in
\texttt{tlnet/archive/\textsl{pkgname}.rNNN.tar.xz}; dovrebbe essere
invisibile agli utenti, ma è un'importante cambiamento nella distribuzione;
\item le informazioni \texttt{catalogue-date} non sono più propagate dal
\TeX~Catalogue, dato che erano spesso non collegate agli aggiornamenti dei
pacchetti.
\end{itemize*}


\htmlanchor{news}
\subsection{Presente: 2021}
\label{sec:tlcurrent}

Generale: \begin{itemize}
\item Sono incorporati i cambiamenti di Donald Knuth per la sua sistematina
del 2021 a \TeX\ e Metafont
(\url{https://tug.org/TUGboat/tb42-1/tb130knuth-tuneup21.pdf}). Sono anche
disponibili su CTAN sotto forma dei pacchetti \code{knuth-dist} e
\code{knuth-local}. Come atteso, i fix sono per casi oscuri e non riguardano
nessun comportamento pratico.

\item Tranne che nel \TeX\ originale: se \cs{tracinglostchars} è impostato a
3 o più, i caratteri mancati daranno origine ad un errore, non semplicemente
ad un messaggio nel file di log e il codice del carattere mancante sarà
mostrato in esadecimale.

\item Tranne che nel \TeX\ originale: un nuovo parametro intero
\cs{tracingstacklevels} che se positivo, e \cs{tracingmacros} è anch'esso
positivo, provoca l'aggiunta di un prefisso che indica la profondità di
espansione della macro all'output nella relativa riga di log (per esempio,
|~..| a profondità 2). Inoltre il log delle macro è troncato alla profondità
$\ge$ del valore del parametro

\end{itemize}

Aleph: il formato \LaTeX\ basato su Aleph, chiamato \code{lamed}, è stato
rimosso. L'eseguibile \code{aleph} stesso è ancora incluso e supportato.

Lua\TeX: \begin{itemize*}
\item Lua 5.3.6.
\item Callback per il livello di annidamento usata in \cs{tracingmacros},
come variante generalizzata del nuovo \cs{tracingstacklevels}.
\item Glifi matematici marchiati come protetti per evitare l'elaborazione
come testo.
\item Rimossa la compensazione larghezza/ic per il codice matematico
tradizionale.
\end{itemize*}

MetaPost: \begin{itemize*}
\item Suppporto alla variabile d'ambiente |SOURCE_DATE_EPOCH| per output
riproducibile.
\item Evitato il \texttt{\%} finale errato in \texttt{mpto}.
\item Documentata l'opzione \texttt{-T}, altre correzioni al manuale.
\item Valore di \texttt{epsilon} cambiato in modalità binaria e decimale,
così che |mp_solve_rising_cubic| funzioni come atteso.
\end{itemize*}

pdf\TeX{}: \begin{itemize*}
\item Nuove primitive \cs{pdfrunninglinkoff} e
\cs{pdfrunninglinkon}; ad esempio, per disattivare la generazione dei link
in intestazioni e pié di pagina.
\item Avverte invece di uscire con l'errore ``\cs{pdfendlink} ended up in
different nesting level than \cs{pdfstartlink}''.
\item Stampa le assegnazioni di \cs{pdfglyphtounicode} nel file \texttt{fmt}.
\item Sorgenti: supporto a \texttt{poppler} rimosso in quanto troppo
difficile mantenerlo sincronizzato con la linea di sviluppo. In TL nativa,
pdf\TeX\ ha sempre usato \texttt{libs/xpdf}, che è un codice ridotto e
adattato da \texttt{xpdf}.
\end{itemize*}

Xe\TeX{}: correzioni per il kerning matematico.

Dvipdfmx: \begin{itemize*}
\item Ghostscript è ora invocato in modalità sicura per default; per annullare
    (assumendo che tutti i file di input siano fidati), usate
    \verb|-i dvipdfmx-unsafe.cfg|. Questo è richiesto per usare PSTricks con
    \XeTeX, come in:
    \verb|xetex -output-driver="xdvipdfmx -i dvipdfmx-unsafe.cfg -q -E" ...|
\item Se il file di un'immagine non è trovato, esce con stato di errore.
\item Sintassi special estesa per il supporto dei colori.
\item Special per la manipolazione di |ExtGState|.
\item Special di compatibilità \code{pdfcolorstack} e \code{pdffontattr}.
\item Supporto sperimentale per |fnt_def| esteso di \code{dviluatex}.
\item Supporto per nuova funzionlità dei font virtuali per ripiego nella
definizione di font giapponesi.
\end{itemize*}

Dvips: \begin{itemize*}
\item Il titolo di default del documento PostScript è ora il nome base del
file di input e può essere sostituito tramite la nuova opzione \texttt{-title}.
\item Se un \texttt{.eps} o un altro file di immagine non è trovato, esce
con stato di errore.
\item Supporto per nuova funzionlità dei font virtuali per ripiego nella
definizione di font giapponesi.
\end{itemize*}

Mac\TeX{}: Mac\TeX{} e la sua nuova directory degli eseguibili
\texttt{universal-darwin} ora richiede macOS 10.14 o successivi (Mojave, Catalina
e Big~Sur); la directory degli eseguibili |x86_64-darwin| non è più presente.
La directory |x86_64-darwinlegacy|, disponibile solo nel \texttt{install-tl} per
Unix, supporta le versioni 10.6 e successive.

Questo è un anno importante per il Macintosh perché Apple ha introdotto a
novembre le macchine con processore ARM e venderà e supporterà sia macchine ARM
che Intel per svariati anni. Tutti i programmi in \texttt{universal-darwin} hano
codice eseguibile sia per ARM che per Intel. Entrambi i binari sono compilati
dallo stesso sorgente.

I programmi aggiuntivi Ghostscript, LateXiT, \TeX{} Live Utility e TeXShop sono
tutti universali e sono firmati con un runtime indurito, quindi sono tutti
inclusi in Mac\TeX{} quest'anno.

\code{tlmgr} e infrastruttura: \begin{itemize*}
\item mantenuto un solo backup del \texttt{texlive.tlpdb} del repository principale.
\item maggiore portabilità tra sistemi e versioni di Perl.
\item \texttt{tlmgr -info} mostra i nuovi campi \texttt{lcat-*} e \texttt{rcat-*}
per i dati del Catalogo locali vs. remoti.
\item il log completo dei sottocomandi è stato spostato nel nuovo file di log
\texttt{texmf-var/web2c/tllmgr-commands.log}.
\end{itemize*}


\subsection{Futuro}

Abbiamo intenzione di continuare a rilasciare nuove versioni di \TL\ e vorremmo
fornire più documentazione, più programmi e un insieme sempre migliore e meglio
controllato di font, di macro e di tutto quanto legato a \TeX. Questo lavoro è
fatto completamente da volontari nel loro tempo libero e quindi c'è sempre
molto da fare. Visitate il sito \url{https://tug.org/texlive/contribute.html}.

Potete inviare correzioni, suggerimenti e offerte d'aiuto a:
\begin{quote}
\email{tex-live@tug.org} \\
\url{https://tug.org/texlive}
\end{quote}

\medskip
\noindent \textsl{Buon lavoro con \TeX!}

\end{document}