This file is indexed.

/usr/share/vim/vim73/doc/version6.txt is in vim-runtime 2:7.3.429-2ubuntu2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

    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
 4250
 4251
 4252
 4253
 4254
 4255
 4256
 4257
 4258
 4259
 4260
 4261
 4262
 4263
 4264
 4265
 4266
 4267
 4268
 4269
 4270
 4271
 4272
 4273
 4274
 4275
 4276
 4277
 4278
 4279
 4280
 4281
 4282
 4283
 4284
 4285
 4286
 4287
 4288
 4289
 4290
 4291
 4292
 4293
 4294
 4295
 4296
 4297
 4298
 4299
 4300
 4301
 4302
 4303
 4304
 4305
 4306
 4307
 4308
 4309
 4310
 4311
 4312
 4313
 4314
 4315
 4316
 4317
 4318
 4319
 4320
 4321
 4322
 4323
 4324
 4325
 4326
 4327
 4328
 4329
 4330
 4331
 4332
 4333
 4334
 4335
 4336
 4337
 4338
 4339
 4340
 4341
 4342
 4343
 4344
 4345
 4346
 4347
 4348
 4349
 4350
 4351
 4352
 4353
 4354
 4355
 4356
 4357
 4358
 4359
 4360
 4361
 4362
 4363
 4364
 4365
 4366
 4367
 4368
 4369
 4370
 4371
 4372
 4373
 4374
 4375
 4376
 4377
 4378
 4379
 4380
 4381
 4382
 4383
 4384
 4385
 4386
 4387
 4388
 4389
 4390
 4391
 4392
 4393
 4394
 4395
 4396
 4397
 4398
 4399
 4400
 4401
 4402
 4403
 4404
 4405
 4406
 4407
 4408
 4409
 4410
 4411
 4412
 4413
 4414
 4415
 4416
 4417
 4418
 4419
 4420
 4421
 4422
 4423
 4424
 4425
 4426
 4427
 4428
 4429
 4430
 4431
 4432
 4433
 4434
 4435
 4436
 4437
 4438
 4439
 4440
 4441
 4442
 4443
 4444
 4445
 4446
 4447
 4448
 4449
 4450
 4451
 4452
 4453
 4454
 4455
 4456
 4457
 4458
 4459
 4460
 4461
 4462
 4463
 4464
 4465
 4466
 4467
 4468
 4469
 4470
 4471
 4472
 4473
 4474
 4475
 4476
 4477
 4478
 4479
 4480
 4481
 4482
 4483
 4484
 4485
 4486
 4487
 4488
 4489
 4490
 4491
 4492
 4493
 4494
 4495
 4496
 4497
 4498
 4499
 4500
 4501
 4502
 4503
 4504
 4505
 4506
 4507
 4508
 4509
 4510
 4511
 4512
 4513
 4514
 4515
 4516
 4517
 4518
 4519
 4520
 4521
 4522
 4523
 4524
 4525
 4526
 4527
 4528
 4529
 4530
 4531
 4532
 4533
 4534
 4535
 4536
 4537
 4538
 4539
 4540
 4541
 4542
 4543
 4544
 4545
 4546
 4547
 4548
 4549
 4550
 4551
 4552
 4553
 4554
 4555
 4556
 4557
 4558
 4559
 4560
 4561
 4562
 4563
 4564
 4565
 4566
 4567
 4568
 4569
 4570
 4571
 4572
 4573
 4574
 4575
 4576
 4577
 4578
 4579
 4580
 4581
 4582
 4583
 4584
 4585
 4586
 4587
 4588
 4589
 4590
 4591
 4592
 4593
 4594
 4595
 4596
 4597
 4598
 4599
 4600
 4601
 4602
 4603
 4604
 4605
 4606
 4607
 4608
 4609
 4610
 4611
 4612
 4613
 4614
 4615
 4616
 4617
 4618
 4619
 4620
 4621
 4622
 4623
 4624
 4625
 4626
 4627
 4628
 4629
 4630
 4631
 4632
 4633
 4634
 4635
 4636
 4637
 4638
 4639
 4640
 4641
 4642
 4643
 4644
 4645
 4646
 4647
 4648
 4649
 4650
 4651
 4652
 4653
 4654
 4655
 4656
 4657
 4658
 4659
 4660
 4661
 4662
 4663
 4664
 4665
 4666
 4667
 4668
 4669
 4670
 4671
 4672
 4673
 4674
 4675
 4676
 4677
 4678
 4679
 4680
 4681
 4682
 4683
 4684
 4685
 4686
 4687
 4688
 4689
 4690
 4691
 4692
 4693
 4694
 4695
 4696
 4697
 4698
 4699
 4700
 4701
 4702
 4703
 4704
 4705
 4706
 4707
 4708
 4709
 4710
 4711
 4712
 4713
 4714
 4715
 4716
 4717
 4718
 4719
 4720
 4721
 4722
 4723
 4724
 4725
 4726
 4727
 4728
 4729
 4730
 4731
 4732
 4733
 4734
 4735
 4736
 4737
 4738
 4739
 4740
 4741
 4742
 4743
 4744
 4745
 4746
 4747
 4748
 4749
 4750
 4751
 4752
 4753
 4754
 4755
 4756
 4757
 4758
 4759
 4760
 4761
 4762
 4763
 4764
 4765
 4766
 4767
 4768
 4769
 4770
 4771
 4772
 4773
 4774
 4775
 4776
 4777
 4778
 4779
 4780
 4781
 4782
 4783
 4784
 4785
 4786
 4787
 4788
 4789
 4790
 4791
 4792
 4793
 4794
 4795
 4796
 4797
 4798
 4799
 4800
 4801
 4802
 4803
 4804
 4805
 4806
 4807
 4808
 4809
 4810
 4811
 4812
 4813
 4814
 4815
 4816
 4817
 4818
 4819
 4820
 4821
 4822
 4823
 4824
 4825
 4826
 4827
 4828
 4829
 4830
 4831
 4832
 4833
 4834
 4835
 4836
 4837
 4838
 4839
 4840
 4841
 4842
 4843
 4844
 4845
 4846
 4847
 4848
 4849
 4850
 4851
 4852
 4853
 4854
 4855
 4856
 4857
 4858
 4859
 4860
 4861
 4862
 4863
 4864
 4865
 4866
 4867
 4868
 4869
 4870
 4871
 4872
 4873
 4874
 4875
 4876
 4877
 4878
 4879
 4880
 4881
 4882
 4883
 4884
 4885
 4886
 4887
 4888
 4889
 4890
 4891
 4892
 4893
 4894
 4895
 4896
 4897
 4898
 4899
 4900
 4901
 4902
 4903
 4904
 4905
 4906
 4907
 4908
 4909
 4910
 4911
 4912
 4913
 4914
 4915
 4916
 4917
 4918
 4919
 4920
 4921
 4922
 4923
 4924
 4925
 4926
 4927
 4928
 4929
 4930
 4931
 4932
 4933
 4934
 4935
 4936
 4937
 4938
 4939
 4940
 4941
 4942
 4943
 4944
 4945
 4946
 4947
 4948
 4949
 4950
 4951
 4952
 4953
 4954
 4955
 4956
 4957
 4958
 4959
 4960
 4961
 4962
 4963
 4964
 4965
 4966
 4967
 4968
 4969
 4970
 4971
 4972
 4973
 4974
 4975
 4976
 4977
 4978
 4979
 4980
 4981
 4982
 4983
 4984
 4985
 4986
 4987
 4988
 4989
 4990
 4991
 4992
 4993
 4994
 4995
 4996
 4997
 4998
 4999
 5000
 5001
 5002
 5003
 5004
 5005
 5006
 5007
 5008
 5009
 5010
 5011
 5012
 5013
 5014
 5015
 5016
 5017
 5018
 5019
 5020
 5021
 5022
 5023
 5024
 5025
 5026
 5027
 5028
 5029
 5030
 5031
 5032
 5033
 5034
 5035
 5036
 5037
 5038
 5039
 5040
 5041
 5042
 5043
 5044
 5045
 5046
 5047
 5048
 5049
 5050
 5051
 5052
 5053
 5054
 5055
 5056
 5057
 5058
 5059
 5060
 5061
 5062
 5063
 5064
 5065
 5066
 5067
 5068
 5069
 5070
 5071
 5072
 5073
 5074
 5075
 5076
 5077
 5078
 5079
 5080
 5081
 5082
 5083
 5084
 5085
 5086
 5087
 5088
 5089
 5090
 5091
 5092
 5093
 5094
 5095
 5096
 5097
 5098
 5099
 5100
 5101
 5102
 5103
 5104
 5105
 5106
 5107
 5108
 5109
 5110
 5111
 5112
 5113
 5114
 5115
 5116
 5117
 5118
 5119
 5120
 5121
 5122
 5123
 5124
 5125
 5126
 5127
 5128
 5129
 5130
 5131
 5132
 5133
 5134
 5135
 5136
 5137
 5138
 5139
 5140
 5141
 5142
 5143
 5144
 5145
 5146
 5147
 5148
 5149
 5150
 5151
 5152
 5153
 5154
 5155
 5156
 5157
 5158
 5159
 5160
 5161
 5162
 5163
 5164
 5165
 5166
 5167
 5168
 5169
 5170
 5171
 5172
 5173
 5174
 5175
 5176
 5177
 5178
 5179
 5180
 5181
 5182
 5183
 5184
 5185
 5186
 5187
 5188
 5189
 5190
 5191
 5192
 5193
 5194
 5195
 5196
 5197
 5198
 5199
 5200
 5201
 5202
 5203
 5204
 5205
 5206
 5207
 5208
 5209
 5210
 5211
 5212
 5213
 5214
 5215
 5216
 5217
 5218
 5219
 5220
 5221
 5222
 5223
 5224
 5225
 5226
 5227
 5228
 5229
 5230
 5231
 5232
 5233
 5234
 5235
 5236
 5237
 5238
 5239
 5240
 5241
 5242
 5243
 5244
 5245
 5246
 5247
 5248
 5249
 5250
 5251
 5252
 5253
 5254
 5255
 5256
 5257
 5258
 5259
 5260
 5261
 5262
 5263
 5264
 5265
 5266
 5267
 5268
 5269
 5270
 5271
 5272
 5273
 5274
 5275
 5276
 5277
 5278
 5279
 5280
 5281
 5282
 5283
 5284
 5285
 5286
 5287
 5288
 5289
 5290
 5291
 5292
 5293
 5294
 5295
 5296
 5297
 5298
 5299
 5300
 5301
 5302
 5303
 5304
 5305
 5306
 5307
 5308
 5309
 5310
 5311
 5312
 5313
 5314
 5315
 5316
 5317
 5318
 5319
 5320
 5321
 5322
 5323
 5324
 5325
 5326
 5327
 5328
 5329
 5330
 5331
 5332
 5333
 5334
 5335
 5336
 5337
 5338
 5339
 5340
 5341
 5342
 5343
 5344
 5345
 5346
 5347
 5348
 5349
 5350
 5351
 5352
 5353
 5354
 5355
 5356
 5357
 5358
 5359
 5360
 5361
 5362
 5363
 5364
 5365
 5366
 5367
 5368
 5369
 5370
 5371
 5372
 5373
 5374
 5375
 5376
 5377
 5378
 5379
 5380
 5381
 5382
 5383
 5384
 5385
 5386
 5387
 5388
 5389
 5390
 5391
 5392
 5393
 5394
 5395
 5396
 5397
 5398
 5399
 5400
 5401
 5402
 5403
 5404
 5405
 5406
 5407
 5408
 5409
 5410
 5411
 5412
 5413
 5414
 5415
 5416
 5417
 5418
 5419
 5420
 5421
 5422
 5423
 5424
 5425
 5426
 5427
 5428
 5429
 5430
 5431
 5432
 5433
 5434
 5435
 5436
 5437
 5438
 5439
 5440
 5441
 5442
 5443
 5444
 5445
 5446
 5447
 5448
 5449
 5450
 5451
 5452
 5453
 5454
 5455
 5456
 5457
 5458
 5459
 5460
 5461
 5462
 5463
 5464
 5465
 5466
 5467
 5468
 5469
 5470
 5471
 5472
 5473
 5474
 5475
 5476
 5477
 5478
 5479
 5480
 5481
 5482
 5483
 5484
 5485
 5486
 5487
 5488
 5489
 5490
 5491
 5492
 5493
 5494
 5495
 5496
 5497
 5498
 5499
 5500
 5501
 5502
 5503
 5504
 5505
 5506
 5507
 5508
 5509
 5510
 5511
 5512
 5513
 5514
 5515
 5516
 5517
 5518
 5519
 5520
 5521
 5522
 5523
 5524
 5525
 5526
 5527
 5528
 5529
 5530
 5531
 5532
 5533
 5534
 5535
 5536
 5537
 5538
 5539
 5540
 5541
 5542
 5543
 5544
 5545
 5546
 5547
 5548
 5549
 5550
 5551
 5552
 5553
 5554
 5555
 5556
 5557
 5558
 5559
 5560
 5561
 5562
 5563
 5564
 5565
 5566
 5567
 5568
 5569
 5570
 5571
 5572
 5573
 5574
 5575
 5576
 5577
 5578
 5579
 5580
 5581
 5582
 5583
 5584
 5585
 5586
 5587
 5588
 5589
 5590
 5591
 5592
 5593
 5594
 5595
 5596
 5597
 5598
 5599
 5600
 5601
 5602
 5603
 5604
 5605
 5606
 5607
 5608
 5609
 5610
 5611
 5612
 5613
 5614
 5615
 5616
 5617
 5618
 5619
 5620
 5621
 5622
 5623
 5624
 5625
 5626
 5627
 5628
 5629
 5630
 5631
 5632
 5633
 5634
 5635
 5636
 5637
 5638
 5639
 5640
 5641
 5642
 5643
 5644
 5645
 5646
 5647
 5648
 5649
 5650
 5651
 5652
 5653
 5654
 5655
 5656
 5657
 5658
 5659
 5660
 5661
 5662
 5663
 5664
 5665
 5666
 5667
 5668
 5669
 5670
 5671
 5672
 5673
 5674
 5675
 5676
 5677
 5678
 5679
 5680
 5681
 5682
 5683
 5684
 5685
 5686
 5687
 5688
 5689
 5690
 5691
 5692
 5693
 5694
 5695
 5696
 5697
 5698
 5699
 5700
 5701
 5702
 5703
 5704
 5705
 5706
 5707
 5708
 5709
 5710
 5711
 5712
 5713
 5714
 5715
 5716
 5717
 5718
 5719
 5720
 5721
 5722
 5723
 5724
 5725
 5726
 5727
 5728
 5729
 5730
 5731
 5732
 5733
 5734
 5735
 5736
 5737
 5738
 5739
 5740
 5741
 5742
 5743
 5744
 5745
 5746
 5747
 5748
 5749
 5750
 5751
 5752
 5753
 5754
 5755
 5756
 5757
 5758
 5759
 5760
 5761
 5762
 5763
 5764
 5765
 5766
 5767
 5768
 5769
 5770
 5771
 5772
 5773
 5774
 5775
 5776
 5777
 5778
 5779
 5780
 5781
 5782
 5783
 5784
 5785
 5786
 5787
 5788
 5789
 5790
 5791
 5792
 5793
 5794
 5795
 5796
 5797
 5798
 5799
 5800
 5801
 5802
 5803
 5804
 5805
 5806
 5807
 5808
 5809
 5810
 5811
 5812
 5813
 5814
 5815
 5816
 5817
 5818
 5819
 5820
 5821
 5822
 5823
 5824
 5825
 5826
 5827
 5828
 5829
 5830
 5831
 5832
 5833
 5834
 5835
 5836
 5837
 5838
 5839
 5840
 5841
 5842
 5843
 5844
 5845
 5846
 5847
 5848
 5849
 5850
 5851
 5852
 5853
 5854
 5855
 5856
 5857
 5858
 5859
 5860
 5861
 5862
 5863
 5864
 5865
 5866
 5867
 5868
 5869
 5870
 5871
 5872
 5873
 5874
 5875
 5876
 5877
 5878
 5879
 5880
 5881
 5882
 5883
 5884
 5885
 5886
 5887
 5888
 5889
 5890
 5891
 5892
 5893
 5894
 5895
 5896
 5897
 5898
 5899
 5900
 5901
 5902
 5903
 5904
 5905
 5906
 5907
 5908
 5909
 5910
 5911
 5912
 5913
 5914
 5915
 5916
 5917
 5918
 5919
 5920
 5921
 5922
 5923
 5924
 5925
 5926
 5927
 5928
 5929
 5930
 5931
 5932
 5933
 5934
 5935
 5936
 5937
 5938
 5939
 5940
 5941
 5942
 5943
 5944
 5945
 5946
 5947
 5948
 5949
 5950
 5951
 5952
 5953
 5954
 5955
 5956
 5957
 5958
 5959
 5960
 5961
 5962
 5963
 5964
 5965
 5966
 5967
 5968
 5969
 5970
 5971
 5972
 5973
 5974
 5975
 5976
 5977
 5978
 5979
 5980
 5981
 5982
 5983
 5984
 5985
 5986
 5987
 5988
 5989
 5990
 5991
 5992
 5993
 5994
 5995
 5996
 5997
 5998
 5999
 6000
 6001
 6002
 6003
 6004
 6005
 6006
 6007
 6008
 6009
 6010
 6011
 6012
 6013
 6014
 6015
 6016
 6017
 6018
 6019
 6020
 6021
 6022
 6023
 6024
 6025
 6026
 6027
 6028
 6029
 6030
 6031
 6032
 6033
 6034
 6035
 6036
 6037
 6038
 6039
 6040
 6041
 6042
 6043
 6044
 6045
 6046
 6047
 6048
 6049
 6050
 6051
 6052
 6053
 6054
 6055
 6056
 6057
 6058
 6059
 6060
 6061
 6062
 6063
 6064
 6065
 6066
 6067
 6068
 6069
 6070
 6071
 6072
 6073
 6074
 6075
 6076
 6077
 6078
 6079
 6080
 6081
 6082
 6083
 6084
 6085
 6086
 6087
 6088
 6089
 6090
 6091
 6092
 6093
 6094
 6095
 6096
 6097
 6098
 6099
 6100
 6101
 6102
 6103
 6104
 6105
 6106
 6107
 6108
 6109
 6110
 6111
 6112
 6113
 6114
 6115
 6116
 6117
 6118
 6119
 6120
 6121
 6122
 6123
 6124
 6125
 6126
 6127
 6128
 6129
 6130
 6131
 6132
 6133
 6134
 6135
 6136
 6137
 6138
 6139
 6140
 6141
 6142
 6143
 6144
 6145
 6146
 6147
 6148
 6149
 6150
 6151
 6152
 6153
 6154
 6155
 6156
 6157
 6158
 6159
 6160
 6161
 6162
 6163
 6164
 6165
 6166
 6167
 6168
 6169
 6170
 6171
 6172
 6173
 6174
 6175
 6176
 6177
 6178
 6179
 6180
 6181
 6182
 6183
 6184
 6185
 6186
 6187
 6188
 6189
 6190
 6191
 6192
 6193
 6194
 6195
 6196
 6197
 6198
 6199
 6200
 6201
 6202
 6203
 6204
 6205
 6206
 6207
 6208
 6209
 6210
 6211
 6212
 6213
 6214
 6215
 6216
 6217
 6218
 6219
 6220
 6221
 6222
 6223
 6224
 6225
 6226
 6227
 6228
 6229
 6230
 6231
 6232
 6233
 6234
 6235
 6236
 6237
 6238
 6239
 6240
 6241
 6242
 6243
 6244
 6245
 6246
 6247
 6248
 6249
 6250
 6251
 6252
 6253
 6254
 6255
 6256
 6257
 6258
 6259
 6260
 6261
 6262
 6263
 6264
 6265
 6266
 6267
 6268
 6269
 6270
 6271
 6272
 6273
 6274
 6275
 6276
 6277
 6278
 6279
 6280
 6281
 6282
 6283
 6284
 6285
 6286
 6287
 6288
 6289
 6290
 6291
 6292
 6293
 6294
 6295
 6296
 6297
 6298
 6299
 6300
 6301
 6302
 6303
 6304
 6305
 6306
 6307
 6308
 6309
 6310
 6311
 6312
 6313
 6314
 6315
 6316
 6317
 6318
 6319
 6320
 6321
 6322
 6323
 6324
 6325
 6326
 6327
 6328
 6329
 6330
 6331
 6332
 6333
 6334
 6335
 6336
 6337
 6338
 6339
 6340
 6341
 6342
 6343
 6344
 6345
 6346
 6347
 6348
 6349
 6350
 6351
 6352
 6353
 6354
 6355
 6356
 6357
 6358
 6359
 6360
 6361
 6362
 6363
 6364
 6365
 6366
 6367
 6368
 6369
 6370
 6371
 6372
 6373
 6374
 6375
 6376
 6377
 6378
 6379
 6380
 6381
 6382
 6383
 6384
 6385
 6386
 6387
 6388
 6389
 6390
 6391
 6392
 6393
 6394
 6395
 6396
 6397
 6398
 6399
 6400
 6401
 6402
 6403
 6404
 6405
 6406
 6407
 6408
 6409
 6410
 6411
 6412
 6413
 6414
 6415
 6416
 6417
 6418
 6419
 6420
 6421
 6422
 6423
 6424
 6425
 6426
 6427
 6428
 6429
 6430
 6431
 6432
 6433
 6434
 6435
 6436
 6437
 6438
 6439
 6440
 6441
 6442
 6443
 6444
 6445
 6446
 6447
 6448
 6449
 6450
 6451
 6452
 6453
 6454
 6455
 6456
 6457
 6458
 6459
 6460
 6461
 6462
 6463
 6464
 6465
 6466
 6467
 6468
 6469
 6470
 6471
 6472
 6473
 6474
 6475
 6476
 6477
 6478
 6479
 6480
 6481
 6482
 6483
 6484
 6485
 6486
 6487
 6488
 6489
 6490
 6491
 6492
 6493
 6494
 6495
 6496
 6497
 6498
 6499
 6500
 6501
 6502
 6503
 6504
 6505
 6506
 6507
 6508
 6509
 6510
 6511
 6512
 6513
 6514
 6515
 6516
 6517
 6518
 6519
 6520
 6521
 6522
 6523
 6524
 6525
 6526
 6527
 6528
 6529
 6530
 6531
 6532
 6533
 6534
 6535
 6536
 6537
 6538
 6539
 6540
 6541
 6542
 6543
 6544
 6545
 6546
 6547
 6548
 6549
 6550
 6551
 6552
 6553
 6554
 6555
 6556
 6557
 6558
 6559
 6560
 6561
 6562
 6563
 6564
 6565
 6566
 6567
 6568
 6569
 6570
 6571
 6572
 6573
 6574
 6575
 6576
 6577
 6578
 6579
 6580
 6581
 6582
 6583
 6584
 6585
 6586
 6587
 6588
 6589
 6590
 6591
 6592
 6593
 6594
 6595
 6596
 6597
 6598
 6599
 6600
 6601
 6602
 6603
 6604
 6605
 6606
 6607
 6608
 6609
 6610
 6611
 6612
 6613
 6614
 6615
 6616
 6617
 6618
 6619
 6620
 6621
 6622
 6623
 6624
 6625
 6626
 6627
 6628
 6629
 6630
 6631
 6632
 6633
 6634
 6635
 6636
 6637
 6638
 6639
 6640
 6641
 6642
 6643
 6644
 6645
 6646
 6647
 6648
 6649
 6650
 6651
 6652
 6653
 6654
 6655
 6656
 6657
 6658
 6659
 6660
 6661
 6662
 6663
 6664
 6665
 6666
 6667
 6668
 6669
 6670
 6671
 6672
 6673
 6674
 6675
 6676
 6677
 6678
 6679
 6680
 6681
 6682
 6683
 6684
 6685
 6686
 6687
 6688
 6689
 6690
 6691
 6692
 6693
 6694
 6695
 6696
 6697
 6698
 6699
 6700
 6701
 6702
 6703
 6704
 6705
 6706
 6707
 6708
 6709
 6710
 6711
 6712
 6713
 6714
 6715
 6716
 6717
 6718
 6719
 6720
 6721
 6722
 6723
 6724
 6725
 6726
 6727
 6728
 6729
 6730
 6731
 6732
 6733
 6734
 6735
 6736
 6737
 6738
 6739
 6740
 6741
 6742
 6743
 6744
 6745
 6746
 6747
 6748
 6749
 6750
 6751
 6752
 6753
 6754
 6755
 6756
 6757
 6758
 6759
 6760
 6761
 6762
 6763
 6764
 6765
 6766
 6767
 6768
 6769
 6770
 6771
 6772
 6773
 6774
 6775
 6776
 6777
 6778
 6779
 6780
 6781
 6782
 6783
 6784
 6785
 6786
 6787
 6788
 6789
 6790
 6791
 6792
 6793
 6794
 6795
 6796
 6797
 6798
 6799
 6800
 6801
 6802
 6803
 6804
 6805
 6806
 6807
 6808
 6809
 6810
 6811
 6812
 6813
 6814
 6815
 6816
 6817
 6818
 6819
 6820
 6821
 6822
 6823
 6824
 6825
 6826
 6827
 6828
 6829
 6830
 6831
 6832
 6833
 6834
 6835
 6836
 6837
 6838
 6839
 6840
 6841
 6842
 6843
 6844
 6845
 6846
 6847
 6848
 6849
 6850
 6851
 6852
 6853
 6854
 6855
 6856
 6857
 6858
 6859
 6860
 6861
 6862
 6863
 6864
 6865
 6866
 6867
 6868
 6869
 6870
 6871
 6872
 6873
 6874
 6875
 6876
 6877
 6878
 6879
 6880
 6881
 6882
 6883
 6884
 6885
 6886
 6887
 6888
 6889
 6890
 6891
 6892
 6893
 6894
 6895
 6896
 6897
 6898
 6899
 6900
 6901
 6902
 6903
 6904
 6905
 6906
 6907
 6908
 6909
 6910
 6911
 6912
 6913
 6914
 6915
 6916
 6917
 6918
 6919
 6920
 6921
 6922
 6923
 6924
 6925
 6926
 6927
 6928
 6929
 6930
 6931
 6932
 6933
 6934
 6935
 6936
 6937
 6938
 6939
 6940
 6941
 6942
 6943
 6944
 6945
 6946
 6947
 6948
 6949
 6950
 6951
 6952
 6953
 6954
 6955
 6956
 6957
 6958
 6959
 6960
 6961
 6962
 6963
 6964
 6965
 6966
 6967
 6968
 6969
 6970
 6971
 6972
 6973
 6974
 6975
 6976
 6977
 6978
 6979
 6980
 6981
 6982
 6983
 6984
 6985
 6986
 6987
 6988
 6989
 6990
 6991
 6992
 6993
 6994
 6995
 6996
 6997
 6998
 6999
 7000
 7001
 7002
 7003
 7004
 7005
 7006
 7007
 7008
 7009
 7010
 7011
 7012
 7013
 7014
 7015
 7016
 7017
 7018
 7019
 7020
 7021
 7022
 7023
 7024
 7025
 7026
 7027
 7028
 7029
 7030
 7031
 7032
 7033
 7034
 7035
 7036
 7037
 7038
 7039
 7040
 7041
 7042
 7043
 7044
 7045
 7046
 7047
 7048
 7049
 7050
 7051
 7052
 7053
 7054
 7055
 7056
 7057
 7058
 7059
 7060
 7061
 7062
 7063
 7064
 7065
 7066
 7067
 7068
 7069
 7070
 7071
 7072
 7073
 7074
 7075
 7076
 7077
 7078
 7079
 7080
 7081
 7082
 7083
 7084
 7085
 7086
 7087
 7088
 7089
 7090
 7091
 7092
 7093
 7094
 7095
 7096
 7097
 7098
 7099
 7100
 7101
 7102
 7103
 7104
 7105
 7106
 7107
 7108
 7109
 7110
 7111
 7112
 7113
 7114
 7115
 7116
 7117
 7118
 7119
 7120
 7121
 7122
 7123
 7124
 7125
 7126
 7127
 7128
 7129
 7130
 7131
 7132
 7133
 7134
 7135
 7136
 7137
 7138
 7139
 7140
 7141
 7142
 7143
 7144
 7145
 7146
 7147
 7148
 7149
 7150
 7151
 7152
 7153
 7154
 7155
 7156
 7157
 7158
 7159
 7160
 7161
 7162
 7163
 7164
 7165
 7166
 7167
 7168
 7169
 7170
 7171
 7172
 7173
 7174
 7175
 7176
 7177
 7178
 7179
 7180
 7181
 7182
 7183
 7184
 7185
 7186
 7187
 7188
 7189
 7190
 7191
 7192
 7193
 7194
 7195
 7196
 7197
 7198
 7199
 7200
 7201
 7202
 7203
 7204
 7205
 7206
 7207
 7208
 7209
 7210
 7211
 7212
 7213
 7214
 7215
 7216
 7217
 7218
 7219
 7220
 7221
 7222
 7223
 7224
 7225
 7226
 7227
 7228
 7229
 7230
 7231
 7232
 7233
 7234
 7235
 7236
 7237
 7238
 7239
 7240
 7241
 7242
 7243
 7244
 7245
 7246
 7247
 7248
 7249
 7250
 7251
 7252
 7253
 7254
 7255
 7256
 7257
 7258
 7259
 7260
 7261
 7262
 7263
 7264
 7265
 7266
 7267
 7268
 7269
 7270
 7271
 7272
 7273
 7274
 7275
 7276
 7277
 7278
 7279
 7280
 7281
 7282
 7283
 7284
 7285
 7286
 7287
 7288
 7289
 7290
 7291
 7292
 7293
 7294
 7295
 7296
 7297
 7298
 7299
 7300
 7301
 7302
 7303
 7304
 7305
 7306
 7307
 7308
 7309
 7310
 7311
 7312
 7313
 7314
 7315
 7316
 7317
 7318
 7319
 7320
 7321
 7322
 7323
 7324
 7325
 7326
 7327
 7328
 7329
 7330
 7331
 7332
 7333
 7334
 7335
 7336
 7337
 7338
 7339
 7340
 7341
 7342
 7343
 7344
 7345
 7346
 7347
 7348
 7349
 7350
 7351
 7352
 7353
 7354
 7355
 7356
 7357
 7358
 7359
 7360
 7361
 7362
 7363
 7364
 7365
 7366
 7367
 7368
 7369
 7370
 7371
 7372
 7373
 7374
 7375
 7376
 7377
 7378
 7379
 7380
 7381
 7382
 7383
 7384
 7385
 7386
 7387
 7388
 7389
 7390
 7391
 7392
 7393
 7394
 7395
 7396
 7397
 7398
 7399
 7400
 7401
 7402
 7403
 7404
 7405
 7406
 7407
 7408
 7409
 7410
 7411
 7412
 7413
 7414
 7415
 7416
 7417
 7418
 7419
 7420
 7421
 7422
 7423
 7424
 7425
 7426
 7427
 7428
 7429
 7430
 7431
 7432
 7433
 7434
 7435
 7436
 7437
 7438
 7439
 7440
 7441
 7442
 7443
 7444
 7445
 7446
 7447
 7448
 7449
 7450
 7451
 7452
 7453
 7454
 7455
 7456
 7457
 7458
 7459
 7460
 7461
 7462
 7463
 7464
 7465
 7466
 7467
 7468
 7469
 7470
 7471
 7472
 7473
 7474
 7475
 7476
 7477
 7478
 7479
 7480
 7481
 7482
 7483
 7484
 7485
 7486
 7487
 7488
 7489
 7490
 7491
 7492
 7493
 7494
 7495
 7496
 7497
 7498
 7499
 7500
 7501
 7502
 7503
 7504
 7505
 7506
 7507
 7508
 7509
 7510
 7511
 7512
 7513
 7514
 7515
 7516
 7517
 7518
 7519
 7520
 7521
 7522
 7523
 7524
 7525
 7526
 7527
 7528
 7529
 7530
 7531
 7532
 7533
 7534
 7535
 7536
 7537
 7538
 7539
 7540
 7541
 7542
 7543
 7544
 7545
 7546
 7547
 7548
 7549
 7550
 7551
 7552
 7553
 7554
 7555
 7556
 7557
 7558
 7559
 7560
 7561
 7562
 7563
 7564
 7565
 7566
 7567
 7568
 7569
 7570
 7571
 7572
 7573
 7574
 7575
 7576
 7577
 7578
 7579
 7580
 7581
 7582
 7583
 7584
 7585
 7586
 7587
 7588
 7589
 7590
 7591
 7592
 7593
 7594
 7595
 7596
 7597
 7598
 7599
 7600
 7601
 7602
 7603
 7604
 7605
 7606
 7607
 7608
 7609
 7610
 7611
 7612
 7613
 7614
 7615
 7616
 7617
 7618
 7619
 7620
 7621
 7622
 7623
 7624
 7625
 7626
 7627
 7628
 7629
 7630
 7631
 7632
 7633
 7634
 7635
 7636
 7637
 7638
 7639
 7640
 7641
 7642
 7643
 7644
 7645
 7646
 7647
 7648
 7649
 7650
 7651
 7652
 7653
 7654
 7655
 7656
 7657
 7658
 7659
 7660
 7661
 7662
 7663
 7664
 7665
 7666
 7667
 7668
 7669
 7670
 7671
 7672
 7673
 7674
 7675
 7676
 7677
 7678
 7679
 7680
 7681
 7682
 7683
 7684
 7685
 7686
 7687
 7688
 7689
 7690
 7691
 7692
 7693
 7694
 7695
 7696
 7697
 7698
 7699
 7700
 7701
 7702
 7703
 7704
 7705
 7706
 7707
 7708
 7709
 7710
 7711
 7712
 7713
 7714
 7715
 7716
 7717
 7718
 7719
 7720
 7721
 7722
 7723
 7724
 7725
 7726
 7727
 7728
 7729
 7730
 7731
 7732
 7733
 7734
 7735
 7736
 7737
 7738
 7739
 7740
 7741
 7742
 7743
 7744
 7745
 7746
 7747
 7748
 7749
 7750
 7751
 7752
 7753
 7754
 7755
 7756
 7757
 7758
 7759
 7760
 7761
 7762
 7763
 7764
 7765
 7766
 7767
 7768
 7769
 7770
 7771
 7772
 7773
 7774
 7775
 7776
 7777
 7778
 7779
 7780
 7781
 7782
 7783
 7784
 7785
 7786
 7787
 7788
 7789
 7790
 7791
 7792
 7793
 7794
 7795
 7796
 7797
 7798
 7799
 7800
 7801
 7802
 7803
 7804
 7805
 7806
 7807
 7808
 7809
 7810
 7811
 7812
 7813
 7814
 7815
 7816
 7817
 7818
 7819
 7820
 7821
 7822
 7823
 7824
 7825
 7826
 7827
 7828
 7829
 7830
 7831
 7832
 7833
 7834
 7835
 7836
 7837
 7838
 7839
 7840
 7841
 7842
 7843
 7844
 7845
 7846
 7847
 7848
 7849
 7850
 7851
 7852
 7853
 7854
 7855
 7856
 7857
 7858
 7859
 7860
 7861
 7862
 7863
 7864
 7865
 7866
 7867
 7868
 7869
 7870
 7871
 7872
 7873
 7874
 7875
 7876
 7877
 7878
 7879
 7880
 7881
 7882
 7883
 7884
 7885
 7886
 7887
 7888
 7889
 7890
 7891
 7892
 7893
 7894
 7895
 7896
 7897
 7898
 7899
 7900
 7901
 7902
 7903
 7904
 7905
 7906
 7907
 7908
 7909
 7910
 7911
 7912
 7913
 7914
 7915
 7916
 7917
 7918
 7919
 7920
 7921
 7922
 7923
 7924
 7925
 7926
 7927
 7928
 7929
 7930
 7931
 7932
 7933
 7934
 7935
 7936
 7937
 7938
 7939
 7940
 7941
 7942
 7943
 7944
 7945
 7946
 7947
 7948
 7949
 7950
 7951
 7952
 7953
 7954
 7955
 7956
 7957
 7958
 7959
 7960
 7961
 7962
 7963
 7964
 7965
 7966
 7967
 7968
 7969
 7970
 7971
 7972
 7973
 7974
 7975
 7976
 7977
 7978
 7979
 7980
 7981
 7982
 7983
 7984
 7985
 7986
 7987
 7988
 7989
 7990
 7991
 7992
 7993
 7994
 7995
 7996
 7997
 7998
 7999
 8000
 8001
 8002
 8003
 8004
 8005
 8006
 8007
 8008
 8009
 8010
 8011
 8012
 8013
 8014
 8015
 8016
 8017
 8018
 8019
 8020
 8021
 8022
 8023
 8024
 8025
 8026
 8027
 8028
 8029
 8030
 8031
 8032
 8033
 8034
 8035
 8036
 8037
 8038
 8039
 8040
 8041
 8042
 8043
 8044
 8045
 8046
 8047
 8048
 8049
 8050
 8051
 8052
 8053
 8054
 8055
 8056
 8057
 8058
 8059
 8060
 8061
 8062
 8063
 8064
 8065
 8066
 8067
 8068
 8069
 8070
 8071
 8072
 8073
 8074
 8075
 8076
 8077
 8078
 8079
 8080
 8081
 8082
 8083
 8084
 8085
 8086
 8087
 8088
 8089
 8090
 8091
 8092
 8093
 8094
 8095
 8096
 8097
 8098
 8099
 8100
 8101
 8102
 8103
 8104
 8105
 8106
 8107
 8108
 8109
 8110
 8111
 8112
 8113
 8114
 8115
 8116
 8117
 8118
 8119
 8120
 8121
 8122
 8123
 8124
 8125
 8126
 8127
 8128
 8129
 8130
 8131
 8132
 8133
 8134
 8135
 8136
 8137
 8138
 8139
 8140
 8141
 8142
 8143
 8144
 8145
 8146
 8147
 8148
 8149
 8150
 8151
 8152
 8153
 8154
 8155
 8156
 8157
 8158
 8159
 8160
 8161
 8162
 8163
 8164
 8165
 8166
 8167
 8168
 8169
 8170
 8171
 8172
 8173
 8174
 8175
 8176
 8177
 8178
 8179
 8180
 8181
 8182
 8183
 8184
 8185
 8186
 8187
 8188
 8189
 8190
 8191
 8192
 8193
 8194
 8195
 8196
 8197
 8198
 8199
 8200
 8201
 8202
 8203
 8204
 8205
 8206
 8207
 8208
 8209
 8210
 8211
 8212
 8213
 8214
 8215
 8216
 8217
 8218
 8219
 8220
 8221
 8222
 8223
 8224
 8225
 8226
 8227
 8228
 8229
 8230
 8231
 8232
 8233
 8234
 8235
 8236
 8237
 8238
 8239
 8240
 8241
 8242
 8243
 8244
 8245
 8246
 8247
 8248
 8249
 8250
 8251
 8252
 8253
 8254
 8255
 8256
 8257
 8258
 8259
 8260
 8261
 8262
 8263
 8264
 8265
 8266
 8267
 8268
 8269
 8270
 8271
 8272
 8273
 8274
 8275
 8276
 8277
 8278
 8279
 8280
 8281
 8282
 8283
 8284
 8285
 8286
 8287
 8288
 8289
 8290
 8291
 8292
 8293
 8294
 8295
 8296
 8297
 8298
 8299
 8300
 8301
 8302
 8303
 8304
 8305
 8306
 8307
 8308
 8309
 8310
 8311
 8312
 8313
 8314
 8315
 8316
 8317
 8318
 8319
 8320
 8321
 8322
 8323
 8324
 8325
 8326
 8327
 8328
 8329
 8330
 8331
 8332
 8333
 8334
 8335
 8336
 8337
 8338
 8339
 8340
 8341
 8342
 8343
 8344
 8345
 8346
 8347
 8348
 8349
 8350
 8351
 8352
 8353
 8354
 8355
 8356
 8357
 8358
 8359
 8360
 8361
 8362
 8363
 8364
 8365
 8366
 8367
 8368
 8369
 8370
 8371
 8372
 8373
 8374
 8375
 8376
 8377
 8378
 8379
 8380
 8381
 8382
 8383
 8384
 8385
 8386
 8387
 8388
 8389
 8390
 8391
 8392
 8393
 8394
 8395
 8396
 8397
 8398
 8399
 8400
 8401
 8402
 8403
 8404
 8405
 8406
 8407
 8408
 8409
 8410
 8411
 8412
 8413
 8414
 8415
 8416
 8417
 8418
 8419
 8420
 8421
 8422
 8423
 8424
 8425
 8426
 8427
 8428
 8429
 8430
 8431
 8432
 8433
 8434
 8435
 8436
 8437
 8438
 8439
 8440
 8441
 8442
 8443
 8444
 8445
 8446
 8447
 8448
 8449
 8450
 8451
 8452
 8453
 8454
 8455
 8456
 8457
 8458
 8459
 8460
 8461
 8462
 8463
 8464
 8465
 8466
 8467
 8468
 8469
 8470
 8471
 8472
 8473
 8474
 8475
 8476
 8477
 8478
 8479
 8480
 8481
 8482
 8483
 8484
 8485
 8486
 8487
 8488
 8489
 8490
 8491
 8492
 8493
 8494
 8495
 8496
 8497
 8498
 8499
 8500
 8501
 8502
 8503
 8504
 8505
 8506
 8507
 8508
 8509
 8510
 8511
 8512
 8513
 8514
 8515
 8516
 8517
 8518
 8519
 8520
 8521
 8522
 8523
 8524
 8525
 8526
 8527
 8528
 8529
 8530
 8531
 8532
 8533
 8534
 8535
 8536
 8537
 8538
 8539
 8540
 8541
 8542
 8543
 8544
 8545
 8546
 8547
 8548
 8549
 8550
 8551
 8552
 8553
 8554
 8555
 8556
 8557
 8558
 8559
 8560
 8561
 8562
 8563
 8564
 8565
 8566
 8567
 8568
 8569
 8570
 8571
 8572
 8573
 8574
 8575
 8576
 8577
 8578
 8579
 8580
 8581
 8582
 8583
 8584
 8585
 8586
 8587
 8588
 8589
 8590
 8591
 8592
 8593
 8594
 8595
 8596
 8597
 8598
 8599
 8600
 8601
 8602
 8603
 8604
 8605
 8606
 8607
 8608
 8609
 8610
 8611
 8612
 8613
 8614
 8615
 8616
 8617
 8618
 8619
 8620
 8621
 8622
 8623
 8624
 8625
 8626
 8627
 8628
 8629
 8630
 8631
 8632
 8633
 8634
 8635
 8636
 8637
 8638
 8639
 8640
 8641
 8642
 8643
 8644
 8645
 8646
 8647
 8648
 8649
 8650
 8651
 8652
 8653
 8654
 8655
 8656
 8657
 8658
 8659
 8660
 8661
 8662
 8663
 8664
 8665
 8666
 8667
 8668
 8669
 8670
 8671
 8672
 8673
 8674
 8675
 8676
 8677
 8678
 8679
 8680
 8681
 8682
 8683
 8684
 8685
 8686
 8687
 8688
 8689
 8690
 8691
 8692
 8693
 8694
 8695
 8696
 8697
 8698
 8699
 8700
 8701
 8702
 8703
 8704
 8705
 8706
 8707
 8708
 8709
 8710
 8711
 8712
 8713
 8714
 8715
 8716
 8717
 8718
 8719
 8720
 8721
 8722
 8723
 8724
 8725
 8726
 8727
 8728
 8729
 8730
 8731
 8732
 8733
 8734
 8735
 8736
 8737
 8738
 8739
 8740
 8741
 8742
 8743
 8744
 8745
 8746
 8747
 8748
 8749
 8750
 8751
 8752
 8753
 8754
 8755
 8756
 8757
 8758
 8759
 8760
 8761
 8762
 8763
 8764
 8765
 8766
 8767
 8768
 8769
 8770
 8771
 8772
 8773
 8774
 8775
 8776
 8777
 8778
 8779
 8780
 8781
 8782
 8783
 8784
 8785
 8786
 8787
 8788
 8789
 8790
 8791
 8792
 8793
 8794
 8795
 8796
 8797
 8798
 8799
 8800
 8801
 8802
 8803
 8804
 8805
 8806
 8807
 8808
 8809
 8810
 8811
 8812
 8813
 8814
 8815
 8816
 8817
 8818
 8819
 8820
 8821
 8822
 8823
 8824
 8825
 8826
 8827
 8828
 8829
 8830
 8831
 8832
 8833
 8834
 8835
 8836
 8837
 8838
 8839
 8840
 8841
 8842
 8843
 8844
 8845
 8846
 8847
 8848
 8849
 8850
 8851
 8852
 8853
 8854
 8855
 8856
 8857
 8858
 8859
 8860
 8861
 8862
 8863
 8864
 8865
 8866
 8867
 8868
 8869
 8870
 8871
 8872
 8873
 8874
 8875
 8876
 8877
 8878
 8879
 8880
 8881
 8882
 8883
 8884
 8885
 8886
 8887
 8888
 8889
 8890
 8891
 8892
 8893
 8894
 8895
 8896
 8897
 8898
 8899
 8900
 8901
 8902
 8903
 8904
 8905
 8906
 8907
 8908
 8909
 8910
 8911
 8912
 8913
 8914
 8915
 8916
 8917
 8918
 8919
 8920
 8921
 8922
 8923
 8924
 8925
 8926
 8927
 8928
 8929
 8930
 8931
 8932
 8933
 8934
 8935
 8936
 8937
 8938
 8939
 8940
 8941
 8942
 8943
 8944
 8945
 8946
 8947
 8948
 8949
 8950
 8951
 8952
 8953
 8954
 8955
 8956
 8957
 8958
 8959
 8960
 8961
 8962
 8963
 8964
 8965
 8966
 8967
 8968
 8969
 8970
 8971
 8972
 8973
 8974
 8975
 8976
 8977
 8978
 8979
 8980
 8981
 8982
 8983
 8984
 8985
 8986
 8987
 8988
 8989
 8990
 8991
 8992
 8993
 8994
 8995
 8996
 8997
 8998
 8999
 9000
 9001
 9002
 9003
 9004
 9005
 9006
 9007
 9008
 9009
 9010
 9011
 9012
 9013
 9014
 9015
 9016
 9017
 9018
 9019
 9020
 9021
 9022
 9023
 9024
 9025
 9026
 9027
 9028
 9029
 9030
 9031
 9032
 9033
 9034
 9035
 9036
 9037
 9038
 9039
 9040
 9041
 9042
 9043
 9044
 9045
 9046
 9047
 9048
 9049
 9050
 9051
 9052
 9053
 9054
 9055
 9056
 9057
 9058
 9059
 9060
 9061
 9062
 9063
 9064
 9065
 9066
 9067
 9068
 9069
 9070
 9071
 9072
 9073
 9074
 9075
 9076
 9077
 9078
 9079
 9080
 9081
 9082
 9083
 9084
 9085
 9086
 9087
 9088
 9089
 9090
 9091
 9092
 9093
 9094
 9095
 9096
 9097
 9098
 9099
 9100
 9101
 9102
 9103
 9104
 9105
 9106
 9107
 9108
 9109
 9110
 9111
 9112
 9113
 9114
 9115
 9116
 9117
 9118
 9119
 9120
 9121
 9122
 9123
 9124
 9125
 9126
 9127
 9128
 9129
 9130
 9131
 9132
 9133
 9134
 9135
 9136
 9137
 9138
 9139
 9140
 9141
 9142
 9143
 9144
 9145
 9146
 9147
 9148
 9149
 9150
 9151
 9152
 9153
 9154
 9155
 9156
 9157
 9158
 9159
 9160
 9161
 9162
 9163
 9164
 9165
 9166
 9167
 9168
 9169
 9170
 9171
 9172
 9173
 9174
 9175
 9176
 9177
 9178
 9179
 9180
 9181
 9182
 9183
 9184
 9185
 9186
 9187
 9188
 9189
 9190
 9191
 9192
 9193
 9194
 9195
 9196
 9197
 9198
 9199
 9200
 9201
 9202
 9203
 9204
 9205
 9206
 9207
 9208
 9209
 9210
 9211
 9212
 9213
 9214
 9215
 9216
 9217
 9218
 9219
 9220
 9221
 9222
 9223
 9224
 9225
 9226
 9227
 9228
 9229
 9230
 9231
 9232
 9233
 9234
 9235
 9236
 9237
 9238
 9239
 9240
 9241
 9242
 9243
 9244
 9245
 9246
 9247
 9248
 9249
 9250
 9251
 9252
 9253
 9254
 9255
 9256
 9257
 9258
 9259
 9260
 9261
 9262
 9263
 9264
 9265
 9266
 9267
 9268
 9269
 9270
 9271
 9272
 9273
 9274
 9275
 9276
 9277
 9278
 9279
 9280
 9281
 9282
 9283
 9284
 9285
 9286
 9287
 9288
 9289
 9290
 9291
 9292
 9293
 9294
 9295
 9296
 9297
 9298
 9299
 9300
 9301
 9302
 9303
 9304
 9305
 9306
 9307
 9308
 9309
 9310
 9311
 9312
 9313
 9314
 9315
 9316
 9317
 9318
 9319
 9320
 9321
 9322
 9323
 9324
 9325
 9326
 9327
 9328
 9329
 9330
 9331
 9332
 9333
 9334
 9335
 9336
 9337
 9338
 9339
 9340
 9341
 9342
 9343
 9344
 9345
 9346
 9347
 9348
 9349
 9350
 9351
 9352
 9353
 9354
 9355
 9356
 9357
 9358
 9359
 9360
 9361
 9362
 9363
 9364
 9365
 9366
 9367
 9368
 9369
 9370
 9371
 9372
 9373
 9374
 9375
 9376
 9377
 9378
 9379
 9380
 9381
 9382
 9383
 9384
 9385
 9386
 9387
 9388
 9389
 9390
 9391
 9392
 9393
 9394
 9395
 9396
 9397
 9398
 9399
 9400
 9401
 9402
 9403
 9404
 9405
 9406
 9407
 9408
 9409
 9410
 9411
 9412
 9413
 9414
 9415
 9416
 9417
 9418
 9419
 9420
 9421
 9422
 9423
 9424
 9425
 9426
 9427
 9428
 9429
 9430
 9431
 9432
 9433
 9434
 9435
 9436
 9437
 9438
 9439
 9440
 9441
 9442
 9443
 9444
 9445
 9446
 9447
 9448
 9449
 9450
 9451
 9452
 9453
 9454
 9455
 9456
 9457
 9458
 9459
 9460
 9461
 9462
 9463
 9464
 9465
 9466
 9467
 9468
 9469
 9470
 9471
 9472
 9473
 9474
 9475
 9476
 9477
 9478
 9479
 9480
 9481
 9482
 9483
 9484
 9485
 9486
 9487
 9488
 9489
 9490
 9491
 9492
 9493
 9494
 9495
 9496
 9497
 9498
 9499
 9500
 9501
 9502
 9503
 9504
 9505
 9506
 9507
 9508
 9509
 9510
 9511
 9512
 9513
 9514
 9515
 9516
 9517
 9518
 9519
 9520
 9521
 9522
 9523
 9524
 9525
 9526
 9527
 9528
 9529
 9530
 9531
 9532
 9533
 9534
 9535
 9536
 9537
 9538
 9539
 9540
 9541
 9542
 9543
 9544
 9545
 9546
 9547
 9548
 9549
 9550
 9551
 9552
 9553
 9554
 9555
 9556
 9557
 9558
 9559
 9560
 9561
 9562
 9563
 9564
 9565
 9566
 9567
 9568
 9569
 9570
 9571
 9572
 9573
 9574
 9575
 9576
 9577
 9578
 9579
 9580
 9581
 9582
 9583
 9584
 9585
 9586
 9587
 9588
 9589
 9590
 9591
 9592
 9593
 9594
 9595
 9596
 9597
 9598
 9599
 9600
 9601
 9602
 9603
 9604
 9605
 9606
 9607
 9608
 9609
 9610
 9611
 9612
 9613
 9614
 9615
 9616
 9617
 9618
 9619
 9620
 9621
 9622
 9623
 9624
 9625
 9626
 9627
 9628
 9629
 9630
 9631
 9632
 9633
 9634
 9635
 9636
 9637
 9638
 9639
 9640
 9641
 9642
 9643
 9644
 9645
 9646
 9647
 9648
 9649
 9650
 9651
 9652
 9653
 9654
 9655
 9656
 9657
 9658
 9659
 9660
 9661
 9662
 9663
 9664
 9665
 9666
 9667
 9668
 9669
 9670
 9671
 9672
 9673
 9674
 9675
 9676
 9677
 9678
 9679
 9680
 9681
 9682
 9683
 9684
 9685
 9686
 9687
 9688
 9689
 9690
 9691
 9692
 9693
 9694
 9695
 9696
 9697
 9698
 9699
 9700
 9701
 9702
 9703
 9704
 9705
 9706
 9707
 9708
 9709
 9710
 9711
 9712
 9713
 9714
 9715
 9716
 9717
 9718
 9719
 9720
 9721
 9722
 9723
 9724
 9725
 9726
 9727
 9728
 9729
 9730
 9731
 9732
 9733
 9734
 9735
 9736
 9737
 9738
 9739
 9740
 9741
 9742
 9743
 9744
 9745
 9746
 9747
 9748
 9749
 9750
 9751
 9752
 9753
 9754
 9755
 9756
 9757
 9758
 9759
 9760
 9761
 9762
 9763
 9764
 9765
 9766
 9767
 9768
 9769
 9770
 9771
 9772
 9773
 9774
 9775
 9776
 9777
 9778
 9779
 9780
 9781
 9782
 9783
 9784
 9785
 9786
 9787
 9788
 9789
 9790
 9791
 9792
 9793
 9794
 9795
 9796
 9797
 9798
 9799
 9800
 9801
 9802
 9803
 9804
 9805
 9806
 9807
 9808
 9809
 9810
 9811
 9812
 9813
 9814
 9815
 9816
 9817
 9818
 9819
 9820
 9821
 9822
 9823
 9824
 9825
 9826
 9827
 9828
 9829
 9830
 9831
 9832
 9833
 9834
 9835
 9836
 9837
 9838
 9839
 9840
 9841
 9842
 9843
 9844
 9845
 9846
 9847
 9848
 9849
 9850
 9851
 9852
 9853
 9854
 9855
 9856
 9857
 9858
 9859
 9860
 9861
 9862
 9863
 9864
 9865
 9866
 9867
 9868
 9869
 9870
 9871
 9872
 9873
 9874
 9875
 9876
 9877
 9878
 9879
 9880
 9881
 9882
 9883
 9884
 9885
 9886
 9887
 9888
 9889
 9890
 9891
 9892
 9893
 9894
 9895
 9896
 9897
 9898
 9899
 9900
 9901
 9902
 9903
 9904
 9905
 9906
 9907
 9908
 9909
 9910
 9911
 9912
 9913
 9914
 9915
 9916
 9917
 9918
 9919
 9920
 9921
 9922
 9923
 9924
 9925
 9926
 9927
 9928
 9929
 9930
 9931
 9932
 9933
 9934
 9935
 9936
 9937
 9938
 9939
 9940
 9941
 9942
 9943
 9944
 9945
 9946
 9947
 9948
 9949
 9950
 9951
 9952
 9953
 9954
 9955
 9956
 9957
 9958
 9959
 9960
 9961
 9962
 9963
 9964
 9965
 9966
 9967
 9968
 9969
 9970
 9971
 9972
 9973
 9974
 9975
 9976
 9977
 9978
 9979
 9980
 9981
 9982
 9983
 9984
 9985
 9986
 9987
 9988
 9989
 9990
 9991
 9992
 9993
 9994
 9995
 9996
 9997
 9998
 9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
14341
14342
14343
14344
14345
14346
14347
14348
14349
14350
14351
14352
14353
14354
14355
14356
14357
14358
14359
14360
14361
14362
14363
14364
14365
14366
14367
14368
14369
14370
14371
14372
14373
14374
14375
14376
14377
14378
14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
14390
14391
14392
14393
14394
14395
14396
14397
14398
14399
14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
14425
14426
14427
14428
14429
14430
14431
14432
14433
14434
14435
14436
14437
14438
14439
14440
14441
14442
14443
14444
14445
14446
14447
14448
14449
14450
14451
14452
14453
14454
14455
14456
14457
14458
14459
14460
14461
14462
14463
14464
14465
14466
14467
14468
14469
14470
14471
14472
14473
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
14497
14498
14499
14500
14501
14502
14503
14504
14505
14506
14507
14508
14509
14510
14511
14512
14513
14514
14515
14516
14517
14518
14519
14520
14521
14522
14523
14524
14525
14526
14527
14528
14529
14530
*version6.txt*  For Vim version 7.3.  Last change: 2008 Aug 06


		  VIM REFERENCE MANUAL    by Bram Moolenaar


Welcome to Vim Version 6.0!  A large number of features has been added.  This
file mentions all the new items that have been added, changes to existing
features and bug fixes compared to Vim 5.x.

See |vi_diff.txt| for an overview of differences between Vi and Vim 6.0.
See |version4.txt| for differences between Vim 3.0 and Vim 4.0.
See |version5.txt| for differences between Vim 4.0 and Vim 5.0.

INCOMPATIBLE CHANGES			|incompatible-6|

Cursor position in Visual mode		|curpos-visual|
substitute command Vi compatible	|substitute-CR|
global option values introduced		|new-global-values|
'fileencoding' changed			|fileencoding-changed|
Digraphs changed			|digraphs-changed|
Filetype detection changed		|filetypedetect-changed|
Unlisted buffers introduced		|new-unlisted-buffers|
CTRL-U in Command-line mode changed	|CTRL-U-changed|
Ctags gone				|ctags-gone|
Documentation reorganized		|documentation-6|
Modeless selection and clipboard	|modeless-and-clipboard|
Small incompatibilities			|incomp-small-6|

NEW FEATURES				|new-6|

Folding					|new-folding|
Vertically split windows		|new-vertsplit|
Diff mode				|new-diff-mode|
Easy Vim: click-and-type		|new-evim|
User manual				|new-user-manual|
Flexible indenting			|new-indent-flex|
Extended search patterns		|new-searchpat|
UTF-8 support				|new-utf-8|
Multi-language support			|new-multi-lang|
Plugin support				|new-plugins|
Filetype plugins			|new-filetype-plugins|
File browser				|new-file-browser|
Editing files over a network		|new-network-files|
Window for command-line editing		|new-cmdwin|
Debugging mode				|new-debug-mode|
Cursor in virtual position		|new-virtedit|
Debugger interface			|new-debug-itf|
Communication between Vims		|new-vim-server|
Buffer type options			|new-buftype|
Printing				|new-printing|
Ports					|ports-6|
Quickfix extended			|quickfix-6|
Operator modifiers			|new-operator-mod|
Search Path				|new-search-path|
Writing files improved			|new-file-writing|
Argument list				|new-argument-list|
Restore a View				|new-View|
Color schemes				|new-color-schemes|
Various new items			|new-items-6|

IMPROVEMENTS				|improvements-6|

COMPILE TIME CHANGES			|compile-changes-6|

BUG FIXES				|bug-fixes-6|

VERSION 6.1			|version-6.1|
Changed					|changed-6.1|
Added					|added-6.1|
Fixed					|fixed-6.1|

VERSION 6.2			|version-6.2|
Changed					|changed-6.2|
Added					|added-6.2|
Fixed					|fixed-6.2|

VERSION 6.3			|version-6.3|
Changed					|changed-6.3|
Added					|added-6.3|
Fixed					|fixed-6.3|

VERSION 6.4			|version-6.4|
Changed					|changed-6.4|
Added					|added-6.4|
Fixed					|fixed-6.4|

==============================================================================
INCOMPATIBLE CHANGES				*incompatible-6*

These changes are incompatible with previous releases.  Check this list if you
run into a problem when upgrading from Vim 5.x to 6.0


Cursor position in Visual mode			*curpos-visual*
------------------------------

When going from one window to another window on the same buffer while in
Visual mode, the cursor position of the other window is adjusted to keep the
same Visual area.  This can be used to set the start of the Visual area in one
window and the end in another.  In vim 5.x the cursor position of the other
window would be used, which could be anywhere and was not very useful.


Substitute command Vi compatible		*substitute-CR*
--------------------------------

The substitute string (the "to" part of the substitute command) has been made
Vi compatible.  Previously a CTRL-V had a special meaning and could be used to
prevent a <CR> to insert a line break.  This made it impossible to insert a
CTRL-V before a line break.  Now a backslash is used to prevent a <CR> to
cause a line break.  Since the number of backslashes is halved, it is still
possible to insert a line break at the end of the line.  This now works just
like Vi, but it's not compatible with Vim versions before 6.0.

When a ":s" command doesn't make any substitutions, it no longer sets the '[
and '] marks.  This is not related to Vi, since it doesn't have these marks.


Global option values introduced			*new-global-values*
-------------------------------

There are now global values for options which are local to a buffer or window.
Previously the local options were copied from one buffer to another.  When
editing another file this could cause option values from a modeline to be used
for the wrong file.  Now the global values are used when entering a buffer
that has not been used before.  Also, when editing another buffer in a window,
the local window options are reset to their global values.  The ":set" command
sets both the local and global values, this is still compatible.  But a
modeline only sets the local value, this is not backwards compatible.

":let &opt = val" now sets the local and global values, like ":set".  New
commands have been added to set the global or local value:
	:let &opt = val		like ":set"
	:let &g:opt = val	like ":setglobal"
	:let &l:opt = val	like ":setlocal"


'fileencoding' changed				*fileencoding-changed*
----------------------

'fileencoding' was used in Vim 5.x to set the encoding used inside all of Vim.
This was a bit strange, because it was local to a buffer and worked for all
buffers.  It could never be different between buffers, because it changed the
way text in all buffers was interpreted.
It is now used for the encoding of the file related to the buffer.  If you
still set 'fileencoding' it is likely to be overwritten by the detected
encoding from 'fileencodings', thus it is "mostly harmless".
The old FileEncoding autocommand now does the same as the new EncodingChanged
event.


Digraphs changed				*digraphs-changed*
----------------

The default digraphs now correspond to RFC1345.  This is very different from
what was used in Vim 5.x. |digraphs|


Filetype detection changed			*filetypedetect-changed*
--------------------------

The filetype detection previously was using the "filetype" autocommand group.
This caused confusion with the FileType event name (case is ignored).  The
group is now called "filetypedetect".  It still works, but if the "filetype"
group is used the autocommands will not be removed by ":filetype off".
   The support for 'runtimepath' has made the "myfiletypefile" and
"mysyntaxfile" mechanism obsolete.  They are still used for backwards
compatibility.

The connection between the FileType event and setting the 'syntax' option was
previously in the "syntax" autocommand group.  That caused confusion with the
Syntax event name.  The group is now called "syntaxset".

The distributed syntax files no longer contain "syntax clear".  That makes it
possible to include one in the other without tricks.  The syntax is now
cleared when the 'syntax' option is set (by an autocommand added from
synload.vim).  This makes the syntax cleared when the value of 'syntax' does
not correspond to a syntax file.  Previously the existing highlighting was
kept.


Unlisted buffers introduced			*new-unlisted-buffers*
---------------------------

There is now a difference between buffers which don't appear in the buffer
list and buffers which are really not in the buffer list.  Commands like
":ls", ":bnext", ":blast" and the Buffers menu will skip buffers not in the
buffer list. |unlisted-buffer|
The 'buflisted' option can be used to make a buffer appear in the buffer list
or not.

Several commands that previously added a buffer to the buffer list now create
an unlisted buffer.  This means that a ":bnext" and ":ball" will not find these
files until they have actually been edited.  For example, buffers used for the
alternative file by ":write file" and ":read file".
   Other commands previously completely deleted a buffer and now only remove
the buffer from the buffer list.  Commands relying on a buffer not to be
present might fail.  For example, a ":bdelete" command in an autocommand that
relied on something following to fail (was used in the automatic tests).
|:bwipeout| can be used for the old meaning of ":bdelete".

The BufDelete autocommand event is now triggered when a buffer is removed from
the buffer list.  The BufCreate event is only triggered when a buffer is
created that is added to the buffer list, or when an existing buffer is added
to the buffer list.  BufAdd is a new name for BufCreate.
The new BufNew event is for creating any buffer and BufWipeout for really
deleting a buffer.

When doing Insert mode completion, only buffers in the buffer list are
scanned.  Added the 'U' flag to 'complete' to do completion from unlisted
buffers.

Unlisted buffers are not stored in a viminfo file.


CTRL-U in Command-line mode changed		*CTRL-U-changed*
-----------------------------------

Using CTRL-U when editing the command line cleared the whole line.  Most
shells only delete the characters before the cursor.  Made it work like that.
(Steve Wall)

You can get the old behavior with CTRL-E CTRL-U: >
	:cnoremap <C-U> <C-E><C-U>


Ctags gone					*ctags-gone*
----------

Ctags is no longer part of the Vim distribution.  It's now a grown-up program
by itself, it deserves to be distributed separately.
Ctags can be found here: http://ctags.sf.net/.


Documentation reorganized			*documentation-6*
-------------------------

The documentation has been reorganized, an item may not be where you found it
in Vim 5.x.
- The user manual was added, some items have been moved to it from the
  reference manual.
- The quick reference is now in a separate file (so that it can be printed).

The examples in the documentation were previously marked with a ">" in the
first column.  This made it difficult to copy/paste them.  There is now a
single ">" before the example and it ends at a "<" or a non-blank in the first
column.  This also looks better without highlighting.

'helpfile' is no longer used to find the help tags file.  This allows a user
to add its own help files (e.g., for plugins).


Modeless selection and clipboard		*modeless-and-clipboard*
--------------------------------

The modeless selection is used to select text when Visual mode can't be used,
for example when editing the command line or at the more prompt.
In Vim 5.x the modeless selection was always used.  On MS-Windows this caused
the clipboard to be overwritten, with no way to avoid that.  The modeless
selection now obeys the 'a' and 'A' flags in 'guioptions' and "autoselect" and
"autoselectml" in 'clipboard'.  By default there is no automatic copy on
MS-Windows.  Use the |c_CTRL-Y| command to manually copy the selection.

To get the old behavior back, do this: >

	:set clipboard^=autoselectml guioptions+=A


Small incompatibilities				*incomp-small-6*
-----------------------

'backupdir', 'cdpath', 'directory', 'equalprg', 'errorfile', 'formatprg',
'grepprg', 'helpfile', 'makeef', 'makeprg', 'keywordprg', 'cscopeprg',
'viminfo' and 'runtimepath' can no longer be set from a modeline, for better
security.

Removed '_' from the 'breakat' default: It's commonly used in keywords.

The default for 'mousehide' is on, because this works well for most people.

The Amiga binary is now always compiled with "big" features.  The "big" binary
archive no longer exists.

The items "[RO]", "[+]", "[help]", "[Preview]" and "[filetype]" in
'statusline' no longer have a leading space.

Non-Unix systems: When expanding wildcards for the Vim arguments, don't use
'suffixes'.  It now works as if the shell had expanded the arguments.

The 'lisp', 'smartindent' and 'cindent' options are not switched off when
'paste' is set.  The auto-indenting is disabled when 'paste' is set, but
manual indenting with "=" still works.

When formatting with "=" uses 'cindent' or 'indentexpr' indenting, and there
is no change in indent, this is not counted as a change ('modified' isn't set
and there is nothing to undo).

Report 'modified' as changed when 'fileencoding' or 'fileformat' was set.
Thus it reflects the possibility to abandon the buffer without losing changes.

The "Save As" menu entry now edits the saved file.  Most people expect it to
work like this.

A buffer for a directory is no longer added to the Buffers menu.

Renamed <Return> to <Enter>, since that's what it's called on most keyboards.
Thus it's now the hit-enter prompt instead of the hit-return prompt.
Can map <Enter> just like <CR> or <Return>.

The default for the 'viminfo' option is now '20,"50,h when 'compatible' isn't
set.  Most people will want to use it, including beginners, but it required
setting the option, which isn't that easy.

After using ":colder" the newer error lists are overwritten.  This makes it
possible to use ":grep" to browse in a tree-like way.  Must use ":cnewer 99"
to get the old behavior.

The patterns in 'errorformat' would sometimes ignore case (MS-Windows) and
sometimes not (Unix).  Now case is always ignored.  Add "\C" to the pattern to
match case.

The 16 bit MS-DOS version is now compiled without the +listcmds feature
(buffer list manipulation commands).  They are not often needed and this
executable needs to be smaller.

'sessionoptions' now includes "curdir" by default.  This means that restoring
a session will result in the current directory being restored, instead of
going to the directory where the session file is located.

A session deleted all buffers, deleting all marks.  Now keep the buffer list,
it shouldn't hurt for some existing buffers to remain present.
When the argument list is empty ":argdel *" caused an error message.

No longer put the search pattern from a tag jump in the history.

Use "SpecialKey" highlighting for unprintable characters instead of "NonText".
The idea is that unprintable text or any text that's displayed differently
from the characters in the file is using "SpecialKey", and "NonText" is used
for text that doesn't really exist in the file.

Motif now uses the system default colors for the menu and scrollbar.  Used to
be grey.  It's still possible to set the colors with ":highlight" commands and
resources.

Formatting text with "gq" breaks a paragraph at a non-empty blank line.
Previously the line would be removed, which wasn't very useful.

":normal" does no longer hang when the argument ends in half a command.
Previously Vim would wait for more characters to be typed, without updating
the screen.  Now it pretends an <Esc> was typed.

Bitmaps for the toolbar are no longer searched for in "$VIM/bitmaps" but in
the "bitmaps" directories in 'runtimepath'.

Now use the Cmdline-mode menus for the hit-enter prompt instead of the Normal
mode menus.  This generally works better and allows using the "Copy" menu to
produce CTRL-Y to copy the modeless selection.

Moved the font selection from the Window to the Edit menu, together with the
other settings.

The default values for 'isfname' include more characters to make "gf" work
better.

Changed the license for the documentation to the Open Publication License.
This seemed fair, considering the inclusion of parts of the Vim book, which is
also published under the OPL.  The downside is that we can't force someone who
would sell copies of the manual to contribute to Uganda.

After  "ayy  don't let  ""yy  or  :let @" = val  overwrite the "a register.
Use the unnamed register instead.

MSDOS: A pattern "*.*" previously also matched a file name without a dot.
This was inconsistent with other versions.

In Insert mode, CTRL-O CTRL-\ CTRL-N {cmd} remains in Normal mode.  Previously
it would go back to Insert mode, thus confusing the meaning of CTRL-\ CTRL-N,
which is supposed to take us to Normal mode (especially in ":amenu").

Allow using ":" commands after an operator.  Could be used to implement a new
movement command.  Thus it no longer aborts a pending operator.

For the Amiga the "-d {device}" argument was possible.  When compiled with the
diff feature, this no longer works.  Use "-dev {device}" instead. |-dev|

Made the default mappings for <S-Insert> in Insert mode insert the text
literally, avoids that special characters like BS cause side effects.

Using ":confirm" applied to the rest of the line.  Now it applies only to the
command right after it.  Thus ":confirm if x | edit | endif" no longer works,
use ":if x | confirm edit | endif".  This was the original intention, that it
worked differently was a bug.

==============================================================================
NEW FEATURES						*new-6*

Folding							*new-folding*
-------

Vim can now display a buffer with text folded.  This allows overviewing the
structure of a file quickly.  It is also possible to yank, delete and put
folded text, for example to move a function to another position.

There is a whole bunch of new commands and options related to folding.
See |folding|.


Vertically split windows				*new-vertsplit*
------------------------

Windows can also be split vertically.  This makes it possible to have windows
side by side.  One nice use for this is to compare two similar files (see
|new-diff-mode|).  The 'scrollbind' option can be used to synchronize
scrolling.

A vertical split can be created with the commands:
	:vsplit	  or  CTRL-W v  or CTRL-W CTRL-V	|:vsplit|
	:vnew						|:vnew|
	:vertical {cmd}					|:vertical|
The last one is a modifier, which has a meaning for any command that splits a
window.  For example: >
	:vertical stag main
Will vertically split the window and jump to the tag "main" in the new window.

Moving from window to window horizontally can be done with the |CTRL-W_h| and
|CTRL-W_l| commands.  The |CTRL-W_k| and |CTRL-W_j| commands have been changed
to jump to the window above or below the cursor position.

The vertical and horizontal splits can be mixed as you like.  Resizing windows
is easy when using the mouse, just position the pointer on a status line or
vertical separator and drag it.  In the GUI a special mouse pointer shape
indicates where you can drag a status or separator line.

To resize vertically split windows use the |CTRL-W_<| and |CTRL-W_>| commands.
To make a window the maximum width use the CTRL-W | command |CTRL-W_bar|.

To force a new window to use the full width or height of the Vim window,
these two modifiers are available:
	:topleft {cmd}		New window appears at the top with full
				width or at the left with full height.
	:botright {cmd}		New window appears at the bottom with full
				width or at the right with full height.
This can be combined with ":vertical" to force a vertical split: >
	:vert bot dsplit DEBUG
This will open a window at the far right, occupying the full height of the Vim
window, with the cursor on the first definition of "DEBUG".
The help window is opened at the top, like ":topleft" was used, if the current
window is fewer than 80 characters wide.

A few options can be used to set the preferences for vertically split windows.
They work similar to their existing horizontal equivalents:
	horizontal	vertical ~
	'splitbelow'	'splitright'
	'winheight'	'winwidth'
	'winminheight'	'winminwidth'
It's possible to set 'winminwidth' to zero, so that temporarily unused windows
hardly take up space without closing them.

The new 'eadirection' option tells where 'equalalways' applies:
	:set eadirection=both		both directions
	:set eadirection=ver		equalize window heights
	:set eadirection=hor		equalize windows widths
This can be used to avoid changing window sizes when you want to keep them.

Since windows can become quite narrow with vertical splits, text lines will
often not fit.  The 'sidescrolloff' has been added to keep some context left
and right of the cursor.  The 'listchars' option has been extended with the
"precedes" item, to show a "<" for example, when there is text left off the
screen. (Utz-Uwe Haus)

"-O" command line argument: Like "-o" but split windows vertically. (Scott
Urban)

Added commands to move the current window to the very top (CTRL-W K), bottom
(CTRL-W J), left (CTRL-W H) and right (CTRL-W L).  In the new position the
window uses the full width/height of the screen.

When there is not enough room in the status line for both the file name and
the ruler, use up to half the width for the ruler.  Useful for narrow windows.


Diff mode						*new-diff-mode*
---------

In diff mode Vim shows the differences between two, three or four files.
Folding is used to hide the parts of the file that are equal.
Highlighting is used to show deleted and changed lines.
See |diff-mode|.

An easy way to start in diff mode is to start Vim as "vimdiff file1 file2".
Added the vimdiff manpage.

In a running Vim the |:diffsplit| command starts diff mode for the current
file and another file.  The |:diffpatch| command starts diff mode using the
current file and a patch file.  The |:diffthis| command starts diff mode for
the current window.

Differences can be removed with the |:diffget| and |:diffput| commands.

- The 'diff' option switches diff mode on in a window.
- The |:diffupdate| command refreshes the diffs.
- The 'diffopt' option changes how diffs are displayed.
- The 'diffexpr' option can be set how a diff is to be created.
- The 'patchexpr' option can be set how patch is applied to a file.
- Added the "diff" folding method.  When opening a window for diff-mode, set
  'foldlevel' to zero and 'foldenable' on, to close the folds.
- Added the DiffAdd, DiffChange, DiffDelete and DiffText highlight groups to
  specify the highlighting for differences.  The defaults are ugly...
- Unix: make a vimdiff symbolic link for "make install".
- Removed the now obsolete "vimdiff.vim" script from the distribution.
- Added the "[c" and "]c" commands to move to the next/previous change in diff
  mode.


Easy Vim: click-and-type				*new-evim*
------------------------

eVim stands for "Easy Vim".  This is a separate program, but can also be
started as "vim -y".

This starts Vim with 'insertmode' set to allow click-and-type editing.  The
$VIMRUNTIME/evim.vim script is used to add mappings and set options to be able
to do most things like Notepad.  This is only for people who can't stand two
modes.

eView does the same but in readonly mode.

In the GUI a CTRL-C now only interrupts when busy with something, not when
waiting for a character.  Allows using CTRL-C to copy text to the clipboard.


User manual						*new-user-manual*
-----------

The user manual has been added.  It is organised around editing tasks.  It
reads like a book, from start to end.  It should allow beginners to start
learning Vim.  It helps everybody to learn using the most useful Vim features.
It is much easier to read than the reference manual, but omits details.  See
|user-manual|.

The user manual includes parts of the Vim book by Steve Oualline |frombook|.
It is published under the OPL |manual-copyright|.

When syntax highlighting is not enabled, the characters in the help file which
mark examples ('>' and '<') and header lines ('~') are replaced with a space.

When closing the help window, the window layout is restored from before
opening it, if the window layout didn't change since then.
When opening the help window, put it at the top of the Vim window if the
current window is fewer than 80 characters and not full width.


Flexible indenting					*new-indent-flex*
------------------

Automatic indenting is now possible for any language.  It works with a Vim
script, which makes it very flexible to compute the indent.

The ":filetype indent on" command enables using the provided indent scripts.
This is explained in the user manual: |30.3|.

The 'indentexpr' option is evaluated to get the indent for a line.  The
'indentkeys' option tells when to trigger re-indenting.  Normally these
options are set from an indent script.  Like Syntax files, indent scripts will
be created and maintained by many people.


Extended search patterns				*new-searchpat*
------------------------

Added the possibility to match more than one line with a pattern. (partly by
Loic Grenie)
New items in a search pattern for multi-line matches:
\n		match end-of-line, also in []
\_[]		match characters in range and end-of-line
\_x		match character class and end-of-line
\_.		match any character or end-of-line
\_^		match start-of-line, can be used anywhere in the regexp
\_$		match end-of-line, can be used anywhere in the regexp

Various other new items in search patterns:
\c		ignore case for the whole pattern
\C		match case for the whole pattern
\m		magic on for the following
\M		magic off for the following
\v		make following characters "very magic"
\V		make following characters "very nomagic"

\@!		don't match atom before this.
		Example: "foo\(bar\)\@!" matches "foo " but not "foobar".
\@=		match atom, resulting in  zero-width match
		Example: "foo\(bar\)\@=" matches "foo" in "foobar".
\@<!		don't match preceding atom before the current position
\@<=		match preceding atom before the current position
\@>		match preceding atom as a subexpression

\&		match only when branch before and after it match

\%[]		optionally match a list of atoms; "end\%[if]" matches "end",
		"endi" and "endif"
\%(\)		like \(\), but without creating a back-reference; there can be
		any number of these, overcomes the limit of nine \( \) pairs
\%^		match start-of-file (Chase Tingley)
\%$		match end-of-file (Chase Tingley)
\%#		Match with the cursor position. (Chase Tingley)
\?		Just like "\=" but can't be used in a "?" command.

\%23l		match in line 23
\%<23l		match before line 23
\%>23l		match after line 23
\%23c, \%<23c, \%>23c   match in/before/after column 23
\%23v, \%<23v, \%>23v	match in/before/after virtual column 23


For syntax items:
\z(...\)	external reference match set (in region start pattern)
\z1 - \z9	external reference match use (in region skip or end pattern)
	(Scott Bigham)

\zs		use position as start of match
\ze		use position as end of match

Removed limit of matching only up to 32767 times with *, \+, etc.

Added support to match multi-byte characters. (partly by Muraoka Taro)
Made "\<" and "\>" work for UTF-8. (Muraoka Taro)


UTF-8 support						*new-utf-8*
-------------

Vim can now edit files in UTF-8 encoding.  Up to 31 bit characters can be
used, but only 16 bit characters are displayed.  Up to two combining
characters are supported, they overprint the preceding character.
Double-wide characters are also supported.  See |UTF-8|.

UCS-2, UCS-4 and UTF-16 encodings are supported too, they are converted to
UTF-8 internally.  There is also support for editing Unicode files in a Latin1
environment.  Other encodings are converted with iconv() or an external
converter specified with 'charconvert'.

Many new items for Multi-byte support:
- Added 'encoding' option: specifies character encoding used inside Vim.  It
  can be any 8-bit encoding, some double-byte encodings or Unicode.
  It is initialized from the environment when a supported value is found.
- Added 'fileencoding' and 'fileencodings': specify character coding in a
  file, similar to 'fileformat' and 'fileformats'.
  When 'encoding' is "utf-8" and 'fileencodings' is "utf-8,latin1" this will
  automatically switch to latin1 if a file does not contain valid UTF-8.
- Added 'bomb' option and detection of a BOM at the start of a file.  Can be
  used with "ucs-bom" in 'fileencodings' to automatically detect a Unicode
  file if it starts with a BOM.  Especially useful on MS-Windows (NT and
  2000), which uses ucs-2le files with a BOM (e.g., when exporting the
  registry).
- Added the 'termencoding' option: Specifies the encoding used for the
  terminal.  Useful to put Vim in utf-8 mode while in a non-Unicode locale: >
    :let &termencoding = &encoding
    :set encoding=utf-8
- When 'viminfo' contains the 'c' flag, the viminfo file is converted from the
  'encoding' it was written with to the current 'encoding'.
- Added ":scriptencoding" command: convert lines in a sourced script to
  'encoding'.  Useful for menu files.
- Added 'guifontwide' to specify a font for double-wide characters.
- Added Korean support for character class detection.  Also fix cls() in
  search.c. (Chong-Dae Park)
- Win32: Typing multi-byte characters without IME. (Alexander Smishlajev)
- Win32 with Mingw: compile with iconv library. (Ron Aaron)
- Win32 with MSVC: dynamically load iconv.dll library. (Muraoka Taro)
- Make it possible to build a version with multi-byte and iconv support with
  Borland 5.5.  (Yasuhiro Matsumoto)
- Added 'delcombine' option: Delete combining character separately. (Ron
  Aaron)
- The "xfontset" feature isn't required for "xim".  These are now two
  independent features.
- XIM: enable XIM when typing a language character (Insert mode, Search
  pattern, "f" or "r" command).  Disable XIM when typing a Normal mode
  command.
- When the XIM is active, show "XIM" in the 'showmode' message. (Nam SungHyun)
- Support "CursorIM" for XIM.  (Nam SungHyun)
- Added 'm' flag to 'formatoptions': When wrapping words, allow splitting at
  each multibyte character, not only at a space.
- Made ":syntax keyword" work with multi-byte characters.
- Added support for Unicode upper/lowercase flipping and comparing. (based on
  patch by Raphael Finkel)
  Let "~" on multi-byte characters that have a third case ("title case")
  switch between the three cases. (Raphael Finkel)

Allow defining digraphs for multi-byte characters.
Added RFC1345 digraphs for Unicode.
Most Normal mode commands that accept a character argument, like "r", "t" and
"f" now accept a digraph.  The 'D' flag in 'cpoptions' disables this to remain
Vi compatible.

Added Language mapping and 'keymap' to be able to type multi-byte characters:
- Added the ":lmap" command and friends: Define mappings that are used when
  typing characters in the language of the text.  Also for "r", "t", etc.  In
  Insert and Command-line mode CTRL-^ switches the use of the mappings on/off.
  CTRL-^ also toggles the use of an input method when no language mappings are
  present.  Allows switching the IM back on halfway typing.
- "<char-123>" argument to ":map", allows to specify the decimal, octal or
  hexadecimal value of a character.
- Implemented the 'keymap' option: Load a keymap file.  Uses ":lnoremap" to
  define mappings for the keymap.  The new ":loadkeymap" command is used in
  the keymap file.
- Added 'k' flag in 'statusline': Value of "b:keymap_name" or 'keymap' when
  it's being used.  Uses "<lang>" when no keymap is loaded and ":lmap"s are
  active.  Show this text in the default statusline too.
- Added the 'iminsert' and 'imsearch' options: Specify use of langmap mappings
  and Input Method with an option. (Muraoka Taro)
  Added 'imcmdline' option: When set the input method is always enabled when
  starting to edit a command line.  Useful for a XIM that uses dead keys to
  type accented characters.
  Added 'imactivatekey' option to better control XIM.  (Muraoka Taro)
- When typing a mapping that's not finished yet, display the last character
  under the cursor in Insert mode and Command-line mode.  Looks good for dead
  characters.
- Made the 'langmap' option recognize multi-byte characters.  But mapping only
  works for 8-bit characters.  Helps when using UTF-8.
- Use a different cursor for when ":lmap" mappings are active.  Can specify
  two highlight groups for an item in 'guicursor'.  By default "lCursor" and
  "Cursor" are equal, the user must set a color he likes.
  Use the cursor color for hangul input as well. (Sung-Hyun Nam)
- Show "(lang)" for 'showmode' when language mapping is enabled.
- UTF-8: Made "r" work with a ":lmap" that includes a composing character.
  Also works for "f", which now works to find a character that includes a
  composing character.

Other multi-byte character additions:
- Support double-byte single-width characters for euc-jp: Characters starting
  with 0x8E.  Added ScreenLines2[] to store the second byte.


Multi-language support					*new-multi-lang*
----------------------

The messages used in Vim can be translated.  Several translations are
available.  This uses the gettext mechanism.  It allows adding a translation
without recompiling Vim.  |multi-lang| (partly by Marcin Dalecki)

The translation files are in the src/po directory.  The src/po/README.txt file
explains a few things about doing a translation.

Menu translations are available as well.  This uses the new |:menutranslate|
command.  The translations are found in the runtime directory "lang".  This
allows a user to add a translation.

Added |:language| command to set the language (locale) for messages, time and
character type.  This allows switching languages in Vim without changing the
locale outside of Vim.

Made it possible to have vimtutor use different languages.  (Eduardo Fernandez)
Spanish (Eduardo Fernandez), Italian (Antonio Colombo), Japanese (Yasuhiro
Matsumoto) and French (Adrien Beau) translations are included.
Added "vimtutor.bat": script to start Vim on a copy of the tutor file for
MS-Windows. (Dan Sharp)

- Added v:lang variable to be able to get current language setting.
  (Marcin Dalecki)  Also v:lc_time and v:ctype.
- Make it possible to translate the dialogs used by the menus.  Uses global
  "menutrans_" variables.  ":menutrans clear" deletes them.
- removed "broken locale" (Marcin Dalecki).
- Don't use color names in icons, use RGB values.  The names could be
  translated.
- Win32: Added global IME support (Muraoka)
- Win32: Added dynamic loading of IME support.
- ":messages" prints a message about who maintains the messages or the
  translations.  Useful to find out where to make a remark about a wrong
  translation.
- --disable-nls argument for configure: Disable use of gettext(). (Sung-Hyun
  Nam)
- Added NLS support for Win32 with the MingW compiler. (Eduardo Fernandez)
- When available, call bind_textdomain_codeset() to have gettext() translate
  messages to 'encoding'.  This requires GNU gettext 0.10.36 or later.
- Added gettext support for Win32.  This means messages will be translated
  when the locale is set and libintl.dll can be found.  (Muraoka Taro)
  Also made it work with MingW compiler.  (Eduardo Fernandez)
  Detect the language and set $LANG to get the appropriate translated messages
  (if supported).  Also use $LANG to select a language, v:lang is a very
  different kind of name.
- Made gvimext.dll use translated messages, if possible. (Yasuhiro Matsumoto)


Plugin support					*new-plugins*
--------------

To make it really easy to load a Vim script when starting Vim, the "plugin"
runtime directory can be used.  All "*.vim" files in it will be automatically
loaded.  For Unix, the directory "~/.vim/plugin" is used by default.  The
'runtimepath' option can be set to look in other directories for plugins.
|load-plugins| |add-plugin|

The |:runtime| command has been added to load one or more files in
'runtimepath'.

Standard plugins:
netrw.vim - Edit files over a network |new-network-files|
gzip.vim - Edit compressed files
explorer.vim - Browse directories |new-file-browser|

Added support for local help files. |add-local-help|.
When searching for help tags, all "doc/tags" files in 'runtimepath' are used.
Added the ":helptags" command: Generate a tags file for a help directory.
The first line of each help file is automagically added to the "LOCAL
ADDITIONS" section in doc/help.txt.

Added the <unique> argument to ":map": only add a mapping when it wasn't
defined before.

When displaying an option value with 'verbose' set will give a message about
where the option was last set.  Very useful to find out which script did set
the value.

The new |:scriptnames| command displays a list of all scripts that have been
sourced.

GUI: For Athena, Motif and GTK look for a toolbar bitmap in the "bitmaps"
directories in 'runtimepath'.  Allows adding your own bitmaps.


Filetype plugins				*new-filetype-plugins*
-----------------

A new group of files has been added to do settings for specific file types.
These can be options and mappings which are specifically used for one value of
'filetype'.

The files are located in "$VIMRUNTIME/ftplugin".  The 'runtimepath' option
makes it possible to use several sets of plugins: Your own, system-wide,
included in the Vim distribution, etc.

To be able to make this work, several features were added:
- Added the "s:" variables, local to a script.  Avoids name conflicts with
  global variables.  They can be used in the script and in functions,
  autocommands and user commands defined in the script.  They are kept between
  invocations of the same script.  |s:var|
- Added the global value for local options.  This value is used when opening
  a new buffer or editing another file.  The option value specified in a
  modeline or filetype setting is not carried over to another buffer.
  ":set" sets both the local and the global value.
  ":setlocal" sets the local option value only.
  ":setglobal" sets or displays the global value for a local option.
  ":setlocal name<" sets a local option to its global value.
- Added the buffer-local value for some global options: 'equalprg', 'makeprg',
  'errorformat', 'grepprg', 'path', 'dictionary', 'thesaurus', 'tags',
  'include' and 'define'.  This allows setting a local value for these global
  options, without making it incompatible.
- Added mappings and abbreviations local to a buffer: ":map <buffer>".
- In a mapping "<Leader>" can be used to get the value of the "mapleader"
  variable.  This simplifies mappings that use "mapleader".  "<Leader>"
  defaults to "\".  "<LocalLeader>" does the same with "maplocalleader".  This
  is to be used for mappings local to a buffer.
- Added <SID> Script ID to define functions and mappings local to a script.
- Added <script> argument to ":noremap" and ":noremenu": Only remap
  script-local mappings.  Avoids that mappings from other scripts get in the
  way, but does allow using mappings defined in the script.
- User commands can be local to a buffer: ":command -buffer".

The new ":setfiletype" command is used in the filetype detection autocommands,
to avoid that 'filetype' is set twice.


File browser						*new-file-browser*
------------

When editing a directory, the explorer plugin will list the files in the
directory.  Pressing <Enter> on a file name edits that file.  Pressing <Enter>
on a directory moves the browser to that directory.

There are several other possibilities, such as opening a file in the preview
window, renaming files and deleting files.


Editing files over a network				*new-network-files*
----------------------------

Files starting with scp://, rcp://, ftp:// and http:// are recognized as
remote files.  An attempt is made to access these files with the indicated
method.  For http:// only reading is possible, for the others writing is also
supported.  Uses the netrw.vim script as a standard "plugin". |netrw|

Made "gf" work on a URL.  It no longer assumes the file is local on the
computer (mostly didn't work anyway, because the full path was required).
Adjusted test2 for this.

Allow using a URL in 'path'.  Makes ":find index.html" work.

GTK: Allow dropping a http:// and ftp:// URL on Vim.  The netrw plugin takes
care of downloading the file. (MiKael Berthe)


Window for command-line editing				*new-cmdwin*
-------------------------------

The Command-line window can be used to edit a command-line with Normal and
Insert mode commands.  When it is opened it contains the history.  This allows
copying parts of previous command lines. |cmdwin|

The command-line window can be opened from the command-line with the key
specified by the 'cedit' option (like Nvi).  It can also be opened directly
from Normal mode with "q:", "q/" and "q?".

The 'cmdwinheight' is used to specify the initial height of the window.

In Insert mode CTRL-X CTRL-V can be used to complete an Ex command line, like
it's done on the command-line.  This is also useful for writing Vim scripts!

Additionally, there is "improved Ex mode".  Entered when Vim is started as
"exim" or "vim -E", and with the "gQ" command.  Works like repeated use of
":", with full command-line editing and completion. (Ulf Carlsson)


Debugging mode						*new-debug-mode*
--------------

In debugging mode sourced scripts and user functions can be executed line by
line.  There are commands to step over a command or step into it. |debug-mode|

Breakpoints can be set to run until a certain line in a script or user
function is executed. |:breakadd|

Debugging can be started with ":debug {cmd}" to debug what happens when a
command executes.  The |-D| argument can be used to debug while starting up.


Cursor in virtual position				*new-virtedit*
--------------------------

Added the 'virtualedit' option: Allow positioning the cursor where there is no
actual character in Insert mode, Visual mode or always. (Matthias Kramm)
This is especially useful in Visual-block mode.  It allows positioning a
corner of the area where there is no text character.  (Many improvements by
Chase Tingley)


Debugger interface					*new-debug-itf*
------------------

This was originally made to work with Sun Visual Workshop. (Gordon Prieur)
See |debugger.txt|, |sign.txt| and |workshop.txt|.

Added the ":sign" command to define and place signs.  They can be displayed
with two ASCII characters or an icon.  The line after it can be highlighted.
Useful to display breakpoints and the current PC position.

Added the |:wsverb| command to execute debugger commands.

Added balloon stuff: 'balloondelay' and 'ballooneval' options.

Added "icon=" argument for ":menu".  Allows defining a specific icon for a
ToolBar item.


Communication between Vims				*new-vim-server*
--------------------------

Added communication between two Vims.  Makes it possible to send commands from
one Vim to another.  Works for X-Windows and MS-Windows |clientserver|.

Use "--remote" to have files be edited in an already running Vim.
Use "--remote-wait" to do the same and wait for the editing to finish.
Use "--remote-send" to send commands from one Vim to another.
Use "--remote-expr" to have an expression evaluated in another Vim.
Use "--serverlist" to list the currently available Vim servers.  (X only)
There are also functions to communicate between the server and the client.
|remote_send()| |remote_expr()|

(X-windows version implemented by Flemming Madsen, MS-Windows version by Paul
Moore)

Added the command server name to the window title, so you can see which server
name belongs to which Vim.

Removed the OleVim directory and SendToVim.exe and EditWithVim.exe from the
distribution.  Can now use "gvim --remote" and "gvim --remote-send", which is
portable.

GTK+: Support running Vim inside another window.  Uses the --socketid argument
(Neil Bird)


Buffer type options					*new-buftype*
-------------------

The 'buftype' and 'bufhidden' options have been added.  They can be set to
have different kinds of buffers.  For example:
- 'buftype' = "quickfix": buffer with error list
- 'buftype' = "nofile" and 'bufhidden' = "delete": scratch buffer that will be
  deleted as soon as there is no window displaying it.

'bufhidden' can be used to overrule the 'hidden' option for one buffer.

In combination with 'buflisted' and 'swapfile' this offers the possibility to
use various kinds of special buffers.  See |special-buffers|.


Printing						*new-printing*
--------

Included first implementation of the ":hardcopy" command for printing
to paper.  For MS-Windows any installed printer can be used.  For other
systems a PostScript file is generated, which can be printed with the
'printexpr' option.
(MS-Windows part by Vince Negri, Vipin Aravind, PostScript by Vince Negri and
Mike Williams)

Made ":hardcopy" work with multi-byte characters. (Muraoka Taro, Yasuhiro
Matsumoto)

Added options to tune the way printing works: (Vince Negri)
- 'printoptions' defines various things.
- 'printheader' specifies the header format.  Added "N" field to 'statusline'
  for the page number.
- 'printfont' specifies the font name and attributes.
- 'printdevice' defines the default printer for ":hardcopy!".


Ports							*ports-6*
-----

Port to OS/390 Unix (Ralf Schandl)
- A lot of changes to handle EBCDIC encoding.
- Changed Ctrl('x') to Ctrl_x define.

Included jsbmouse support. (Darren Garth)
Support for dec mouse in Unix. (Steve Wall)

Port to 16-bit MS Windows (Windows 3.1x) (Vince Negri)

Port to QNX.  Supports the Photon GUI, mouse, etc. (Julian Kinraid)

Allow cross-compiling the Win32 version with Make_ming.mak. (Ron Aaron)
Added Python support for compiling with Mingw. (Ron Aaron)

Dos 32 bit: Added support the Windows clipboard. (David Kotchan)

Win32: Dynamically load Perl and Python.  Allows compiling Vim with these
interfaces and will try to find the DLLs at runtime. (Muraoka Taro)

Compiling the Win32 GUI with Cygwin.  Also compile vimrun, dosinst and
uninstall.  (Gerfried)

Mac: Make Vim compile with the free MPW compiler supplied by Apple.  And
updates for CodeWarrior. (Axel Kielhorn)

Added typecasts and ifdefs as a start to make Vim work on Win64 (George
Reilly)


Quickfix extended					*quickfix-6*
-----------------

Added the "error window".  It contains all the errors of the current error
list.  Pressing <Enter> in a line makes Vim jump to that line (in another
window).  This makes it easy to navigate through the error list.
|quickfix-window|.

- |:copen| opens the quickfix window.
- |:cclose| closes the quickfix window.
- |:cwindow| takes care that there is a quickfix window only when there are
  recognized errors. (Dan Sharp)

- Quickfix also knows "info", next to "warning" and "error" types.  "%I" can be
  used for the start of a multi-line informational message. (Tony Leneis)
- The "%p" argument can be used in 'errorformat' to get the column number from
  a line where "^" points to the column. (Stefan Roemer)
- When using "%f" in 'errorformat' on a DOS/Windows system, also include "c:"
  in the filename, even when using "%f:".


Operator modifiers					*new-operator-mod*
------------------

Insert "v", "V" or CTRL-V between an operator and a motion command to force
the operator to work characterwise, linewise or blockwise. |o_v|


Search Path						*new-search-path*
-----------

Vim can search in a directory tree not only in downwards but also upwards.
Works for the 'path', 'cdpath' and 'tags' options. (Ralf Schandl)

Also use "**" for 'tags' option. (Ralf Schandl)

Added 'includeexpr', can be used to modify file name found by 'include'
option.
Also use 'includeexpr' for "gf" and "<cfile>" when the file can't be found
without modification.  Useful for doing "gf" on the name after an include or
import statement.

Added the 'cdpath' option: Locations to find a ":cd" argument. (Raf)

Added the 'suffixesadd' option: Suffixes to be added to a file name when
searching for a file for the "gf", "[I", etc. commands.


Writing files improved					*new-file-writing*
----------------------

Added the 'backupcopy' option: Select whether a file is to be copied or
renamed to make a backup file.  Useful on Unix to speed up writing an ordinary
file.  Useful on other systems to preserve file attributes and when editing a
file on a Unix filesystem.

Added the 'autowriteall' option.  Works like 'autowrite' but for more
commands.

Added the 'backupskip' option: A list of file patterns to skip making a backup
file when it matches.  The default for Unix includes "/tmp/*", this makes
"crontab -e" work.

Added support for Access Control Lists (ACL) for FreeBSD and Win32.  The ACL
is copied from the original file to the new file (or the backup if it's
copied).
ACL is also supported for AIX, Solaris and generic POSIX. (Tomas Ogren)
And on SGI.


Argument list						*new-argument-list*
-------------

The support for the argument list has been extended.  It can now be
manipulated to contain the files you want it to contain.

The argument list can now be local to a window.  It is created with the
|:arglocal| command.  The |:argglobal| command can be used to go back to the
global argument list.

The |:argdo| command executes a command on all files in the argument list.

File names can be added to the argument list with |:argadd|.  File names can
be removed with |:argdelete|.

"##" can be used like "#", it is replaced by all the names in the argument
list concatenated.  Useful for ":grep foo ##".

The |:argedit| adds a file to the argument list and edits it.  Like ":argadd"
and then ":edit".


Restore a View						*new-View*
--------------

The ":mkview" command writes a Vim script with the settings and mappings for
one window.  When the created file is sourced, the view of the window is
restored.  It's like ":mksession" for one window.
The View also contains the local argument list and manually created, opened
and closed folds.

Added the ":loadview" command and the 'viewdir' option: Allows for saving and
restoring views of a file with simple commands.  ":mkview 1" saves view 1 for
the current file, ":loadview 1" loads it again.  Also allows quickly switching
between two views on one file.  And saving and restoring manual folds and the
folding state.

Added 'viewoptions' to specify how ":mkview" works.

":mksession" now also works fine with vertical splits.  It has been further
improved and restores the view of each window.  It also works properly with
preview and quickfix windows.

'sessionoptions' is used for ":mkview" as well.
Added "curdir" and "sesdir" to 'sessionoptions'.  Allows selection of what
the current directory will be restored to.

The session file now also contains the argument list(s).


Color schemes						*new-color-schemes*
-------------

Support for loading a color scheme.  Added the ":colorscheme" command.
Automatically add menu entries for available schemes.
Should now properly reset the colors when 'background' or 't_Co' is changed.
":highlight clear" sets the default colors again.
":syntax reset" sets the syntax highlight colors back to the defaults.
For ":set bg&" guess the value.  This allows a color scheme to switch back to
the default colors.
When syntax highlighting is switched on and a color scheme was defined, reload
the color scheme to define the colors.


Various new items					*new-items-6*
-----------------

Normal mode commands: ~

"gi"		Jump to the ^ mark and start Insert mode.  Also works when the
		mark is just after the line. |gi|

"g'm" and "g`m"
		Jump to a mark without changing the jumplist.  Now you can use
		g`" to jump to the last known position in a file without side
		effects.  Also useful in mappings.

[', [`, ]' and ]`
		move the cursor to the next/previous lowercase mark.

g_		Go to last non-blank in line. (Steve Wall)


Options: ~

'autoread'	When detected that a file changed outside of Vim,
		automatically read a buffer again when it's not changed.
		It has a global and a local value.  Use ":setlocal autoread<"
		to go back to using the global value for 'autoread'.

'debug'		When set to "msg" it will print error messages that would
		otherwise be omitted.  Useful for debugging 'indentexpr' and
		'foldexpr'.

'lispwords'	List of words used for lisp indenting.  It was previously hard
		coded.  Added a number of Lisp names to the default.

'fold...'	Many new options for folding.

'modifiable'	When off, it is impossible to make changes to a buffer.
		The %m and %M items in 'statusline' show a '-'.

'previewwindow' Set in the preview window.  Used in a session file to mark a
		window as the preview window.

'printfont'
'printexpr'
'printheader'
'printdevice'
'printoptions'	for ":hardcopy".

'buflisted'	Makes a buffer appear in the buffer list or not.

Use "vim{version}:" for modelines, only to be executed when the version is
>= {version}.  Also "vim>{version}", "vim<{version}" and "vim={version}".


Ex commands: ~

:sav[eas][!] {file}
		Works like ":w file" and ":e #", but without loading the file
		again and avoiding other side effects. |:saveas|

:silent[!] {cmd}
		Execute a command silently.  Also don't use a delay that would
		come after the message.  And don't do 'showmatch'.
		RISCOS: Removed that "!~cmd" didn't output anything, and
		didn't wait for <Enter> afterwards.  Can use ":silent !cmd"
		now.
:menu <silent>  Add a menu that won't echo Ex commands.
:map <silent>   Add a mapping that won't echo Ex commands.

:checktime	Check for changed buffers.

:verbose {cmd}  Set 'verbose' for one command.

:echomsg {expr}
:echoerr {expr} Like ":echo" but store the message in the history. (Mark
		Waggoner)

:grepadd	Works just like ":grep" but adds to the current error list
		instead of defining a new list. |:grepadd|

:finish		Finish sourcing a file.  Can be used to skip the rest of a Vim
		script. |:finish|

:leftabove
:aboveleft	Split left/above current window.

:rightbelow
:belowright	Split right/below current window.

:first, :bfirst, :ptfirst, etc.
		Alias for ":rewind".  It's more logical compared to ":last".

:enew		Edit a new, unnamed buffer.  This is needed, because ":edit"
		re-edits the same file. (Wall)

:quitall	Same as ":qall".

:match		Define match highlighting local to a window.  Allows
		highlighting an item in the current window without interfering
		with syntax highlighting.

:menu enable
:menu disable	Commands to enable/disable menu entries without removing them.
		(Monish Shah)

:windo		Execute a command in all windows.
:bufdo		Execute a command in all buffers.

:wincmd		Window (CTRL-W) command.  Useful when a Normal mode command
		can't be used (e.g., for a CursorHold autocommand).  See
		|CursorHold-example| for a nice application with it.

:lcd and :lchdir
		Set local directory for a window. (Benjie Chen)

:hide {command}
		Execute {command} with 'hidden' set.

:emenu		in Visual mode to execute a ":vmenu" entry.

:popup		Pop up a popup menu.

:redraw		Redraw the screen even when busy with a script or function.

:hardcopy	Print to paper.

:compiler	Load a Vim script to do settings for a specific compiler.

:z#		List numbered lines. (Bohdan Vlasyuk)


New marks: ~

'( and ')	Begin or end of current sentence.  Useful in Ex commands.
'{ and '}	Begin or end of current paragraph.  Useful in Ex commands.
'.		Position of the last change in the current buffer.
'^		Position where Insert mode was stopped.

Store the ^ and . marks in the viminfo file.  Makes it possible to jump to the
last insert position or changed text.


New functions: ~
argidx()	Current index in argument list.
buflisted()	Checks if the buffer exists and has 'buflisted' set.
cindent()	Get indent according to 'cindent'.
eventhandler()	Returns 1 when inside an event handler and interactive
		commands can't be used.
executable()	Checks if a program or batch script can be executed.
filewritable()	Checks if a file can be written. (Ron Aaron)
foldclosed()	Find out if there is a closed fold. (Johannes Zellner).
foldcloseend()	Find the end of a closed fold.
foldlevel()	Find out the foldlevel. (Johannes Zellner)
foreground()	Move the GUI window to the foreground.
getchar()	Get one character from the user.  Can be used to define a
		mapping that takes an argument.
getcharmod()	Get last used key modifier.
getbufvar()	gets the value of an option or local variable in a buffer (Ron
		Aaron)
getfsize()	Return the size of a file.
getwinvar()	gets the value of an option or local variable in a window (Ron
		Aaron)
globpath()	Find matching files in a list of directories.
hasmapto()	Detect if a mapping to a string is already present.
iconv()		Convert a string from one encoding to another.
indent()	gets the indent of a line (Ron Aaron)
inputdialog()	Like input() but use a GUI dialog when possible.  Currently
		only works for Win32, Motif, Athena and GTK.
		Use inputdialog() for the Edit/Settings/Text Width menu.  Also
		for the Help/Find.. and Toolbar FindHelp items.
		(Win32 support by Thore B. Karlsen)
		(Win16 support by Vince Negri)
inputsecret()	Ask the user to type a string without showing the typed keys.
		(Charles Campbell)
libcall()	for Unix (Neil Bird, Johannes Zellner, Stephen Wall)
libcallnr()	for Win32 and Unix
lispindent()	Get indent according to 'lisp'.
mode()		Return a string that indicates the current mode.
nextnonblank()	Skip blank lines forwards.
prevnonblank()	Skip blank lines backwards.  Useful to for indent scripts.
resolve()	MS-Windows: resolve a shortcut to the file it points to.
		Unix: resolve a symbolic link.
search()	Search for a pattern.
searchpair()	Search for matching pair.  Can be used in indent files to find
		the "if" matching an endif.
setbufvar()	sets an option or variable local to a buffer (Ron Aaron)
setwinvar()	sets an option or variable local to a window (Ron Aaron)
stridx()	Search for first occurrence of one string in another.
strridx()	Search for last occurrence of one string in another.
tolower()	Convert string to all-lowercase.
toupper()	Convert string to all-uppercase.
type()		Check the type of an expression.
wincol()	window column of the cursor
winwidth()	Width of a window. (Johannes Zellner)
winline()	window line of the cursor


Added expansion of curly braces in variable and function names.  This can be
used for variable names that include the value of an option.  Or a primitive
form of arrays. (Vince Negri)


New autocommand events: ~
BufWinEnter	Triggered when a buffer is displayed in a window, after using
		the modelines.  Can be used to load a view.
BufWinLeave	Triggered when a buffer is no longer in a window.  Also
		triggered when exiting Vim.  Can be used to save views.
FileChangedRO	Triggered before making the first change to a read-only file.
		Can be used to check-out the file. (Scott Graham)
TermResponse	Triggered when the terminal replies to the version-request.
		The v:termresponse internal variable holds the result.  Can be
		used to react to the version of the terminal.  (Ronald Schild)
FileReadCmd	Triggered before reading a file.
BufReadCmd	Triggered before reading a file into a buffer.
FileWriteCmd	Triggered before writing a file.
BufWriteCmd	Triggered before writing a buffer into a file.
FileAppendCmd	Triggered before appending to a file.
FuncUndefined	Triggered when a user function is not defined. (Ron Aaron)

The autocommands for the *Cmd events read or write the file instead of normal
file read/write.  Use this in netrw.vim to be able to edit files on a remote
system. (Charles Campbell)


New Syntax files: ~

bdf		BDF font definition (Nikolai Weibull)
catalog		SGML catalog (Johannes Zellner)
debchangelog	Debian Changelog (Wichert Akkerman)
debcontrol	Debian Control (Wichert Akkerman)
dot		dot (Markus Mottl)
dsl		DSSSL syntax (Johannes Zellner)
eterm		Eterm configuration (Nikolai Weibull)
indent		Indent profile (Nikolai Weibull)
lftp		LFTP (Nikolai Weibull)
lynx		Lynx config (Doug Kearns)
mush		mush sourcecode (Bek Oberin)
natural		Natural (Marko Leipert)
pilrc		Pal resource compiler (Brian Schau)
plm		PL/M (Philippe Coulonges)
povini		Povray configuration (David Necas)
ratpoison	Ratpoison config/command (Doug Kearns)
readline	readline config (Nikolai Weibull)
screen		Screen RC (Nikolai Weibull)
specman		Specman (Or Freund)
sqlforms	SQL*Forms (Austin Ziegler)
terminfo	terminfo (Nikolai Weibull)
tidy		Tidy configuration (Doug Kearns)
wget		Wget configuration (Doug Kearns)


Updated many syntax files to work both with Vim 5.7 and 6.0.

Interface to Ruby. (Shugo Maeda)
Support dynamic loading of the Ruby interface on MS-Windows. (Muraoka Taro)
Support this for Mingw too. (Benoit Cerrina)

Win32: Added possibility to load TCL dynamically. (Muraoka Taro)
Also for Borland 5.5. (Dan Sharp)

Win32: When editing a file that is a shortcut (*.lnk file), edit the file it
links to.  Unless 'binary' is set, then edit the shortcut file itself.
(Yasuhiro Matsumoto)

The ":command" command now accepts a "-bar" argument.  This allows the user
command to be followed by "| command".

The preview window is now also used by these commands:
- |:pedit| edits the specified file in the preview window
- |:psearch| searches for a word in included files, like |:ijump|, and
  displays the found text in the preview window.
Added the CTRL-W P command: go to preview window.

MS-DOS and MS-Windows also read the system-wide vimrc file $VIM/vimrc.  Mostly
for NT systems with multiple users.

A double-click of the mouse on a character that has a "%" match selects from
that character to the match.  Similar to "v%".

"-S session.vim" argument: Source a script file when starting up.  Convenient
way to start Vim with a session file.

Added "--cmd {command}" Vim argument to execute a command before a vimrc file
is loaded. (Vince Negri)

Added the "-M" Vim argument: reset 'modifiable' and 'write', thus disallow
making changes and writing files.

Added runtime/delmenu.vim.  Source this to remove all menus and prepare for
loading new menus.  Useful when changing 'langmenu'.

Perl script to filter Perl error messages to quickfix usable format. (Joerg
Ziefle)

Added runtime/macros/less.vim: Vim script to simulate less, but with syntax
highlighting.

MS-Windows install program: (Jon Merz)
- The Win32 program can now create shortcuts on the desktop and install Vim in
  the Start menu.
- Possibly remove old "Edit with Vim" entries.
- The Vim executable is never moved or $PATH changed.  A small batch file is
  created in a directory in $PATH.  Fewer choices to be made.
- Detect already installed Vim versions and offer to uninstall them first.

Improved the MS-Windows uninstal program.  It now also deletes the entries in
the Start menu, icons from the desktop and the created batch files. (Jon Merz)
Also made it possible to delete only some of these.  Also unregister gvim for
OLE.

Generate a self-installing Vim package for MS-Windows.  This uses NSIS. (Jon
Merz et al.)

Added ":filetype detect".  Try detecting the filetype again.  Helps when
writing a new shell script, after adding "#!/bin/csh".

Added ":augroup! name" to delete an autocommand group.  Needed for the
client-server "--remote-wait".

Add the Vim version number to the viminfo file, useful for debugging.

==============================================================================
IMPROVEMENTS						*improvements-6*

Added the 'n' flag in 'cpoptions': When omitted text of wrapped lines is not
put between line numbers from 'number' option.  Makes it a lot easier to read
wrapped lines.

When there is a format error in a tags file, the byte position is reported so
that the error can be located.

"gf" works in Visual mode: Use the selected text as the file name. (Chase
Tingley)

Allow ambiguous mappings.  Thus "aa" and "aaa" can both be mapped, the longest
matching one is used.  Especially useful for ":lmap" and 'keymap'.

Encryption: Ask the key to be typed twice when crypting the first time.
Otherwise a typo might cause the text to be lost forever. (Chase Tingley)

The window title now has "VIM" on the end.  The file name comes first, useful
in the taskbar.  A "+" is added when the file is modified.  "=" is added for
a read-only file.  "-" is added for a file with 'modifiable' off.

In Visual mode, mention the size of the selected area in the 'showcmd'
position.

Added the "b:changedtick" variable.  Incremented at each change, also for
undo.  Can be used to take action only if the buffer has been changed.

In the replacement string of a ":s" command "\=" can be used to replace with
the result of an expression.  From this expression the submatch() function can
be used to access submatches.

When doing ":qall" and there is a change in a buffer that is being edited in
another window, jump to that window, instead of editing that buffer in the
current window.

Added the "++enc=" and "++ff=" arguments to file read/write commands to force
using the given 'encoding' or 'fileformat'.  And added the "v:cmdarg"
variable, to be used for FileReadCmd autocommands that read/write the file
themselves.

When reading stdin, first read the text in binary mode and then re-read it
with automatic selection of 'fileformat' and 'fileencoding'.  This avoids
problems with not being able to rewind the file (e.g., when a line near the
end of the file ends in LF instead of CR-LF).
When reading text from stdin and the buffer is empty, don't mark it changed.
Allows exiting without trouble.

Added an ID to many error messages.  This will make it easier to find help for
a message.

Insert mode:
- "CTRL-G j" and "CTRL-G k" can be used to insert in another line in the same
  column.  Useful for editing a table.
- Added Thesaurus completion with CTRL-X CTRL-T. (Vince Negri)
- Added the 'thesaurus' option, to use instead of 'dictionary' for thesaurus
  completion.  Added the 's' flag in 'complete'.
- Made CTRL-X CTRL-L in Insert mode use the 'complete' option.  It now also
  scans other loaded buffers for matching lines.
- CTRL-R now also works in Insert mode while doing completion with CTRL-X or
  CTRL-N. (Neil Bird)
- When doing Insert mode completion, when completion is finished check for a
  match with words from 'cinkeys' or 'indentkeys'.

Performance:
- Made display updating more efficient.  Insert/delete lines may be used for
  all changes, also for undo/redo.
- The display is not redrawn when there is typeahead in Insert mode.  Speeds
  up CTRL-R a lot.
- Improved speed of screen output for 32 bit DOS version. (Vince Negri)
- When dragging with the mouse, there is a lookahead to skip mouse codes when
  there is another one next.  Makes dragging with the mouse a lot faster.
- Also a memory usage improvement: When calling u_save with a single line,
  don't save it if the line was recently saved for the same undo already.
- When using a script that appends one character at a time, the amount of
  allocated memory was growing steadily.  Also when 'undolevels' is -1.
  Caused by the line saved for "U" never to be freed.  Now free an undo block
  when it becomes empty.
- GUI and Dos32: Use a vertical scroll region, to make scrolling in a
  vertically split window faster.  No need to redraw the whole window.
- When scrolling isn't possible with terminal codes (e.g., for a vertically
  split window) redraw from ScreenLines[].  That should be faster than going
  through the lines with win_line(), especially when using syntax
  highlighting.
- The Syntax menu is now pre-generated by a separate script.  Makes loading
  the menu 70% faster.  This can halve the startup time of gvim.
- When doing ":help tag", don't open help.txt first, jump directly to the help
  tag.  It's faster and avoids an extra message.
- Win32: When a file name doesn't end in ".lnk" don't try resolving a
  shortcut, it takes quite a bit of time.
- Don't update the mouse pointer shape while there are typeahead characters.
- Change META[] from a string into an array, avoids using strchr() on it.
- Don't clear the command line when adding characters, avoids that screen_fill
  is called but doesn't do anything.

Robustness:
- Unix: Check for running out of stack space when executing a regexp.  Avoids
  a nasty crash.  Only works when the system supports running the signal
  function on another stack.
- Disallow ":source <dirname>".  On unix it's possible to read a directory,
  does not make sense to use it as Vim commands.

Security:
- When reading from or writing to a temporary file, check that it isn't a
  symbolic link.  Gives some protection against symlink attacks.
- When creating a backup file copy or a swap file, check for it already
  existing to avoid a symlink attack. (Colin Phipps)
- Evaluating options which are an expression is done in a |sandbox|.  If the
  option was set by a modeline, it cannot cause damage.
- Use a secure way to generate temp file names: Create a private directory for
  temp files.  Used for Unix, MS-DOS and OS/2.
- 'makeef' can be empty, which means that an internally generated file name is
  used.  The old default was "/tmp/file", which is a security risk.
  Writing 'makeef' in the current directory fails in a read-only directory and
  causes trouble when using ":grep" on all files.  Made the default empty for
  all systems, so that a temp file is used.
- The command from a tags file is executed in the sandbox for better security.
- The Ruby, Tcl and Python interfaces cannot be used from the sandbox.  They
  might do dangerous things.  Perl is still possible, but limited to the Safe
  environment. (Donnie Smith)

Syntax highlighting:
- Optimized the speed by caching the state stack all over the file, not just
  the part being displayed.  Required for folding.
- Added ":syntax sync fromstart": Always parse from the start of the file.
- Added the "display" argument for syntax items: use the item only when
  displaying the result.  Can make parsing faster for text that isn't going to
  be displayed.
- When using CTRL-L, the cached states are deleted, to force parsing the text
  again.
- Use elfhash algorithm for table of keywords.  This should give a better
  distribution and speedup keyword lookup. (Campbell)
- Also allow the "lc" leading context for skip and end patterns. (Scott
  Bigham)
- Syntax items can have the "extend" argument to undo the effect of a
  "keepend" argument of an item it is contained in.  Makes it possible to have
  some contained items extend a region while others don't.
- ":syntax clear" now deletes the b:current_syntax variable.  That's logical,
  since no syntax is defined after this command.
- Added ":syntax enable": switch on syntax highlighting without changing the
  colors.  This allows specifying the colors in the .vimrc file without the
  need for a mysyntaxfile.
- Added ":syntax reset": reset the colors to their defaults.
- Added the "contains=TOP" and "contains=CONTAINED" arguments.  Makes it
  possible to define a transparent item that doesn't contain itself.
- Added a "containedin" argument to syntax items.  Allows adding a contained
  item to an existing item (e.g., to highlight a name in a comment).

Modeless selection:
- When in the command-line window, use modeless selection in the other
  windows.  Makes it possible to copy visible text to the command-line window.
- Support modeless selection on the cmdline in a terminal.  Previously it was
  only possible for the GUI.
- Make double-right-click in modeless selection select a whole word.  Single
  right click doesn't use the word selection started by a double-left-click.
  Makes it work like in Visual mode.
- The modeless selection no longer has an implied automatic copy to the
  clipboard.  It now obeys the 'a' and 'A' flags in 'guioptions' or
  "autoselect" and "autoselectml" in 'clipboard'.
- Added the CTRL-Y command in Cmdline-mode to copy the modeless selection to
  the clipboard.  Also works at the hit-enter prompt and the more prompt.
  Removed the mappings in runtime/mswin.vim for CTRL-Y and CTRL-Z in
  cmdline-mode to be able to use CTRL-Y in the new way.

Reduced the amount of stack space used by regmatch() to allow it to handle
complicated patterns on a longer text.

'isfname' now includes '%' and '#'.  Makes "vim dir\#file" work for MS-DOS.

Added keypad special keys <kEnter>, <k0> - <k9>.  When not mapped they behave
like the ASCII equivalent. (Ivan Wellesz and Vince Negri)
Recognize a few more xterm keys: <C-Right>, <C-Left>, <C-End>, <C-Home>

Also trigger the BufUnload event when Vim is going to exit.  Perhaps a script
needs to do some cleaning up.

Expand expression in backticks: `={expr}`.  Can be used where backtick
expansion is done. (Vince Negri)

GUI:
- Added 'L' and 'R' flags in 'guioptions': Add a left or right scrollbar only
  when there is a vertically split window.
- X11: When a color can't be allocated, use the nearest match from the
  colormap.  This avoids that black is used for many things. (Monish Shah)
  Also do this for the menu and scrollbar, to avoid that they become black.
- Win32 and X11: Added 'mouseshape' option: Adjust the mouse pointer shape to
  the current mode. (Vince Negri)
- Added the 'linespace' option: Insert a pixel line between lines. (Nam)
- Allow modeless selection (without moving the cursor) by keeping CTRL and
  SHIFT pressed. (Ivan Wellesz)
- Motif: added toolbar. (Gordon Prieur)  Also added tooltips.
- Athena: added toolbar and tooltips. (David Harrison -- based on Gordon
  Prieur's work)
- Made the 'toolbar' option work for Athena and Motif.  Can now switch between
  text and icons on the fly.  (David Harrison)
- Support menu separator lines for Athena.  (David Harrison)
- Athena: Adjust the arrow pixmap used in a pullright menu to the size of the
  font. (David Harrison)
- Win32: Added "c" flag to 'guifont' to be able to specify the charset. (Artem
  Khodush)
- When no --enable-xim argument is given, automatically enable it when a X GUI
  is used.  Required for dead key support (and multi-byte input).
- After a file selection dialog, check that the edited files were not changed
  or deleted.  The Win32 dialog allows deleting and renaming files.
- Motif and Athena: Added support for "editres". (Marcin Dalecki)
- Motif and Athena: Added "menuFont" to be able to specify a font or fontset
  for the menus.  Can also be set with the "Menu" highlight group.  Useful
  when the locale is different from 'encoding'. (David Harrison)
  When FONTSET_ALWAYS is defined, always use a fontset for the menus.  Should
  avoid trouble with changing from a font to a fontset.  (David Harrison)
- Highlighting and font for the tooltips can be specified with the "Tooltip"
  highlight group. (David Harrison)
- The Cmdline-mode menus can be used at the more-prompt.  This mostly works
  fine, because they start with a CTRL-C.  The "Copy" menu works to copy the
  modeless selection.  Allows copying the output of ":set all" or ":intro"
  without auto-selection.
- When starting the GUI when there is no terminal connected to stdout and
  stderr, display error messages in a dialog.  Previously they wouldn't be
  displayed at all.
- Allow setting 'browsedir' to the name of a directory, to be used for the
  file dialog. (Dan Sharp)
- b:browsefilter and g:browsefilter can be set to the filters used for the
  file dialog.  Supported for Win32 and Motif GUI. (Dan Sharp)

X11:
- Support for the clipboard selection as register "+.  When exiting or
  suspending copy the selection to cut buffer 0.  Should allow copy/paste with
  more applications in a X11-standard way.  (Neil Bird)
- Use the X clipboard in any terminal, not just in an xterm.
  Added "exclude:" in 'clipboard': Specify a pattern to match against terminal
  names for which no connection should be made to the X server.  The default
  currently work for FreeBSD and Linux consoles.
- Added a few messages for when 'verbose' is non-zero to show what happens
  when trying to connect to the X server.  Should help when trying to find out
  why startup is slow.

GTK GUI: (partly by Marcin Dalecki)
- With some fonts the characters can be taller than ascent + descent.  E.g.,
  "-misc-fixed-*-*-*-*-18-*-*-*-*-*-iso10646-1".  Add one to the character
  cell height.
- Implement "no" value for 'winaltkeys': don't use Alt-Key as a menu shortcut,
  when 'wak' changed after creating the menus.
- Setting 'wak' after the GUI started works.
- recycle text GC's to reduce communication.
- Adjust icon size to window manager.
- Cleanup in font handling.
- Replace XQueryColor with GDK calls.
- Gnome support.  Detects Gnome in configure and uses different widgets.
  Otherwise it's much like GTK. (Andy Kahn)
  It is disabled by default, because it causes a few problems.
- Removed the special code to fork first and then start the GUI.  Now use
  _exit() instead of exit(), this works fine without special tricks.
- Dialogs sometimes appeared a bit far away.  Position the dialogs inside
  the gvim window. (Brent Verner)
- When dropping a file on Vim, remove extra slashes from the start of the
  path.  Also shorten the file name if possible.

Motif: (Marcin Dalecki)
- Made the dialog layout better.
- Added find and find/replace dialogs.
- For the menus, change "iso-8859" to "iso_8859", Linux appears to need this.
- Added icon to dialogs, like for GTK.
- Use XPM bitmaps for the icon when possible.  Use the Solaris XpmP.h include
  file when it's available.
- Change the shadow of the toolbar items to get a visual feedback of it being
  pressed on non-LessTif.
- Use gadgets instead of windows for some items for speed.

Command line completion:
- Complete environment variable names. (Mike Steed)
- For ":command", added a few completion methods: "mapping", "function",
  "expression" and "environment".
- When a function doesn't take arguments, let completion add () instead of (.

For MS-DOS, MS-Windows and OS/2: Expand %VAR% environment variables like $VAR.
(Walter Briscoe)

Redirect messages to the clipboard ":redir @*" and to the unnamed register
":redir @"". (Wall)

":let @/ = ''" clears the search pattern, instead of setting it to an empty
string.

Expression evaluation:
- "? :" can be used like in C.
- col("$") returns the length of the cursor line plus one. (Stephen P. Wall)
- Optional extra argument for match(), matchend() and matchstr(): Offset to
  start looking for a match.
- Made third argument to strpart() optional.  (Paul Moore, Zdenek Sekera)
- exists() can also be used to check for Ex commands and defined autocommands.
- Added extra argument to input(): Default text.
- Also set "v:errmsg" when using ":silent! cmd".
- Added the v:prevcount variable: v:count for the previous command.
- Added "v:progname", name with which Vim was started. (Vince Negri)
- In the verbose message about returning from a function, also show the return
  value.

Cscope:
- Added the cscope_connection() function. (Andy Kahn)
- ":cscope kill -1" kills all cscope connections. (Andy Kahn)
- Added the 'cscopepathcomp' option. (Scott Hauck)
- Added ":scscope" command, split window and execute Cscope command. (Jason
  Duell)

VMS:
- Command line arguments are always uppercase.  Interpret a "-X" argument as
  "-x" and "-/X" as "-X".
- Set 'makeprg' and 'grepprg' to meaningful defaults. (Zoltan Arpadffy)
- Use the X-clipboard feature and the X command server. (Zoltan Arpadffy)

Macintosh: (Dany St-Amant)
- Allow a tags file to have CR, CR-LF or LF line separator. (Axel Kielhorn)
- Carbonized (while keeping non Carbon code)
  (Some work "stolen" from Ammon Skidmore)
- Improved the menu item index handling (should be faster)
- Runtime commands now handle / in file name (MacOS 9 version)
- Added ":winpos" support.
- Support using "~" in file names for home directory.

Options:
- When using set += or ^= , check for items used twice.  Duplicates are
  removed.  (Vince Negri)
- When setting an option that is a list of flags, remove duplicate flags.
- If possible, use getrlimit() to set 'maxmemtot' and 'maxmem'. (Pina)
- Added "alpha" to 'nrformats': increment or decrement an alphabetic character
  with CTRL-A and CTRL-X.
- ":set opt&vi" sets an option to its Vi default, ":set opt&vim" to its Vim
  default.  Useful to set 'cpo' to its Vim default without knowing what flags
  that includes.
- 'scrolloff' now also applies to a long, wrapped line that doesn't fit in the
  window.
- Added more option settings to the default menus.
- Updated the option window with new options.  Made it a bit easier to read.

Internal changes:
- Split line pointers in text part and attributes part.  Allows for future
  change to make attribute more than one byte.
- Provide a qsort() function for systems that don't have it.
- Changed the big switch for Normal mode commands into a table.  This cleans
  up the code considerably and avoids trouble for some optimizing compilers.
- Assigned a negative value to special keys, to avoid them being mixed up with
  Unicode characters.
- Global variables expand_context and expand_pattern were not supposed to be
  global.  Pass them to ExpandOne() and all functions called by it.
- No longer use the global reg_ic flag.  It caused trouble and in a few places
  it was not set.
- Removed the use of the stuff buffer for "*", "K", CTRL-], etc.  Avoids
  problem with autocommands.
- Moved some code from ex_docmd.c to ex_cmds2.c.  The file was getting too
  big.  Also moved some code from screen.c to move.c.
- Don't include the CRC table for encryption, generate it.  Saves quite a bit
  of space in the source code. (Matthias Kramm)
- Renamed multibyte.c to mbyte.c to avoid a problem with 8.3 filesystems.
- Removed the GTK implementation of ":findhelp", it now uses the
  ToolBar.FindHelp  menu entry.
- Renamed mch_windexit() to mch_exit(), mch_init() to mch_early_init() and
  mch_shellinit() to mch_init().

Highlighting:
- In a ":highlight" listing, show "xxx" with the highlight color.
- Added support for xterm with 88 or 256 colors.  The right color numbers will
  be used for the name used in a ":highlight" command. (Steve Wall)
- Added "default" argument for ":highlight".  When included, the command is
  ignored if highlighting for the group was already defined.
  All syntax files now use ":hi default ..." to allow the user to specify
  colors in his vimrc file.  Also, the "if did_xxx_syntax_inits" is not needed
  anymore.  This greatly simplifies using non-default colors for a specific
  language.
- Adjusted colortest.vim: Included colors on normal background and reduced the
  size by using a while loop. (Rafael Garcia-Suarez)
- Added the "DarkYellow" color name.  Just to make the list of standard colors
  consistent, it's not really a nice color to use.

When an xterm is in 8-bit mode this is detected by the code returned for
|t_RV|.  All key codes are automatically converted to their 8-bit versions.

The OPT_TCAP_QUERY in xterm patch level 141 and later is used to obtain the
actual key codes used and the number of colors for t_Co.  Only when |t_RV| is
also used.

":browse set" now also works in the console mode.  ":browse edit" will give an
error message.

":bdelete" and ":bunload" only report the number of deleted/unloaded buffers
when more than 'report'.  The message was annoying when deleting a buffer in a
script.

Jump list:
- The number of marks kept in the jumplist has been increased from 50 to 100.
- The jumplist is now stored in the viminfo file.  CTRL-O can be used to jump
  to positions from a previous edit session.
- When doing ":split" copy the jumplist to the new window.

Also set the '[ and '] marks for the "~" and "r" commands.  These marks are
now always set when making a change with a Normal mode command.

Python interface: Allow setting the width of a vertically split window. (John
Cook)

Added "=word" and "=~word" to 'cinkeys' (also used in 'indentkeys').

Added "j1" argument in 'cinoptions': indent {} inside () for Java. (Johannes
Zellner)
Added the "l" flag in 'cinoptions'. (Anduin Withers)
Added 'C', 'U', 'w' and 'm' flags to 'cinoptions'. (Servatius Brandt)

When doing ":wall" or ":wqall" and a modified buffer doesn't have a name,
mention its buffer number in the error message.

":function Name" lists the function with line numbers.  Makes it easier to
find out where an error happened.

In non-blockwise Visual mode, "r" replaces all selected characters with the
typed one, like in blockwise Visual mode.

When editing the last file in the argument list in any way, allow exiting.
Previously this was only possible when getting to that file with ":next" or
":last".

Added the '1' flag to 'formatoptions'. (Vit Stradal)
Added 'n' flag in 'formatoptions': format a numbered list.

Swap file:
- When a swap file already exists, and the user selects "Delete" at the
  ATTENTION prompt, use the same ".swp" swapfile, to avoid creating a ".swo"
  file which won't always be found.
- When giving the ATTENTION message and the date of the file is newer than the
  date of swap file, give a warning about this.
- Made the info for an existing swap file a bit shorter, so that it still fits
  on a 24 line screen.
- It was possible to make a symlink with the name of a swap file, linking to a
  file that doesn't exist.  Vim would then silently use another file (if open
  with O_EXCL refuses a symlink).  Now check for a symlink to exist.  Also do
  another check for an existing swap file just before creating it to catch a
  symlink attack.

The g CTRL-G command also works in Visual mode and counts the number of words.
(Chase Tingley)

Give an error message when using 'shell' and it's empty.

Added the possibility to include "%s" in 'shellpipe'.

Added "uhex" value for 'display': show non-printable characters as <xx>.
Show unprintable characters with NonText highlighting, also in the command
line.

When asked to display the value of a hidden option, tell it's not supported.

Win32:
- When dropping a shortcut on gvim (.lnk file) edit the target, not the
  shortcut itself.  (Yasuhiro Matsumoto)
- Added C versions of the OpenWithVim and SendToVim programs. (Walter Briscoe)
- When 'shell' is "cmd" or "cmd.exe", set 'shellredir' to redirect stderr too.
  Also check for the Unix shell names.
- When $HOMEDRIVE and $HOMEPATH are defined, use them to define $HOME.  (Craig
  Barkhouse)

Win32 console version:
- Includes the user and system name in the ":version" message, when available.
  It generates a pathdef.c file for this.  (Jon Miner)
- Set the window icon to Vim's icon (only for Windows 2000).  While executing
  a shell command, modify the window title to show this.  When exiting,
  restore the cursor position too.  (Craig Barkhouse)
- The Win32 console version can be compiled with OLE support.  It can only
  function as a client, not as an OLE server.

Errorformat:
- Let "%p" in 'errorformat' (column of error indicated by a row of characters)
  also accept a line of dots.
- Added "%v" item in 'errorformat': Virtual column number. (Dan Sharp)
- Added a default 'errorformat' value for VMS. (Jim Bush)

The "p" command can now be used in Visual mode.  It overwrites the selected
text with the contents of a register.

Highlight the <> items in the intro message to make clear they are special.

When using the "c" flag for ":substitute", allow typing "l" for replacing this
item and then stop: "last".

When printing a verbose message about sourcing another file, print the line
number.

When resizing the Vim window, don't use 'equalalways'.  Avoids that making the
Vim window smaller makes split windows bigger.  And it's what the docs say.

When typing CTRL-D in Insert mode, just after an autoindent, then hitting CR
kept the remaining white space.  Now made it work like BS: delete the
autoindent to avoid a blank non-empty line results.

Added a GetHwnd() call to the OLE interface.  (Vince Negri)

Made ":normal" work in an event handler.  Useful when dropping a file on Vim
and for CursorHold autocommands.

For the MS-Windows version, don't change to the directory of the file when a
slash is used instead of a backslash.  Explorer should always use a backslash,
the user can use a slash when typing the command.

Timestamps:
- When a buffer was changed outside of Vim and regaining focus, give a dialog
  to allow the user to reload the file.  Now also for other GUIs than
  MS-Windows.  And also used in the console, when compiled with dialog
  support.
- Inspect the file contents to find out if it really changed, ignore
  situations where only the time stamp changed (e.g., checking the file out
  from CVS).
- When checking the timestamp, first check if the file size changed, to avoid
  a file compare then.  Makes it quicker for large (log) files that are
  appended to.
- Don't give a warning for a changed or deleted file when 'buftype' is set.
- No longer warn for a changed directory.  This avoids that the file explorer
  produces warnings.
- Checking timestamps is only done for buffers that are not hidden.  These
  will be checked when they become unhidden.
- When checking for a file being changed outside of Vim, also check if the
  file permissions changed.  When the file contents didn't change but the
  permissions did, give a warning.
- Avoid checking too often, otherwise the dialog keeps popping up for a log
  file that steadily grows.

Mapping <M-A> when 'encoding' is "latin1" and then setting 'encoding' to
"utf-8" causes the first byte of a multi-byte to be mapped.  Can cause very
hard to find problems.  Disallow mapping part of a multi-byte character.

For ":python" and ":tcl" accept an in-line script. (Johannes Zellner)
Also for ":ruby" and ":perl". (Benoit Cerrina)

Made ":syn include" use 'runtimepath' when the file name is not a full path.

When 'switchbuf' contains "split" and the current window is empty, don't split
the window.

Unix: Catch SIGPWR to preserve files when the power is about to go down.

Sniff interface: (Anton Leherbauer)
- fixed windows code, esp. the event handling stuff
- adaptations for sniff 4.x ($SNIFF_DIR4)
- support for adding sniff requests at runtime

Support the notation <A-x> as an alias for <M-x>.  This logical, since the Alt
key is used.

":find" accepts a count, which means that the count'th match in 'path' is
used.

":ls" and ":buffers" output shows modified/readonly/modifiable flag.  When a
buffer is active show "a" instead of nothing.  When a buffer isn't loaded
show nothing instead of "-".

Unix install:
- When installing the tools, set absolute paths in tools scripts efm_perl.pl
  and mve.awk.  Avoids that the user has to edit these files.
- Install Icons for KDE when the directories exist and the icons do not exist
  yet.

Added has("win95"), to be able to distinguish between MS-Windows 95/98/ME and
NT/2000/XP in a Vim script.

When a ":cd" command was typed, echo the new current directory. (Dan Sharp)

When using ":winpos" before the GUI window has been opened, remember the
values until it is opened.

In the ":version" output, add "/dyn" for features that are dynamically loaded.
This indicates the feature may not always work.

On Windows NT it is possible that a directory is read-only, but a file can be
deleted.  When making a backup by renaming the file and 'backupdir' doesn't
use the current directory, this causes the original file to be deleted,
without the possibility to create a new file.  Give an extra error message
then to warn to user about this.

Made CTRL-R CTRL-O at the command line work like CTRL-R CTRL-R, so that it's
consistent with Insert mode.

==============================================================================
COMPILE TIME CHANGES					*compile-changes-6*

All generated files have been moved out of the "src" directory.  This makes it
easy to see which files are not edited by hand.  The files generated by
configure are now in the "src/auto" directory.  For Unix, compiled object
files go in the objects directory.

The source archive was over the 1.4M floppy limit.  The archives are now split
up into two runtime and two source archives.  Also provide a bzip2 compressed
archive that contains all the sources and runtime files.

Added "reconfig" as a target for make.  Useful when changing some of the
arguments that require flushing the cache, such as switching from GTK to
Motif.  Adjusted the meaning of GUI_INC_LOC and GUI_LIB_LOC to be consistent
over different GUIs.

Added src/README.txt to give an overview of the main parts of the source code.

The Unix Makefile now fully supports using $(DESTDIR) to install to a specific
location.  Replaces the manual setting of *ENDLOC variables.

Added the possibility for a maintainer of a binary version to include his
e-mail address with the --with-compiledby configure argument.

Included features are now grouped in "tiny", "small", "normal", "big" and
"huge".  This replaces "min-features" and "max-features".  Using "tiny"
disables multiple windows for a really small Vim.

For the tiny version or when FEAT_WINDOWS is not defined: Firstwin and lastwin
are equal to curwin and don't use w_next and w_prev.

Added the +listcmds feature.  Can be used to compile without the Vim commands
that manipulate the buffer list and argument list (the buffer list itself is
still there, can't do without it).

Added the +vreplace feature.  It is disabled in the "small" version to avoid
that the 16 bit DOS version runs out of memory.

Removed GTK+ support for versions older than 1.1.16.

The configure checks for using PTYs have been improved.  Code taken from a
recent version of screen.

Added configure options to install Vim, Ex and View under another name (e.g.,
vim6, ex6 and view6).

Added "--with-global-runtime" configure argument.  Allows specifying the
global directory used in the 'runtimepath' default.

Made enabling the SNiFF+ interface possible with a configure argument.

Configure now always checks /usr/local/lib for libraries and
/usr/local/include for include files.  Helps finding the stuff for iconv() and
gettext().

Moved the command line history stuff into the +cmdline_hist feature, to
exclude the command line history from the tiny version.

MS-Windows: Moved common functions from Win16 and Win32 to os_mswin.c.  Avoids
having to change two files for one problem.  (Vince Negri)

Moved common code from gui_w16.c and gui_w32.c to gui_w48.c (Vince Negri)

The jumplist is now a separate feature.  It is disabled for the "small"
version (16 bit MS-DOS).

Renamed all types ending in _t to end in _T.  Avoids potential problems with
system types.

Added a configure check for X11 header files that implicitly define the return
type to int. (Steve Wall)

"make doslang" in the top directory makes an archive with the menu and .mo
files for Windows.  This uses the files generated on Unix, these should work
on MS-Windows as well.

Merged a large part of os_vms.c with os_unix.c.  The code was duplicated in
the past which made maintenance more work.  (Zoltan Arpadffy)

Updated the Borland C version 5 Makefile: (Dan Sharp)
- Fixed the Perl build
- Added python and tcl builds
- Added dynamic perl and dynamic python builds
- Added uninstal.exe build
- Use "yes" and "no" for the options, like in Make_mvc.mak.

Win32: Merged Make_gvc.mak and Make_ovc.mak into one file: Make_ivc.mak.  It's
much smaller, many unnecessary text has been removed. (Walter Briscoe)
Added Make_dvc.mak to be able to debug exe generated with Make_mvc.mak in
MS-Devstudio. (Walter Briscoe)

MS-Windows: The big gvim.exe, which includes OLE, now also includes
dynamically loaded Tcl, Perl and Python.  This uses ActivePerl 5.6.1,
ActivePython 2.1.1 and ActiveTCL 8.3.3

Added AC_EXEEXT to configure.in, to check if the executable needs ".exe" for
Cygwin or MingW.  Renamed SUFFIX to EXEEXT in Makefile.

Win32: Load comdlg32.dll delayed for faster startup.  Only when using VC 6.
(Vipin Aravind)

Win32: When compiling with Borland, allow using IME. (Yasuhiro Matsumoto)

Win32: Added Makefile for Borland 5 to compile gvimext.dll. (Yasuhiro
Matsumoto)

==============================================================================
BUG FIXES						*bug-fixes-6*

When checking the command name for "gvim", "ex", etc. ignore case.  Required
for systems where case is ignored in command names.

Search pattern "[a-c-e]" also matched a 'd' and didn't match a '-'.

When double-clicking in another window, wasn't recognized as double click,
because topline is different.  Added set_mouse_topline().

The BROKEN_LOCALE check was broken.  (Marcin Dalecki)

When "t_Co" is set, the default colors remain the same, thus wrong.  Reset the
colors after changing "t_Co". (Steve Wall)

When exiting with ":wqall" the messages about writing files could overwrite
each other and be lost forever.

When starting Vim with an extremely long file name (around 1024 characters) it
would crash.  Added a few checks to avoid buffer overflows.

CTRL-E could get stuck in a file with very long lines.

":au syntax<Tab>" expanded event names while it should expand groups starting
with "syntax".

When expanding a file name caused an error (e.g., for <amatch>) it was
produced even when inside an "if 0".

'cindent' formatted C comments differently from what the 'comments' option
specified. (Steve Wall)

Default for 'grepprg' didn't include the file name when only grepping in one
file.  Now /dev/null has been added for Unix.

Opening the option window twice caused trouble.  Now the cursor goes to the
existing option window.

":sview" and ":view" didn't set 'readonly' for an existing buffer.  Now do set
'readonly', unless the buffer is also edited in another window.

GTK GUI: When 'guioptions' excluded 'g', the more prompt caused the toolbar
and menubar to disappear and resize the window (which clears the text).
Now always grey-out the toplevel menus to avoid that the menubar changes size
or disappears.

When re-using the current buffer for a new buffer, buffer-local variables were
not deleted.

GUI: when 'scrolloff' is 0 dragging the mouse above the window didn't cause a
down scroll.  Now pass on a mouse event with mouse_row set to -1.

Win32: Console version didn't work on telnet, because of switching between two
console screens.  Now use one console screen and save/restore the contents
when needed.  (Craig Barkhouse)

When reading a file the magic number for encryption was included in the file
length. (Antonio Colombo)

The quickfix window contained leading whitespace and NULs for multi-line
messages. (David Harrison)

When using cscope, redundant tags were removed.  This caused a numbering
problem, because they were all listed.  Don't remove redundant cscope tags.
(David Bustos).

Cscope: Test for which matches are in the current buffer sometimes failed,
causing a jump to another match than selected. (David Bustos)

Win32: Buffer overflow when adding a charset name in a font.

'titlestring' and 'iconstring' were evaluating an expression in the current
context, which could be a user function, which is a problem for local
variables vs global variables.

Win32 GUI: Mapping <M-F> didn't work.  Now handle SHIFT and CTRL in
_OnSysChar().

Win32 GUI: (on no file), :vs<CR>:q<CR> left a trail of pixels down the middle.
Could also happen for the ruler.  screen_puts() didn't clear the right char in
ScreenLines[] for the bold trick.

Win32: ":%!sort|uniq" didn't work, because the input file name touches the
"|".  Insert a space before the "|".

OS/2: Expanding wildcards included non-existing files.  Caused ":runtime" to
fail, which caused syntax highlighting to fail.

Pasting a register containing CTRL-R on the command line could cause an
endless loop that can't be interrupted.  Now it can be stopped with CTRL-C.

When 'verbose' is set, a message for file read/write could overwrite the
previous message.
When 'verbose' is set, the header from ":select" was put after the last
message.  Now start a new line.

The hit-enter prompt reacted to the response of the t_RV string, causing
messages at startup to disappear.

When t_Co was set to 1, colors were still used.  Now only use color when t_Co
> 1.

Listing functions with ":function" didn't quit when 'q' or ':' was typed at
the more prompt.

Use mkstemp() instead of mktemp() when it's available, avoids a warning for
linking on FreeBSD.

When doing Insert mode completion it's possible that b_sfname is NULL.  Don't
give it to printf() for the "Scanning" message.

":set runtimepath-=$VIMRUNTIME" didn't work, because expansion of wildcards
was done after trying to remove the string.  Now for ":set opt+=val" and ":set
opt-=val" the expansion of wildcards is done before adding or removing "val".

Using CTRL-V with the "r" command with a blockwise Visual selection inserted a
CTRL-V instead of getting a special character.

Unix: Changed the order of libraries: Put -lXdmcp after -lX11 and -lSM -lICE
after -lXdmcp.  Should fix link problem on HP-UX 10.20.

Don't remove the last "-lm" from the link line.  Vim may link but fail later
when the GUI starts.

When the shell returns with an error when trying to expand wildcards, do
include the pattern when the "EW_NOTFOUND" flag was set.
When expanding wildcards with the shell fails, give a clear error message
instead of just "1 returned".

Selecting a Visual block, with the start partly on a Tab, deleting it leaves
the cursor too far to the left.  Causes "s" to work in the wrong position.

Pound sign in normal.c caused trouble on some compilers.  Use 0xA3 instead.

Warning for changing a read-only file wasn't given when 'insertmode' was set.

Win32: When 'shellxquote' is set to a double quote (e.g., using csh), ":!start
notepad file" doesn't work.  Remove the double quotes added by 'shellxquote'
when using ":!start". (Pavol Juhas)

The "<f-args>" argument of ":command" didn't accept Tabs for white space.
Also, don't add an empty argument when there are trailing blanks.

":e test\\je" edited "test\je", but ":next test\\je" edited "testje".
Backslashes were removed one time too many for ":next".

VMS: "gf" didn't work properly.  Use vms_fixfilename() to translate the file
name. (Zoltan Arpadffy)

After ":hi Normal ctermbg=black ctermfg=white" and suspending Vim not all
characters are redrawn with the right background.

When doing "make test" without +eval or +windows feature, many tests failed.
Now have test1 generate a script to copy the correct output, so that a test
that doesn't work is skipped.

On FreeBSD the Perl interface added "-lc" to the link command and Python added
"-pthread".  These two don't work together, because the libc_r library should
be used.  Removed "-lc" from Perl, it should not be needed.
Also: Add "-pthread" to $LIBS, so that the checks for functions is done with
libc_r.  Sigaltstack() appears to be missing from libc_r.

The Syntax sub-menus were getting too long, reorganized them and added another
level for some languages.

Visual block "r"eplace didn't work well when a Tab is partly included.
(Matthias Kramm)

When yanking a Visual block, where some lines end halfway the block, putting
the text somewhere else doesn't insert a block.  Padd with spaces for missing
characters.  Added "y_width" to struct yankreg. (Matthias Kramm)

If a substitute string has a multibyte character after a backslash only the
first byte of it was skipped. (Muraoka Taro)

Win32: Numeric keypad keys were missing from the builtin termcap entry.

When a file was read-only ":wa!" didn't force it to be written. (Vince Negri)

Amiga: A file name starting with a colon was considered absolute but it isn't.
Amiga: ":pwd" added a slash when in the root of a drive.

Don't let 'ttymouse' default to "dec" when compiled with dec mouse support.
It breaks the gpm mouse (Linux console).

The prototypes for the Perl interface didn't work for threaded Perl.  Added a
sed command to remove the prototypes from proto/if_perl.pro and added them
manually to if_perl.xs.

When ":w!" resets the 'readonly' option the title and status lines were not
updated.

":args" showed the current file when the argument list was empty.  Made this
work like Vi: display nothing.

"99:<C-U>echo v:count" echoed "99" in Normal mode, but 0 in Visual mode.
Don't set v:count when executing a stuffed command.

Amiga: Got a requester for "home:" because it's in the default runtime path.
Don't bring up a requester when searching for a file in 'path', sourcing the
.vimrc file or using ":runtime".

Win16 and Win32: Considered a file "\path\file" absolute.  Can cause the same
file to appear as two different buffers.

Win32: Renaming a file to an empty string crashed Vim.  Happened when using
explorer.vim and hitting ESC at the rename prompt.

Win32: strftime() crashed when called with a "-1" value for the time.

Win32 with Borland compiler: mch_FullName() didn't work, caused tag file not
to be found.

Cscope sometimes jumped to the wrong tag. (David Bustos)

OS/2: Could not find the tags file.  mch_expand_wildcards() added another
slash to a directory name.

When using ">>" the `] mark was not in the last column.

When Vim was compiled without menu support, filetype.vim was still trying to
source the menu.vim script. (Rafael Garcia-Suarez)

":ptag" added an item to the tag stack.

Win32 IME: "gr" didn't use IME mode.

In the "vim --help" message the term "options" was used for arguments.  That's
confusing, call them "arguments".

When there are two windows, and a BufUnload autocommand for closing window #1
closed window #2, Vim would crash.

When there is a preview window and only one other window, ":q" wouldn't exit.

In Insert mode, when cancelling a digraph with ESC, the '?' wasn't removed.

On Unix glob(".*") returned "." and "..", on Windows it didn't.  On Windows
glob("*") also returned files starting with a dot.  Made this work like Unix
on all systems.

Win32: Removed old code to open a console.  Vimrun is now used and works fine.

Compute the room needed by the intro message accurately, so that it also fits
on a 25 line console. (Craig Barkhouse)

":ptnext" was broken.  Now remember the last tag used in the preview window
separately from the tagstack.

Didn't check for "-display" being the last argument. (Wichert Akkerman)

GTK GUI: When starting "gvim" under some conditions there would be an X error.
Don't replace the error handler when creating the xterm clipboard. (Wichert
Akkerman)

Adding a space after a help tag caused the tag not to be found.  E.g., ":he
autoindent ".

Was trying to expand a URL into a full path name.  On Windows this resulted in
the current directory to be prepended to the URL.  Added vim_isAbsName() and
vim_FullName() to avoid that various machine specific functions do it
differently.

":n *.c" ":cd .." ":n" didn't use the original directory of the file.  Vi only
does it for the current file (looks like a bug).  Now remember the buffer used
for the entry in the argument list and use it's name (adjusted when doing
":cd"), unless it's deleted.

When inserting a special key as its name ("<F8>" as four characters) after
moving around in Insert mode, undo didn't work properly.

Motif GUI: When using the right mouse button, for some people gvim froze for
a couple of seconds (Motif 1.2?).  This doesn't happen when there is no Popup
menu.  Solved by only creating a popup menu when 'mousemodel' is "popup" or
"popup_setpos". (David Harrison)

Motif: When adding many menu items, the "Help" menu disappeared but the
menubar didn't wrap.  Now manually set the menubar height.

When using <BS> in Insert mode to remove a line break, or using "J" to join
lines, the cursor could end up halfway a multi-byte character. (Muraoka Taro)

Removed defining SVR4 in configure.  It causes problems for some X header
files and doesn't appear to be used anywhere.

When 'wildignore' is used, 'ignorecase' for a tag match was not working.

When 'wildignore' contains "*~" it was impossible to edit a file ending in a
"~".  Now don't recognize a file ending in "~" as containing wildcards.

Disabled the mouse code for OS/2.  It was not really used.

":mksession" always used the full path name for a buffer, also when the short
name could be used.
":mkvimrc" and ":mksession" didn't save 'wildchar' and 'pastetoggle' in such a
way that they would be restored.  Now use the key name if possible, this is
portable.

After recovering a file and abandoning it, an ":edit" command didn't give the
ATTENTION prompt again.  Would be useful to be able to delete the file in an
easy way.  Reset the BF_RECOVERED flag when unloading the buffer.

histdel() could match or ignore case, depending on what happened before it.
Now always match case.

When a window size was specified when splitting a window, it would still get
the size from 'winheight' or 'winwidth' if it's larger.

When using "append" or "insert" inside a function definition, a line starting
with "function" or "endfunction" caused confusion.  Now recognize the commands
and skip lines until a ".".

At the end of any function or sourced file need_wait_return could be reset,
causing messages to disappear when redrawing.

When in a while loop the line number for error messages stayed fixed.  Now the
line number is remembered in the while loop.

"cd c:/" didn't work on MS-DOS.  mch_isdir() removed a trailing slash.

MS-Windows: getftime() didn't work when a directory had a trailing slash or
backslash.  Didn't show the time in the explorer because of this.

When doing wildcard completion, a directory "a/" sorted after "a-b".  Now
recognize path separators when sorting files.

Non-Unix systems: When editing "c:/dir/../file" and "c:/file" they were
created as different buffers, although it's the same file.  Expand to a full
file name also when an absolute name contains "..".

"g&" didn't repeat the last substitute properly.

When 'clipboard' was set to "unnamed", a "Y" command would not write to "0.
Now make a copy of register 0 to the clipboard register.

When the search pattern matches in many ways, it could not always be
interrupted with a CTRL-C.  And CTRL-C would have to be hit once for every
line when 'hlsearch' is on.
When 'incsearch' is on and interrupting the search for a match, don't abandon
the command line.

When turning a directory name into a full path, e.g., with fnamemodify(),
sometimes a slash was added.  Make this consistent: Don't add a slash.

When a file name contains a "!", using it in a shell command will cause
trouble: ":!cat %".  Escape the "!" to avoid that.  Escape it another time
when 'shell' contains "sh".

Completing a file name that has a tail that starts with a "~" didn't work:
":e view/~<Tab>".

Using a ":command" argument that contains < and > but not for a special
argument was not skipped properly.

The DOS install program: On Win2000 the check for a vim.exe or gvim.exe in
$PATH didn't work, it always found it in the current directory.
Rename the vim.exe in the current dir to avoid this. (Walter Briscoe)

In the MS-DOS/Windows install program, use %VIM% instead of an absolute path,
so that moving Vim requires only one change in the batch file.

Mac: mch_FullName() changed the "fname" argument and didn't always initialize
the buffer.

MS-DOS: mch_FullName() didn't fix forward/backward slashes in an absolute file
name.

"echo expand("%:p:h")" with an empty file name removed one directory name on
MS-DOS.  For Unix, when the file name is a directory, the directory name was
removed.  Now make it consistent: "%:p" adds a path separator for all systems,
but no path separator is added in other situations.

Unix: When checking for a CTRL-C (could happen any time) and there is an X
event (e.g., clipboard updated) and there is typeahead, Vim would hang until a
character was typed.

MS-DOS, MS-Windows and Amiga: expanding "$ENV/foo" when $ENV ends in a colon,
had the slash removed.

":he \^=" gave an error for using \_.  ":he ^=" didn't find tag :set^=.  Even
"he :set^=" didn't find it.

A tags file name "D:/tags" was used as file "tags" in "D:".  That doesn't work
when the current path for D: isn't the root of the drive.

Removed calls to XtInitializeWidgetClass(), they shouldn't be necessary.

When using a dtterm or various other color terminals, and the Normal group has
been set to use a different background color, the background wouldn't always
be displayed with that color.  Added check for "ut" termcap entry: If it's
missing, clearing the screen won't give us the current background color.  Need
to draw each character instead.  Vim now also works when the "cl" (clear
screen) termcap entry is missing.

When repeating a "/" search command with a line offset, the "n" did use the
offset but didn't make the motion linewise.  Made "d/pat/+2" and "dn" do the
same.

Win32: Trying to use ":tearoff" for a menu that doesn't exist caused a crash.

OpenPTY() didn't work on Sequent.  Add a configure check for getpseudotty().

C-indenting: Indented a line starting with ")" with the matching "(", but not
a line starting with "x)" looks strange.  Also compute the indent for aligning
with items inside the () and use the lowest indent.

MS-DOS and Windows: ":n *.vim" also matched files ending in "~".
Moved mch_expandpath() from os_win16.c and os_msdos.c to misc1.c, they are
equal.

Macintosh: (Dany St-Amant)
- In Vi-compatible mode didn't read files with CR line separators.
- Fixed a bug in the handling of Activate/Deactivate Event
- Fixed a bug in gui_mch_dialog (using wrong pointer)

Multibyte GDK XIM: While composing a multibyte-word, if user presses a
mouse button, then the word is removed.  It should remain and composing end.
(Sung-Hyun Nam)

MS-DOS, MS-Windows and OS/2: When reading from stdin, automatic CR-LF
conversion by the C library got in the way of detecting a "dos" 'fileformat'.

When 'smartcase' is set, patterns with "\S" would also make 'ignorecase'
reset.

When clicking the mouse in a column larger than 222, it moved to the first
column.  Can't encode a larger number in a character.  Now limit the number to
222, don't jump back to the first column.

GUI: In some versions CSI would cause trouble, either when typed directly or
when part of a multi-byte sequence.

When using multibyte characters in a ":normal" command, a trailing byte that
is CSI or K_SPECIAL caused problems.

Wildmenu didn't handle multi-byte characters.

":sleep 10" could not be interrupted on Windows, while "gs" could.  Made them
both work the same.

Unix: When waiting for a character is interrupted by an X-windows event (e.g.,
to obtain the contents of the selection), the wait time would not be honored.
A message could be overwritten quickly.  Now compute the remaining waiting
time.

Windows: Completing "\\share\c$\S" inserted a backslash before the $ and then
the name is invalid.  Don't insert the backslash.

When doing an auto-write before ":make", IObuff was overwritten and the wrong
text displayed later.

On the Mac the directories "c:/tmp" and "c:/temp" were used in the defaults
for 'backupdir' and 'directory', they don't exist.

The check for a new file not to be on an MS-DOS filesystem created the file
temporarily, which can be slow.  Don't do this if there is another check for
the swap file being on an MS-DOS filesystem.

Don't give the "Changing a readonly file" warning when reading from stdin.

When using the "Save As" menu entry and not entering a file name, would get an
error message for the trailing ":edit #".  Now only do that when the
alternate file name was changed.

When Vim owns the X11 selection and is being suspended, an application that
tries to use the selection hangs.  When Vim continues it could no longer
obtain the selection.  Now give up the selection when suspending.

option.h and globals.h were included in some files, while they were already
included in vim.h.  Moved the definition of EXTERN to vim.h to avoid doing it
twice.

When repeating an operator that used a search pattern and the search pattern
contained characters that have a special meaning on the cmdline (e.g., CTRL-U)
it didn't work.

Fixed various problems with using K_SPECIAL (0x80) and CSI (0x9b) as a byte in
a (multibyte) character.  For example, the "r" command could not be repeated.

The DOS/Windows install program didn't always work from a directory with a
long filename, because $VIM and the executable name would not have the same
path.

Multi-byte:
- Using an any-but character range [^x] in a regexp didn't work for UTF-8.
  (Muraoka Taro)
- When backspacing over inserted characters in Replace mode multi-byte
  characters were not handled correctly. (Muraoka Taro)
- Search commands "#" and "*" didn't work with multibyte characters. (Muraoka
  Taro)
- Word completion in Insert mode didn't work with multibyte characters.
  (Muraoka Taro)
- Athena/Motif GUI: when 'linespace' is non-zero the cursor would be drawn too
  wide (number of bytes instead of cell width).
- When changing 'encoding' to "euc-jp" and inserting a character Vim would
  crash.
- For euc-jp characters positioning the cursor would sometimes be wrong.
  Also, with two characters with 0x8e leading byte only the first one would be
  displayed.
- When using DYNAMIC_ICONV on Win32 conversion might fail because of using the
  wrong error number. (Muraoka Taro)
- Using Alt-x in the GUI while 'encoding' was set to "utf-8" didn't produce
  the right character.
- When using Visual block selection and only the left halve of a double-wide
  character is selected, the highlighting continued to the end of the line.
- Visual-block delete didn't work properly when deleting the right halve of a
  double-wide character.
- Overstrike mode for the cmdline replaced only the first byte of a multibyte
  character.
- The cursor in Replace mode (also in the cmdline) was to small on a
  double-wide character.
- When a multibyte character contained a 0x80 byte, it didn't work (was using
  a CSI byte instead). (Muraoka Taro)
- Wordwise selection with the mouse didn't work.
- Yanking a modeless selection of multi-byte characters didn't work.
- When 'selection' is "exclusive", selecting a word that ends in a multi-byte
  character used wrong highlighting for the following character.

Win32 with Make_mvc.mak: Didn't compile for debugging. (Craig Barkhouse)

Win32 GUI: When "vimrun.exe" is used to execute an external command, don't
give a message box with the return value, it was already printed by vimrun.
Also avoid printing the return value of the shell when ":silent!" is used.

Win32: selecting a lot of text and using the "find/replace" dialog caused a
crash.

X11 GUI: When typing a character with the 8th bit set and the Meta/Alt
modifier, the modifier was removed without changing the character.

Truncating a message to make it fit on the command line, using "..." for the
middle, didn't always compute the space correctly.

Could not imap <C-@>.  Now it works like <Nul>.

VMS:
- Fixed a few things for VAXC.  os_vms_fix.com had some strange CTRL-M
  characters. (Zoltan Arpadffy and John W. Hamill)
- Added VMS-specific defaults for the 'isfname' and 'isprint' options.
  (Zoltan Arpadffy)
- Removed os_vms_osdef.h, it's no longer used.

The gzip plugin used a ":normal" command, this doesn't work when dropping a
compressed file on Vim.

In very rare situations a binary search for a tag would fail, because an
uninitialized value happens to be half the size of the tag file. (Narendran)

When using BufEnter and BufLeave autocommands to enable/disable a menu, it
wasn't updated right away.

When doing a replace with the "c"onfirm flag, the cursor was positioned after
the ruler, instead of after the question.  With a long replacement string the
screen could scroll up and cause a "more" prompt.  Now the message is
truncated to make it fit.

Motif: The autoconf check for the Xp library didn't work.

When 'verbose' is set to list lines of a sourced file, defining a function
would reset the counter used for the "more" prompt.

In the Win32 find/replace dialog, a '/' character caused problems.  Escape it
with a backslash.

Starting a shell with ":sh" was different from starting a shell for CTRL-Z
when suspending doesn't work.  They now work the same way.

Jumping to a file mark while in a changed buffer gave a "mark not set" error.

":execute histget("cmd")" causes an endless loop and crashed Vim.  Now catch
all commands that cause too much recursiveness.

Removed "Failed to open input method" error message, too many people got this
when they didn't want to use a XIM.

GUI: When compiled without the +windows feature, the scrollbar would start
below line one.

Removed the trick with redefining character class functions from regexp.c.

Win32 GUI: Find dialog gives focus back to main window, when typing a
character mouse pointer is blanked, it didn't reappear when moving it in the
dialog window. (Vince Negri)

When recording and typing a CTRL-C, no character was recorded.  When in Insert
mode or cancelling half a command, playing back the recorded sequence wouldn't
work.  Now record the CTRL-C.

When the GUI was started, mouse codes for DEC and netterm were still checked
for.

GUI: When scrolling and 'writedelay' is non-zero, the character under the
cursor was displayed in the wrong position (one line above/below with
CTRL-E/CTRL-Y).

A ":normal" command would reset the 'scrollbind' info.  Causes problems when
using a ":normal" command in an autocommand for opening a file.

Windows GUI: a point size with a dot, like "7.5", wasn't recognized. (Muraoka
Taro)

When 'scrollbind' wasn't set would still remember the current position,
wasting time.

GTK: Crash when 'shell' doesn't exist and doing":!ls".  Use _exit() instead of
exit() when the child couldn't execute the shell.

Multi-byte:
- GUI with double-byte encoding: a mouse click in left halve of double-wide
  character put the cursor in previous char.
- Using double-byte encoding and 'selection' is "exclusive": "vey" and "^Vey"
  included the character after the word.
- When using a double-byte encoding and there is a lead byte at the end of the
  line, the preceding line would be displayed.  "ga" also showed wrong info.
- "gf" didn't include multi-byte characters before the cursor properly.
  (Muraoka Taro)

GUI: The cursor was sometimes not removed when scrolling.  Changed the policy
from redrawing the cursor after each call to gui_write() to only update it at
the end of update_screen() or when setting the cursor position.  Also only
update the scrollbars at the end of update_screen(), that's the only place
where the window text may have been scrolled.

Formatting "/*<Tab>long text", produced "* <Tab>" in the next line.  Now
remove the space before the Tab.
Formatting "/*<Tab>  long text", produced "* <Tab> long text" in the next
line.  Now keep the space after the Tab.

In some places non-ASCII alphabetical characters were accepted, which could
cause problems.  For example, ":X" (X being such a character).

When a pattern matches the end of the line, the last character in the line was
highlighted for 'hlsearch'.  That looks wrong for "/\%3c".  Now highlight the
character just after the line.

Motif: If a dialog was closed by clicking on the "X" of the window frame Vim
would no longer respond.

When using CTRL-X or CTRL-A on a number with many leading zeros, Vim would
crash. (Matsumoto)

When 'insertmode' is set, the mapping in mswin.vim for CTRL-V didn't work in
Select mode.  Insert mode wasn't restarted after overwriting the text.
Now allow nesting Insert mode with insert and change commands.  CTRL-O
cwfoo<Esc> now also works.

Clicking with the right mouse button in another window started Visual mode,
but used the start position of the current window.  Caused ml_get errors when
the line number was invalid.  Now stay in the same window.

When 'selection' is "exclusive", "gv" sometimes selected one character fewer.

When 'comments' contains more than one start/middle/end triplet, the optional
flags could be mixed up.  Also didn't align the end with the middle part.

Double-right-click in Visual mode didn't update the shown mode.

When the Normal group has a font name, it was never used when starting up.
Now use it when 'guifont' and 'guifontset' are empty.
Setting a font name to a highlight group before the GUI was started didn't
work.

"make test" didn't use the name of the generated Vim executable.

'cindent' problems:
- Aligned with an "else" inside a do-while loop for a line below that loop.
  (Meikel Brandmeyer)
- A line before a function would be indented even when terminated with a
  semicolon. (Meikel Brandmeyer)
- 'cindent' gave too much indent to a line after a "};" that ends an array
  init.
- Support declaration lines ending in "," and "\".  (Meikel Brandmeyer)
- A case statement inside a do-while loop was used for indenting a line after
  the do-while loop. (Meikel Brandmeyer)
- When skipping a string in a line with one double quote it could continue in
  the previous line. (Meikel Brandmeyer)

When 'list' is set, 'hlsearch' didn't highlight a match at the end of the
line.  Now highlight the '$'.

The Paste menu item in the menu bar, the popup menu and the toolbar were all
different.  Now made them all equal to how it was done in mswin.vim.

st_dev can be smaller than "unsigned".  The compiler may give an overflow
warning.  Added a configure check for dev_t.

Athena: closing a confirm() dialog killed Vim.

Various typos in the documentation. (Matt Dunford)

Python interface: The definition of _DEBUG could cause trouble, undefine it.
The error message for not being able to load the shared library wasn't
translated.  (Muraoka Taro)

Mac: (Dany St-Amant and Axel Kielhorn)
- Several fixes.
- Vim was eating 80% of the CPU time.
- The project os_mac.pbxproj didn't work,  Moved it to a subdirectory.
- Made the menu priority work for the menubar.
- Fixed a problem with dragging the scrollbar.
- Cleaned up the various #ifdefs.

Unix: When catching a deadly signal and we keep getting one use _exit() to
exit in a quick and dirty way.

Athena menu ordering didn't work correctly. (David Harrison)

A ":make" or ":grep" command with a long argument could cause a crash.

Doing ":new file" and using "Quit" for the ATTENTION dialog still opened a new
window.

GTK: When starting the GUI and there is an error in the .vimrc file, don't
present the wait-return prompt, since the message was given in the terminal.

When there was an error in a .vimrc file the terminal where gvim was started
could be cleared.  Set msg_row in main.c before writing any messages.

GTK and X11 GUI: When trying to read characters from the user (e.g. with
input()) before the Vim window was opened caused Vim to hang when it was
started from the desktop.

OS/390 uses 31 bit pointers.  That broke some computations with MAX_COL.
Reduce MAX_COL by one bit for OS/390. (Ralf Schandl)

When defining a function and it already exists, Vim didn't say it existed
until after typing it.  Now do this right away when typing it.

The message remembered for displaying later (keep_msg) was sometimes pointing
into a generic buffer, which might be changed by the time the message is
displayed.  Now make a copy of the message.

When using multi-byte characters in a menu and a trailing byte is a backslash,
the menu would not be created correctly.  (Muraoka Taro)
Using a multibyte character in the substitute string where a trail byte is a
backslash didn't work.  (Muraoka Taro)

When setting "t_Co" in a vimrc file, then setting it automatically from an
xterm termresponse and then setting it again manually caused a crash.

When getting the value of a string option that is not supported, the number
zero was returned.  This breaks a check like "&enc == "asdf".  Now an empty
string is returned for string options.

Crashed when starting the GTK GUI while using 'notitle' in the vimrc, setting
'title' in the gvimrc and starting the GUI with ":gui".  Closed the connection
to the X server accidentally.

Had to hit return after selecting an entry for ":ts".

The message from ":cn" message was sometimes cleared.  Now display it after
redrawing if it doesn't cause a scroll (truncated when necessary).

hangulin.c didn't compile when the GUI was disabled.  Disable it when it won't
work.

When setting a termcap option like "t_CO", the value could be displayed as
being for a normal key with a modifier, like "<M-=>".

When expanding the argument list, entries which are a directory name did not
get included.  This stopped "vim c:/" from opening the file explorer.

":syn match sd "^" nextgroup=asdf" skipped the first column and matched the
nextgroup in the second column.

GUI: When 'lazyredraw' is set, 'showmatch' didn't work.  Required flushing
the output.

Don't define the <NetMouse> termcode in an xterm, reduces the problem when
someone types <Esc> } in Insert mode.

Made slash_adjust() work correctly for multi-byte characters. (Yasuhiro
Matsumoto)
Using a filename in Big5 encoding for autocommands didn't work (backslash in
trailbyte).  (Yasuhiro Matsumoto)

DOS and Windows: Expanding *.vim also matched file.vimfoo.  Expand path like
Unix to avoid problems with Windows dir functions.  Merged the DOS and Win32
functions.

Win32: Gvimext could not edit more than a few files at once, the length of the
argument was fixed.

"ls -1 * | xargs vim" worked, but the input was in cooked mode.  Now switch to
raw mode when needed.  Use dup() to copy the stderr file descriptor to stdin
to make shell commands work.  No longer requires an external program to do
this.

When using ":filetype off", ftplugin and indent usage would be switched off at
the same time.  Don't do this, setting 'filetype' manually can still use them.

GUI: When writing a double-byte character, it could be split up in two calls
to gui_write(), which doesn't work.  Now flush before the output buffer
becomes full.

When 'laststatus' is set and 'cmdheight' is two or bigger, the intro message
would be written over the status line.
The ":intro" command didn't work when there wasn't enough room.

Configuring for Ruby failed with a recent version of Ruby. (Akinori Musha)

Athena: When deleting the directory in which Vim was started, using the file
browser made Vim exit.  Removed the use of XtAppError().

When using autoconf 2.50, UNIX was not defined.  Moved the comment for "#undef
UNIX" to a separate line.

Win32: Disabled _OnWindowPosChanging() to make maximize work better.

Win32: Compiling with VC 4.0 didn't work. (Walter Briscoe)

Athena:
- Finally fixed the problems with deleting a menu. (David Harrison)
- Athena: When closing the confirm() dialog, worked like OK was pressed,
  instead of Cancel.

The file explorer didn't work in compatible mode, because of line
continuation.

Didn't give an error message for ":digraph a".

When using Ex mode in the GUI and typing a special key, <BS> didn't delete it
correctly.  Now display '?' for a special key.

When an operator is pending, clicking in another window made it apply to that
window, even though the line numbers could be beyond the end of the buffer.

When a function call doesn't have a terminating ")" Vim could crash.

Perl interface: could crash on exit with perl 5.6.1. (Anduin Withers)

Using %P in 'errorformat' wasn't handled correctly. (Tomas Zellerin)

Using a syntax cluster that includes itself made Vim crash.

GUI: With 'ls' set to 2, dragging the status line all the way up, then making
the Vim window smaller: Could not the drag status line anymore.

"vim -c startinsert! file" placed cursor on last char of a line, instead of
after it.  A ":set" command in the buffer menu set w_set_curswant.  Now don't
do this when w_curswant is MAXCOL.

Win32: When the gvim window was maximized and selecting another font, the
window would no longer fill the screen.

The line with 'pastetoggle' in ":options" didn't show the right value when it
is a special key.  Hitting <CR> didn't work either.

Formatting text, resulting in a % landing in the first line, repeated the % in
the following lines, like it's the start of a comment.

GTK: When adding a toolbar item while gvim is already running, it wasn't
possible to use the tooltip.  Now it works by adding the tooltip first.

The output of "g CTRL-G" mentioned "Char" but it's actually bytes.

Searching for the end of a oneline region didn't work correctly when there is
an offset for the highlighting.

Syntax highlighting: When synchronizing on C-comments, //*/ was seen as the
start of a comment.

Win32: Without scrollbars present, the MS mouse scroll wheel didn't work.
Also handle the scrollbars when they are not visible.

Motif: When there is no right scrollbar, the bottom scrollbar would still
leave room for it.  (Marcin Dalecki)

When changing 'guicursor' and the value is invalid, some of the effects would
still take place.  Now first check for errors and only make the new value
effective when it's OK.

Using "A" In Visual block mode, appending to lines that don't extend into the
block, padding was wrong.

When pasting a block of text, a character that occupies more than one screen
column could be deleted and spaces inserted instead.  Now only do that with a
tab.

Fixed conversion of documentation to HTML using Perl. (Dan Sharp)

Give an error message when a menu name starts with a dot.

Avoid a hang when executing a shell from the GUI on HP-UX by pushing "ptem"
even when sys/ptem.h isn't present.

When creating the temp directory, make sure umask is 077, otherwise the
directory is not accessible when it was set to 0177.

Unix: When resizing the window and a redraw is a bit slow, could get a window
resize event while redrawing, resulting in a messed up window.  Any input
(e.g., a mouse click) would redraw.

The "%B" item in the status line became zero in Insert mode (that's normal)
for another than the current window.

The menu entries to convert to xxd and back didn't work in Insert mode.

When ":vglobal" didn't find a line where the pattern doesn't match, the error
message would be the wrong way around.

When ignoring a multi-line error message with "%-A", the continuation lines
would be used anyway. (Servatius Brandt)

"grx" on a double-wide character inserted "x", instead of replacing the
character with "x ".  "gR" on <xx> ('display' set the "uhex") didn't replace
at all.  When doing "gRxx" on a control character the first "x" would be
inserted, breaking the alignment.

Added "0)" to 'cinkeys', so that when typing a ) it is put in the same place
as where "==" would put it.

Win32: When maximized, adding/removing toolbar didn't resize the text area.

When using <C-RightMouse> a count was discarded.

When typing CTRL-V and <RightMouse> in the command line, would insert
<LeftMouse>.

Using "vis" or "vas" when 'selection' is exclusive didn't include the last
character.

When adding to an option like 'grepprg', leading space would be lost.  Don't
expand environment variables when there is no comma separating the items.

GUI: When using a bold-italic font, would still use the bold trick and
underlining.

Motif: The default button didn't work in dialogs, the first one was always
used.  Had to give input focus to the default button.

When using CTRL-T to jump within the same file, the '' mark wasn't set.

Undo wasn't Vi compatible when using the 'c' flag for ":s".  Now it undoes the
whole ":s" command instead of each confirmed replacement.

The Buffers menu, when torn-off, disappeared when being refreshed.  Add a
dummy item to avoid this.

Removed calling msg_start() in main(), it should not be needed.

vim_strpbrk() did not support multibyte characters. (Muraoka Taro)

The Amiga version didn't compile, the code was too big for relative jumps.
Moved a few files from ex_docmd.c to ex_cmds2.c

When evaluating the "= register resulted in the "= register being changed, Vim
would crash.

When doing ":view file" and it fails, the current buffer was made read-only.

Motif: For some people the separators in the toolbar disappeared when resizing
the Vim window. (Marcin Dalecki)

Win32 GUI: when setting 'lines' to a huge number, would not compute the
available space correctly.  Was counting the menu height twice.

Conversion of the docs to HTML didn't handle the line with the +quickfix tag
correctly. (Antonio Colombo)

Win32: fname_case() didn't handle multi-byte characters correctly. (Yasuhiro
Matsumoto)

The Cygwin version had trouble with fchdir().  Don't use that function for
Cygwin.

The generic check in scripts.vim for "conf" syntax was done before some checks
in filetype.vim, resulting in "conf" syntax too often.

Dos32: Typing lagged behind.  Would wait for one biostick when checking if a
character is available.

GTK: When setting 'columns' while starting up "gvim", would set the width of
the terminal it was started in.

When using ESC in Insert mode, an autoindent that wraps to the next line
caused the cursor to move to the end of the line temporarily.  When the
character before the cursor was a double-wide multi-byte character the cursor
would be on the right halve, which causes problems with some terminals.

Didn't handle multi-byte characters correctly when expanding a file name.
(Yasuhiro Matsumoto)

Win32 GUI: Errors generated before the GUI is decided to start were not
reported.

globpath() didn't reserve enough room for concatenated results. (Anduin
Withers)

When expanding an option that is very long already, don't do the expansion, it
would be truncated to MAXPATHL. (Anduin Withers)

When 'selection' is "exclusive", using "Fx" in Visual mode only moved until
just after the character.

When using IME on the console to enter a file name, the screen may scroll up.
Redraw the screen then. (Yasuhiro Matsumoto)

Motif: In the find/replace dialog the "Replace" button didn't work first time,
second time it replaced all matches.  Removed the use of ":s///c".
GTK: Similar problems with the find/replace dialog, moved the code to a common
function.

X11: Use shared GC's for text. (Marcin Dalecki)

"]i" found the match under the cursor, instead of the first one below it.
Same for "]I", "] CTRL-I", "]d", "]D" and "] CTRL-D".

Win16: When maximized and the font is changed, don't change the window size.
(Vince Negri)

When 'lbr' is set, deleting a block of text could leave the cursor in the
wrong position.

Win32: When opening a file with the "Edit with Vim" popup menu entry,
wildcards would cause trouble.  Added the "--literal" argument to avoid
expanding file names.

When using "gv", it didn't restore that "$" was used in Visual block mode.

Win32 GUI: While waiting for a shell command to finish, the window wasn't
redrawn at all. (Yasuhiro Matsumoto)

Syntax highlighting: A match that continues on a next line because of a
contained region didn't end when that region ended.

The ":s" command didn't allow flags like 'e' and 'i' right after it.

When using ":s" to split a line, marks were moved to the next line.  Vi keeps
them in the first line.

When using ":n" ":rew", the previous context mark was at the top of the file,
while Vi puts it in the same place as the cursor.  Made it Vi compatible.

Fixed Vi incompatibility: Text was not put in register 1 when using "c" and
"d" with a motion character, when deleting within one line with one of the
commands: % ( ) `<character> / ? N n { }

Win32 GUI: The tooltip for tear-off items remained when the tear-off item was
no longer selected.

GUI: When typing ":" at the more prompt, would return to Normal mode and not
redraw the screen.

When starting Vim with an argument "-c g/at/p" the printed lines would
overwrite each other.

BeOS: Didn't compile.  Configure didn't add the os_beos files, the QNX check
removed them.  Various changes to os_beos.cc. (Joshua Haberman)
Removed the check for the hardware platform, the BeBox has not been produced
for a long time now.

Win32 GUI: don't use a message box when the shell returns an error code,
display the message in the Vim window.

Make_mvc.mak always included "/debug" for linking.  "GUI=no" argument didn't
work.  Use "DEBUG=yes" instead of "DEBUG=1" to make it consistent. (Dan Sharp)

When a line in the tags file ended in ;" (no TAB following) the command would
not be recognized as a search command.

X11: The inputMethod resource never worked.  Don't use the "none" input method
for SGI, it apparently makes the first character in Input method dropped.

Fixed incorrect tests in os_mac.h. (Axel Kielhorn)

Win32 console: When the console where Vim runs in is closed, Vim could hang in
trying to restore the window icon. (Yasuhiro Matsumoto)

When using ":3call func()" or ":3,3call func() the line number was ignored.

When 'showbreak' and 'linebreak' were both set, Visual highlighting sometimes
continued until the end of the line.

GTK GUI: Tearoff items were added even when 'guioptions' didn't contain 't'
when starting up.

MS-Windows: When the current directory includes a "~", searching files with
"gf" or ":find" didn't work.  A "$" in the directory had the same problem.
Added mch_has_exp_wildcard() functions.

When reducing the Vim window height while starting up, would get an
out-of-memory error message.

When editing a very long search pattern, 'incsearch' caused the redraw of the
command line to fail.

Motif GUI: On some systems the "Help" menu would not be on the far right, as
it should be.  On some other systems (esp. IRIX) the command line would not
completely show.  Solution is to only resize the menubar for Lesstif.

Using "%" in a line that contains "\\" twice didn't take care of the quotes
properly.  Now make a difference between \" and \\".

For non-Unix systems a dummy file is created when finding a swap name to
detect a 8.3 filesystem.  When there is an existing swap file, would get a
warning for the file being created outside of Vim.  Also, when closing the Vim
window the file would remain.

Motif: The menu height was always computed, using a "-menuheight" argument
was setting the room for the command line.  Now make clear the argument is not
supported.

For some (EBCDIC) systems, POUND was equal to '#'.  Added an #if for that to
avoid a duplicate case in a switch.

The GUI may have problems when forking.  Always call _exit() instead of exit()
in the parent, the child will call exit().

Win32 GUI: Accented characters were often wrong in dialogs and tearoff menus.
Now use CP_ACP instead of CP_OEMCP. (Vince Negri)

When displaying text with syntax highlighting causes an error (e.g., running
out of stack) the syntax highlighting is disabled to avoid further messages.

When a command in a .vimrc or .gvimrc causes an ATTENTION prompt, and Vim was
started from the desktop (no place to display messages) it would hang.  Now
open the GUI window early to be able to display the messages and pop up the
dialog.

"r<CR>" on a multi-byte character deleted only the first byte of the
character.  "3r<CR>" deleted three bytes instead of three characters.

When interrupting reading a file, Vi considers the buffer modified.  Added the
'i' flag in 'cpoptions' flag for this (we don't want it modified to be able to
do ":q").

When using an item in 'guicursor' that starts with a colon, Vim would get
stuck or crash.

When putting a file mark in a help file and later jumping back to it, the
options would not be set.  Extended the modeline in all help files to make
this work better.

When a modeline contained "::" the local option values would be printed.  Now
ignore it.

Some help files did not use a 8.3 names, which causes problems when using
MS-DOS unzip.  Renamed "multibyte.txt" to "mbyte.txt", "rightleft.txt" to
"rileft.txt", "tagsearch.txt" to "tagsrch.txt", "os_riscos.txt" to
"os_risc.txt".

When Visual mode is blockwise, using "iw" or "aw" made it characterwise.  That
doesn't seem right, only do this when in linewise mode.  But then do it
always, not only when start and end of Visual mode are equal.

When using "viw" on a single-letter word and 'selection' is exclusive, would
not include the word.

When formatting text from Insert mode, using CTRL-O, could mess up undo
information.

While writing a file (also for the backup file) there was no check for an
interrupt (hitting CTRL-C).  Vim could hang when writing a large file over a
slow network, and moving the mouse didn't make it appear (when 'mousehide' is
set) and the screen wasn't updated in the GUI.  Also allow interrupting when
syncing the swap file, it can take a long time.

When using ":mksession" while there is help window, it would later be restored
to the right file but not marked as a help buffer.  ":help" would then open
another window.  Now use the value "help" for 'buftype' to mark a help buffer.

The session file contained absolute path names in option values, that doesn't
work when the home directory depends on the situation.  Replace the home
directory with ~/ when possible.

When using 'showbreak' a TAB just after the shown break would not be counted
correctly, the cursor would be positioned wrong.

With 'showbreak' set to "--->" or "------->" and 'sts' set to 4, inserting
tabs did not work right.  Could cause a crash.  Backspacing was also wrong,
could get stuck at a line break.

Win32: crashed when tearing off a menu with over 300 items.

GUI: A menu or toolbar item would appear when only a tooltip was defined for
it.

When 'scrolloff' is non-zero and "$" is in 'cpoptions', using "s" while the
last line of the file is the first line on screen, the text wasn't displayed.

When running "autoconf", delete the configure cache to force starting cleanly
when configure is run again.

When changing the Normal colors for cterm, the value of 'background' was
changed even when the GUI was used.

The warning for a missing vimrun.exe was always given on startup, but some
people just editing a file don't need to be bothered by it.  Only show it when
vimrun would be used.

When using "%" in a multibyte text it could get confused by trailbytes that
match. (Muraoka Taro)

Termcap entry for RiscOS was wrong, using 7 and 8 in octal codes.

Athena: The title of a dialog window and the file selector window were not
set. (David Harrison)

The "htmlLink" highlight group specified colors, which gives problems when
using a color scheme.  Added the "Underlined" highlight group for this.

After using ":insert" or ":change" the '[ mark would be one line too low.

When looking for the file name after a match with 'include' one character was
skipped.  Same for 'define'.

Win32 and DJGPP: When editing a file with a short name in a directory, and
editing the same file but using the long name, would end up with two buffers
on the same file.

"gf" on a filename that starts with "../" only worked when the file being
edited is in the current directory.  An include file search didn't work
properly for files starting with "../" or ".".  Now search both relative to
the file and to the current directory.

When 'printheader', 'titlestring', 'iconstring', 'rulerformat' or 'statusline'
contained "%{" but no following "}" memory was corrupted and a crash could
happen.

":0append" and then inserting two lines did not redraw the blank lines that
were scrolled back down.

When using insert mode completion in a narrow window, the message caused a
scroll up.  Now shorten the message if it doesn't fit and avoid writing the
ruler over the message.

XIM still didn't work correctly on some systems, especially SGI/IRIX.  Added
the 'imdisable' option, which is set by default for that system.

Patch 6.0aw.008
Problem:    When the first character of a file name is over 127, the Buffers
	    menu entry would get a negative priority and cause problems.
Solution:   Reduce the multiplier for the first character when computing
	    the hash value for a Buffers menu entry.
Files:	    runtime/menu.vim

Patch 6.0aw.010
Problem:    Win32: ":browse edit dir/dir" didn't work. (Vikas)
Solution:   Change slashes to backslashes in the directory passed to the file
	    browser.
Files:	    src/gui_w48.c

Athena file browser: On some systems wcstombs() can't be used to get the
length of a multi-byte string.  Use the maximum length then. (Yasuhiro
Matsumoto)

Patch 6.0ax.001
Problem:    When 'patchmode' is set, appending to a file gives an empty
	    original file. (Ed Ralston)
Solution:   Also make a backup copy when appending and 'patchmode' is set.
Files:	    src/fileio.c

Patch 6.0ax.002
Problem:    When 'patchmode' is set, appending to a compressed file gives an
	    uncompressed original file. (Ed Ralston)
Solution:   Create the original file before decompressing.
Files:	    runtime/plugin/gzip.vim

Patch 6.0ax.005
Problem:    Athena file selector keeps the title of the first invocation.
Solution:   Set the title each time the file selector is opened. (David
	    Harrison)
Files:	    src/gui_at_fs.c

Patch 6.0ax.007
Problem:    When using GPM (mouse driver in a Linux console) a double click is
	    interpreted as a scroll wheel click.
Solution:   Check if GPM is being used when deciding if a mouse event is for
	    the scroll wheel.
Files:	    src/term.c

Patch 6.0ax.010
Problem:    The Edit.Save menu and the Save toolbar button didn't work when
	    the buffer has no file name.
Solution:   Use a file browser to ask for a file name.  Also fix the toolbar
	    Find item in Visual mode.
Files:	    runtime/menu.vim

Patch 6.0ax.012
Problem:    When 'cpoptions' contains "$", breaking a line for 'textwidth'
	    doesn't redraw properly. (Stefan Schulze)
Solution:   Remove the dollar before breaking the line.
Files:	    src/edit.c

Patch 6.0ax.014
Problem:    Win32: On Windows 98 ":make -f file" doesn't work when 'shell' is
	    "command.com" and 'makeprg' is "nmake".  The environment isn't
	    passed on to "nmake".
Solution:   Also use vimrun.exe when redirecting the output of a command.
Files:	    src/os_win32.c

Patch 6.0ax.016
Problem:    The version number was reported wrong in the intro screen.
Solution:   Check for a version number with two additional letters.
Files:	    src/version.c

Patch 6.0ax.019
Problem:    When scrolling a window with folds upwards, switching to another
	    vertically split window and back may not update the scrollbar.
Solution:   Limit w_botline to the number of lines in the buffer plus one.
Files:	    src/move.c


==============================================================================
VERSION 6.1						*version-6.1*

This section is about improvements made between version 6.0 and 6.1.

This is a bug-fix release, there are not really any new features.


Changed							*changed-6.1*
-------

'iminsert' and 'imsearch' are no longer set as a side effect of defining a
language-mapping using ":lmap".


Added							*added-6.1*
-----

Syntax files:
ampl		AMPL (David Krief)
ant		Ant (Johannes Zellner)
baan		Baan (Her van de Vliert)
cs		C# (Johannes Zellner)
lifelines	Lifelines (Patrick Texier)
lscript		LotusScript (Taryn East)
moo		MOO (Timo Frenay)
nsis		NSIS (Alex Jakushev)
ppd		Postscript Printer Description (Bjoern Jacke)
rpl		RPL/2 (Joel Bertrand)
scilab		Scilab (Benoit Hamelin)
splint		Splint (Ralf Wildenhues)
sqlj		SQLJ (Andreas Fischbach)
wvdial		WvDial (Prahlad Vaidyanathan)
xf86conf	XFree86 config (Nikolai Weibull)
xmodmap		Xmodmap (Nikolai Weibull)
xslt		Xslt (Johannes Zellner)
monk		Monk (Mike Litherland)
xsd		Xsd (Johannes Zellner)
cdl		CDL (Raul Segura Acevedo)
sendpr		Send-pr (Hendrik Scholz)

Added indent file for Scheme. (Dorai Sitaram)
Added indent file for Prolog. (Kontra Gergely)
Added indent file for Povray (David Necas)
Added indent file for IDL (Aleksandar Jelenak)
Added C# indent and ftplugin scripts.

Added Ukrainian menu translations. (Bohdan Vlasyuk)
Added ASCII version of the Czech menus. (Jiri Brezina)

Added Simplified Chinese translation of the tutor. (Mendel L Chan)

Added Russian keymap for yawerty keyboard.

Added an explanation of using the vimrc file in the tutor.
Changed tutor.vim to get the right encoding for the Taiwainese tutor.

Added Russian tutor. (Andrey Kiselev)
Added Polish tutor. (Mikolaj Machowski)

Added darkblue color scheme. (Bohdan Vlasyuk)

When packing the dos language archive automatically generate the .mo files
that are required.

Improved NSIS script to support NSIS 180.  Added icons for the
enabled/disabled status. (Mirek Pruchnik)

cp1250 version of the Slovak message translations.

Compiler plugins for IRIX compilers. (David Harrison)


Fixed							*fixed-6.1*
-----

The license text was updated to make the meaning clearer and make it
compatible with the GNU GPL.  Otherwise distributors have a problem when
linking Vim with a GPL'ed library.

When installing the "less.sh" script it was not made executable. (Chuck Berg)

Win32: The "9" key on the numpad wasn't working. (Julian Kinraid)

The NSIS install script didn't work with NSIS 1.80 or later.  Also add
Vim-specific icons. (Pruchnik)

The script for conversion to HTML contained an "if" in the wrong place.
(Michael Geddes)

Allow using ":ascii" in the sandbox, it's harmless.

Removed creat() from osdef2.h.in, it wasn't used and may cause a problem when
it's redefined to creat64().

The text files in the VisVim directory were in "dos" format.  This caused
problems when applying a patch.  Now keep them in "unix" format and convert
them to "dos" format only for the PC archives.

Add ruby files to the dos source archive, they can be used by Make_mvc.mak.
(Mirek Pruchnik)

"cp -f" doesn't work on all systems.  Change "cp -f" in the Makefile to "rm
-f" and "cp".

Didn't compile on a Compaq Tandem Himalaya OSS. (Michael A. Benzinger)

The GTK file selection dialog didn't include the "Create Dir", "Delete File"
and "Rename File" buttons.

When doing ":browse source" the dialog has the title "Run Macro".  Better
would be "Source Vim script". (Yegappan Lakshmanan)

Win32: Don't use the printer font as default for the font dialog.

"make doslang" didn't work when configure didn't run (yet).  Set $MAKEMO to
"yes". (Mirek Pruchnik)

The ToolBar TagJump item used "g]", which prompts for a selection even when
there is only one matching tag.  Use "g<C-]>" instead.

The ming makefile for message translations didn't have the right list of
files.

The MS-Windows 3.1 version complains about LIBINTL.DLL not found.  Compile
this version without message translations.

The Borland 5 makefile contained a check for Ruby which is no longer needed.
The URLs for the TCL library was outdated. (Dan Sharp)

The eviso.ps file was missing from the DOS runtime archive, it's needed for
printing PostScript in the 32bit DOS version.

In menu files ":scriptencoding" was used in a wrong way after patch 6.1a.032
Now use ":scriptencoding" in the file where the translations are given.  Do
the same for all menus in latin1 encoding.

Included a lot of fixes for the Macintosh, mostly to make it work with Carbon.
(Dany StAmant, Axel Kielhorn, Benji Fisher)

Improved the vimtutor shell script to use $TMPDIR when it exists, and delete
the copied file when exiting in an abnormal way. (Max Ischenko)

When "iconv.dll" can't be found, try using "libiconv.dll".

When encryption is used, filtering with a shell command wasn't possible.

DJGPP: ":cd c:" always failed, can't get permissions for "c:".
Win32: ":cd c:/" failed if the previous current directory on c: had become
invalid.

DJGPP: Shift-Del and Del both produce \316\123.  Default mapping for Del is
wrong.  Disabled it.

Dependencies on header files in MingW makefile was wrong.

Win32: Don't use ACL stuff for MSVC 4.2, it's not supported. (Walter Briscoe)

Win32 with Borland: bcc.cfg was caching the value for $(BOR), but providing a
different argument to make didn't regenerate it.

Win32 with MSVC: Make_ivc.mak generates a new if_ole.h in a different
directory, the if_ole.h in the src directory may be used instead.  Delete the
distributed file.

When a window is vertically split and then ":ball" is used, the window layout
is messed up, can cause a crash. (Muraoka Taro)

When 'insertmode' is set, using File/New menu and then double clicking, "i" is
soon inserted. (Merlin Hansen)

When Select mode is active and using the Buffers menu to switch to another
buffer, an old selection comes back.  Reset VIsual_reselect for a ":buffer"
command.

When Select mode is active and 'insertmode' is set, using the Buffers menu to
switch to another buffer, did not return to Insert mode.  Make sure
"restart_edit" is set.

When double clicking on the first character of a word while 'selection' is
"exclusive" didn't select that word.


Patch 6.0.001
Problem:    Loading the sh.vim syntax file causes error messages . (Corinna
	    Vinschen)
Solution:   Add an "if". (Charles Campbell)
Files:	    runtime/syntax/sh.vim

Patch 6.0.002
Problem:    Using a '@' item in 'viminfo' doesn't work. (Marko Leipert)
Solution:   Add '@' to the list of accepted items.
Files:	    src/option.c

Patch 6.0.003
Problem:    The configure check for ACLs on AIX doesn't work.
Solution:   Fix the test program so that it compiles. (Tomas Ogren)
Files:	    src/configure.in, src/auto/configure

Patch 6.0.004
Problem:    The find/replace dialog doesn't reuse a previous argument
	    properly.
Solution:   After removing a "\V" terminate the string. (Zwane Mwaikambo)
Files:	    src/gui.c

Patch 6.0.005
Problem:    In Insert mode, "CTRL-O :ls" has a delay before redrawing.
Solution:   Don't delay just after wait_return() was called.  Added the
	    did_wait_return flag.
Files:	    src/globals.h, src/message.c, src/normal.c, src/screen.c

Patch 6.0.006
Problem:    With a vertical split, 'number' set and 'scrolloff' non-zero,
	    making the window width very small causes a crash. (Niklas
	    Lindstrom)
Solution:   Check for a zero width.
Files:	    src/move.c

Patch 6.0.007
Problem:    When setting 'filetype' while there is no FileType autocommand, a
	    following ":setfiletype" would set 'filetype' again. (Kobus
	    Retief)
Solution:   Set did_filetype always when 'filetype' has been set.
Files:	    src/option.c

Patch 6.0.008
Problem:    'imdisable' is missing from the options window. (Michael Naumann)
Solution:   Add an entry for it.
Files:	    runtime/optwin.vim

Patch 6.0.009
Problem:    Nextstep doesn't have S_ISBLK. (John Beppu)
Solution:   Define S_ISBLK using S_IFBLK.
Files:	    src/os_unix.h

Patch 6.0.010
Problem:    Using "gf" on a file name starting with "./" or "../" in a buffer
	    without a name causes a crash. (Roy Lewis)
Solution:   Check for a NULL file name.
Files:	    src/misc2.c

Patch 6.0.011
Problem:    Python: After replacing or deleting lines get an ml_get error.
	    (Leo Lipelis)
Solution:   Adjust the cursor position for deleted or added lines.
Files:	    src/if_python.c

Patch 6.0.012
Problem:    Polish translations contain printf format errors, this can result
	    in a crash when using one of them.
Solution:   Fix for translated messages. (Michal Politowski)
Files:	    src/po/pl.po

Patch 6.0.013
Problem:    Using ":silent! cmd" still gives some error messages, like for an
	    invalid range. (Salman Halim)
Solution:   Reset emsg_silent after calling emsg() in do_one_cmd().
Files:	    src/ex_docmd.c

Patch 6.0.014
Problem:    When 'modifiable' is off and 'virtualedit' is "all", "rx" on a TAB
	    still changes the buffer. (Muraoka Taro)
Solution:   Check if saving the line for undo fails.
Files:	    src/normal.c

Patch 6.0.015
Problem:    When 'cpoptions' includes "S" and "filetype plugin on" has been
	    used, can get an error for deleting the b:did_ftplugin variable.
	    (Ralph Henderson)
Solution:   Only delete the variable when it exists.
Files:	    runtime/ftplugin.vim

Patch 6.0.016
Problem:    bufnr(), bufname() and bufwinnr() don't find unlisted buffers when
	    the argument is a string. (Hari Krishna Dara)
	    Also for setbufvar() and getbufvar().
Solution:   Also find unlisted buffers.
Files:	    src/eval.c

Patch 6.0.017
Problem:    When 'ttybuiltin' is set and a builtin termcap entry defines t_Co
	    and the external one doesn't, it gets reset to empty. (David
	    Harrison)
Solution:   Only set t_Co when it wasn't set yet.
Files:	    src/term.c

Patch 6.0.018
Problem:    Initializing 'encoding' may cause a crash when setlocale() is not
	    used. (Dany St-Amant)
Solution:   Check for a NULL pointer.
Files:	    src/mbyte.c

Patch 6.0.019
Problem:    Converting a string with multi-byte characters to a printable
	    string, e.g., with strtrans(), may cause a crash. (Tomas Zellerin)
Solution:   Correctly compute the length of the result in transstr().
Files:	    src/charset.c

Patch 6.0.020
Problem:    When obtaining the value of a global variable internally, could
	    get the function-local value instead.  Applies to using <Leader>
	    and <LocalLeader> and resetting highlighting in a function.
Solution:   Prepend "g:" to the variable name. (Aric Blumer)
Files:	    src/syntax.c, src/term.c

Patch 6.0.021
Problem:    The 'cscopepathcomp' option didn't work.
Solution:   Change USE_CSCOPE to FEAT_CSCOPE. (Mark Feng)
Files:	    src/option.c

Patch 6.0.022
Problem:    When using the 'langmap' option, the second character of a command
	    starting with "g" isn't adjusted.
Solution:   Apply 'langmap' to the second character. (Alex Kapranoff)
Files:	    src/normal.c

Patch 6.0.023
Problem:    Loading the lhaskell syntax doesn't work. (Thore B. Karlsen)
Solution:   Use ":runtime" instead of "source" to load haskell.vim.
Files:	    runtime/syntax/lhaskell.vim

Patch 6.0.024
Problem:    Using "CTRL-V u 9900" in Insert mode may cause a crash. (Noah
	    Levitt)
Solution:   Don't insert a NUL byte in the text, use a newline.
Files:	    src/misc1.c

Patch 6.0.025
Problem:    The pattern "\vx(.|$)" doesn't match "x" at the end of a line.
	    (Preben Peppe Guldberg)
Solution:   Always see a "$" as end-of-line after "\v".  Do the same for "^".
Files:	    src/regexp.c

Patch 6.0.026
Problem:    GTK: When using arrow keys to navigate through the menus, the
	    separators are selected.
Solution:   Set the separators "insensitive". (Pavel Kankovsky)
Files:	    src/gui_gtk.c, src/gui_gtk_x11.c

Patch 6.0.027
Problem:    VMS: Printing doesn't work, the file is deleted too quickly.
	    No longer need the VMS specific printing menu.
	    gethostname() is not available with VAXC.
	    The makefile was lacking selection of the tiny-huge feature set.
Solution:   Adjust the 'printexpr' option default.  Fix the other problems and
	    update the documentation.  (Zoltan Arpadffy)
Files:	    runtime/doc/os_vms.txt, runtime/menu.vim, src/INSTALLvms.txt,
	    src/Make_vms.mms, src/option.c, src/os_unix.c, src/os_vms_conf.h

Patch 6.0.028
Problem:    Can't compile without +virtualedit and with +visualextra. (Geza
	    Lakner)
Solution:   Add an #ifdef for +virtualedit.
Files:	    src/ops.c

Patch 6.0.029
Problem:    When making a change in line 1, then in line 2 and then deleting
	    line 1, undo info could be wrong.  Only when the changes are undone
	    at once. (Gerhard Hochholzer)
Solution:   When not saving a line for undo because it was already done
	    before, remember for which entry the last line must be computed.
	    Added ue_getbot_entry pointer for this.  When the number of lines
	    changes, adjust the position of newer undo entries.
Files:	    src/structs.h, src/undo.c

Patch 6.0.030
Problem:    Using ":source! file" doesn't work inside a loop or after
	    ":argdo". (Pavol Juhas)
Solution:   Execute the commands in the file right away, do not let the main
	    loop do it.
Files:	    src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c, src/globals.h,
	    src/proto/ex_docmd.pro, src/proto/getchar.pro

Patch 6.0.031
Problem:    Nextstep doesn't have setenv() or putenv().  (John Beppu)
Solution:   Move putenv() from pty.c to misc2.c
Files:	    src/misc2.c, src/pty.c

Patch 6.0.032
Problem:    When changing a setting that affects all folds, they are not
	    displayed immediately.
Solution:   Set the redraw flag in foldUpdateAll().
Files:	    src/fold.c

Patch 6.0.033
Problem:    Using 'wildmenu' on MS-Windows, file names that include a space
	    are only displayed starting with that space. (Xie Yuheng)
Solution:   Don't recognize a backslash before a space as a path separator.
Files:	    src/screen.c

Patch 6.0.034
Problem:    Calling searchpair() with three arguments could result in a crash
	    or strange error message. (Kalle Bjorklid)
Solution:   Don't use the fifth argument when there is no fourth argument.
Files:	    src/eval.c

Patch 6.0.035
Problem:    The menu item Edit/Global_Settings/Toggle_Toolbar doesn't work
	    when 'ignorecase' is set. (Allen Castaban)
Solution:   Always match case when checking if a flag is already present in
	    'guioptions'.
Files:	    runtime/menu.vim

Patch 6.0.036
Problem:    OS/2, MS-DOS and MS-Windows: Using a path that starts with a
	    slash in 'tags' doesn't work as expected. (Mathias Koehrer)
Solution:   Only use the drive, not the whole path to the current directory.
	    Also make it work for "c:dir/file".
Files:	    src/misc2.c

Patch 6.0.037
Problem:    When the user has set "did_install_syntax_menu" to avoid the
	    default Syntax menu it still appears. (Virgilio)
Solution:   Don't add the three default items when "did_install_syntax_menu"
	    is set.
Files:	    runtime/menu.vim

Patch 6.0.038
Problem:    When 'selection' is "exclusive", deleting a block of text at the
	    end of a line can leave the cursor beyond the end of the line.
Solution:   Correct the cursor position.
Files:	    src/ops.c

Patch 6.0.039
Problem:    "gP" leaves the cursor in the wrong position when 'virtualedit' is
	    used.  Using "c" in blockwise Visual mode leaves the cursor in a
	    strange position.
Solution:   For "gP" reset the "coladd" field for the '] mark.  For "c" leave
	    the cursor on the last inserted character.
Files:	    src/ops.c

Patch 6.0.040
Problem:    When 'fileencoding' is invalid and writing fails because of
	    this, the original file is gone. (Eric Carlier)
Solution:   Restore the original file from the backup.
Files:	    src/fileio.c

Patch 6.0.041
Problem:    Using ":language messages en" when LC_MESSAGES is undefined
	    results in setting LC_CTYPE. (Eric Carlier)
Solution:   Set $LC_MESSAGES instead.
Files:	    src/ex_cmds2.c

Patch 6.0.042
Problem:    ":mksession" can't handle file names with a space.
Solution:   Escape special characters in file names with a backslash.
Files:	    src/ex_docmd.c

Patch 6.0.043
Problem:    Patch 6.0.041 was wrong.
Solution:   Use mch_getenv() instead of vim_getenv().
Files:	    src/ex_cmds2.c

Patch 6.0.044
Problem:    Using a "containedin" list for a syntax item doesn't work for an
	    item that doesn't have a "contains" argument.  Also, "containedin"
	    doesn't ignore a transparent item. (Timo Frenay)
Solution:   When there is a "containedin" argument somewhere, always check for
	    contained items.  Don't check for the transparent item but the
	    item it's contained in.
Files:	    src/structs.h, src/syntax.c

Patch 6.0.045
Problem:    After creating a fold with a Visual selection, another window
	    with the same buffer still has inverted text. (Sami Salonen)
Solution:   Redraw the inverted text.
Files:	    src/normal.c

Patch 6.0.046
Problem:    When getrlimit() returns an 8 byte number the check for running
	    out of stack may fail. (Anthony Meijer)
Solution:   Skip the stack check if the limit doesn't fit in a long.
Files:	    src/auto/configure, src/config.h.in, src/configure.in,
	    src/os_unix.c

Patch 6.0.047
Problem:    Using a regexp with "\(\)" inside a "\%[]" item causes a crash.
	    (Samuel Lacas)
Solution:   Don't allow nested atoms inside "\%[]".
Files:	    src/regexp.c

Patch 6.0.048
Problem:    Win32: In the console the mouse doesn't always work correctly.
	    Sometimes after getting focus a mouse movement is interpreted like
	    a button click.
Solution:   Use a different function to obtain the number of mouse buttons.
	    Avoid recognizing a button press from undefined bits. (Vince Negri)
Files:	    src/os_win32.c

Patch 6.0.049
Problem:    When using evim the intro screen is misleading. (Adrian Nagle)
Solution:   Mention whether 'insertmode' is set and the menus to be used.
Files:	    runtime/menu.vim, src/version.c

Patch 6.0.050
Problem:    UTF-8: "viw" doesn't include non-ASCII characters before the
	    cursor. (Bertilo Wennergren)
Solution:   Use dec_cursor() instead of decrementing the column number.
Files:	    src/search.c

Patch 6.0.051
Problem:    UTF-8: Using CTRL-R on the command line doesn't insert composing
	    characters. (Ron Aaron)
Solution:   Also include the composing characters and fix redrawing them.
Files:	    src/ex_getln.c, src/ops.c

Patch 6.0.052
Problem:    The check for rlim_t in patch 6.0.046 does not work on some
	    systems. (Zdenek Sekera)
Solution:   Also look in sys/resource.h for rlim_t.
Files:	    src/auto/configure, src/configure.in

Patch 6.0.053 (extra)
Problem:    Various problems with QNX.
Solution:   Minor fix for configure.  Switch on terminal clipboard support in
	    main.c.  Fix "pterm" mouse support.  os_qnx.c didn't build without
	    photon. (Julian Kinraid)
Files:	    src/auto/configure, src/configure.in, src/gui_photon.c,
	    src/main.c, src/misc2.c, src/option.h, src/os_qnx.c, src/os_qnx.h,
	    src/syntax.c

Patch 6.0.054
Problem:    When using mswin.vim, CTRL-V pastes a block of text like it is
	    normal text.  Using CTRL-V in blockwise Visual mode leaves "x"
	    characters behind.
Solution:   Make CTRL-V work as it should.  Do the same for the Paste menu
	    entries.
Files:	    runtime/menu.vim, runtime/mswin.vim

Patch 6.0.055
Problem:    GTK: The selection isn't copied the first time.
Solution:   Own the selection at the right moment.
Files:	    src/gui_gtk_x11.c

Patch 6.0.056
Problem:    Using "CTRL-O cw" in Insert mode results in a nested Insert mode.
	    <Esc> doesn't leave Insert mode then.
Solution:   Only use nested Insert mode when 'insertmode' is set or when a
	    mapping is used.
Files:	    src/normal.c

Patch 6.0.057
Problem:    Using ":wincmd g}" in a function doesn't work.  (Gary Holloway)
Solution:   Execute the command directly, instead of putting it in the
	    typeahead buffer.
Files:	    src/normal.c, src/proto/normal.pro, src/window.c

Patch 6.0.058
Problem:    When a Cursorhold autocommand moved the cursor, the ruler wasn't
	    updated. (Bohdan Vlasyuk)
Solution:   Update the ruler after executing the autocommands.
Files:	    src/gui.c

Patch 6.0.059
Problem:    Highlighting for 'hlsearch' isn't visible in lines that are
	    highlighted for diff highlighting.  (Gary Holloway)
Solution:   Let 'hlsearch' highlighting overrule diff highlighting.
Files:	    src/screen.c

Patch 6.0.060
Problem:    Motif: When the tooltip is to be popped up, Vim crashes.
	    (Gary Holloway)
Solution:   Check for a NULL return value from gui_motif_fontset2fontlist().
Files:	    src/gui_beval.c

Patch 6.0.061
Problem:    The toolbar buttons to load and save a session do not correctly
	    use v:this_session.
Solution:   Check for v:this_session to be empty instead of existing.
Files:	    runtime/menu.vim

Patch 6.0.062
Problem:    Crash when 'verbose' is > 3 and using ":shell". (Yegappan
	    Lakshmanan)
Solution:   Avoid giving a NULL pointer to printf().  Also output a newline
	    and switch the cursor on.
Files:	    src/misc2.c

Patch 6.0.063
Problem:    When 'cpoptions' includes "$", using "cw" to type a ')' on top of
	    the "$" doesn't update syntax highlighting after it.
Solution:   Stop displaying the "$" when typing a ')' in its position.
Files:	    src/search.c

Patch 6.0.064 (extra)
Problem:    The NSIS install script doesn't work with newer versions of NSIS.
	    The diff feature doesn't work when there isn't a good diff.exe on
	    the system.
Solution:   Replace the GetParentDir instruction by a user function.
	    Fix a few cosmetic problems.  Use defined constants for the
	    version number, so that it's defined in one place only.
	    Only accept the install directory when it ends in "vim".
	    (Eduardo Fernandez)
	    Add a diff.exe and use it from the default _vimrc.
Files:	    nsis/gvim.nsi, nsis/README.txt, src/dosinst.c

Patch 6.0.065
Problem:    When using ":normal" in 'indentexpr' it may use redo characters
	    before its argument.  (Neil Bird)
Solution:   Save and restore the stuff buffer in ex_normal().
Files:	    src/ex_docmd.c, src/getchar.c, src/globals.h, src/structs.h

Patch 6.0.066
Problem:    Sometimes undo for one command is split into two undo actions.
	    (Halim Salman)
Solution:   Don't set the undo-synced flag when reusing a line that was
	    already saved for undo.
Files:	    src/undo.c

Patch 6.0.067
Problem:    if_xcmdsrv.c doesn't compile on systems where fd_set isn't defined
	    in the usual header file (e.g., AIX). (Mark Waggoner)
Solution:   Include sys/select.h in if_xcmdsrv.c for systems that have it.
Files:	    src/if_xcmdsrv.c

Patch 6.0.068
Problem:    When formatting a Visually selected area with "gq" and the number
	    of lines increases the last line may not be redrawn correctly.
	    (Yegappan Lakshmanan)
Solution:   Correct the area to be redrawn for inserted/deleted lines.
Files:	    src/ops.c

Patch 6.0.069
Problem:    Using "K" on a word that includes a "!" causes a "No previous
	    command" error, because the "!" is expanded. (Craig Jeffries)
Solution:   Put a backslash before the "!".
Files:	    src/normal.c

Patch 6.0.070
Problem:    Win32: The error message for a failed dynamic linking of a Perl,
	    Ruby, Tcl and Python library is unclear about what went wrong.
Solution:   Give the name of the library or function that could not be loaded.
	    Also for the iconv and gettext libraries when 'verbose' is set.
Files:	    src/eval.c, src/if_perl.xs, src/if_python.c, src/if_ruby.c,
	    src/if_tcl.c, src/mbyte.c, src/os_win32.c, src/proto/if_perl.pro,
	    src/proto/if_python.pro, src/proto/if_ruby.pro,
	    src/proto/if_tcl.pro, src/proto/mbyte.pro

Patch 6.0.071
Problem:    The "iris-ansi" builtin termcap isn't very good.
Solution:   Fix the wrong entries. (David Harrison)
Files:	    src/term.c

Patch 6.0.072
Problem:    When 'lazyredraw' is set, a mapping that stops Visual mode, moves
	    the cursor and starts Visual mode again causes a redraw problem.
	    (Brian Silverman)
Solution:   Redraw both the old and the new Visual area when necessary.
Files:	    src/normal.c, src/screen.c

Patch 6.0.073 (extra)
Problem:    DJGPP: When using CTRL-Z to start a shell, the prompt is halfway
	    the text. (Volker Kiefel)
Solution:   Position the system cursor before starting the shell.
Files:	    src/os_msdos.c

Patch 6.0.074
Problem:    When using "&" in a substitute string a multi-byte character with
	    a trailbyte 0x5c is not handled correctly.
Solution:   Recognize multi-byte characters inside the "&" part. (Muraoka Taro)
Files:	    src/regexp.c

Patch 6.0.075
Problem:    When closing a horizontally split window while 'eadirection' is
	    "hor" another horizontally split window is still resized. (Aron
	    Griffis)
Solution:   Only resize windows in the same top frame as the window that is
	    split or closed.
Files:	    src/main.c, src/proto/window.pro, src/window.c

Patch 6.0.076
Problem:    Warning for wrong pointer type when compiling.
Solution:   Use char instead of char_u pointer.
Files:	    src/version.c

Patch 6.0.077
Problem:    Patch 6.0.075 was incomplete.
Solution:   Fix another call to win_equal().
Files:	    src/option.c

Patch 6.0.078
Problem:    Using "daw" at the end of a line on a single-character word didn't
	    include the white space before it.  At the end of the file it
	    didn't work at all.  (Gavin Sinclair)
Solution:   Include the white space before the word.
Files:	    src/search.c

Patch 6.0.079
Problem:    When "W" is in 'cpoptions' and 'backupcopy' is "no" or "auto", can
	    still overwrite a read-only file, because it's renamed. (Gary
	    Holloway)
Solution:   Add a check for a read-only file before renaming the file to
	    become the backup.
Files:	    src/fileio.c

Patch 6.0.080
Problem:    When using a session file that has the same file in two windows,
	    the fileinfo() call in do_ecmd() causes a scroll and a hit-enter
	    prompt. (Robert Webb)
Solution:   Don't scroll this message when 'shortmess' contains 'O'.
Files:	    src/ex_cmds.c

Patch 6.0.081
Problem:    After using ":saveas" the new buffer name is added to the Buffers
	    menu with a wrong number. (Chauk-Mean Proum)
Solution:   Trigger BufFilePre and BufFilePost events for the renamed buffer
	    and BufAdd for the old name (which is with a new buffer).
Files:	    src/ex_cmds.c

Patch 6.0.082
Problem:    When swapping screens in an xterm and there is an (error) message
	    from the vimrc script, the shell prompt is after the message.
Solution:   Output a newline when there was output on the alternate screen.
	    Also when starting the GUI.
Files:	    src/main.c

Patch 6.0.083
Problem:    GTK: When compiled without menu support the buttons in a dialog
	    don't have any text. (Erik Edelmann)
Solution:   Add the text also when GTK_USE_ACCEL isn't defined.  And define
	    GTK_USE_ACCEL also when not using menus.
Files:	    src/gui_gtk.c

Patch 6.0.084
Problem:    UTF-8: a "r" command with an argument that is a keymap for a
	    character with a composing character can't be repeated with ".".
	    (Raphael Finkel)
Solution:   Add the composing characters to the redo buffer.
Files:	    src/normal.c

Patch 6.0.085
Problem:    When 'mousefocus' is set, using "s" to go to Insert mode and then
	    moving the mouse pointer to another window stops Insert mode,
	    while this doesn't happen with "a" or "i". (Robert Webb)
Solution:   Reset finish_op before calling edit().
Files:	    src/normal.c

Patch 6.0.086
Problem:    When using "gu" the message says "~ed".
Solution:   Make the message say "changed".
Files:	    src/ops.c

Patch 6.0.087 (lang)
Problem:    Message translations are incorrect, which may cause a crash.
	    (Peter Figura)
	    The Turkish translations needed more work and the maintainer
	    didn't have time.
Solution:   Fix order of printf arguments.  Remove %2$d constructs.
	    Add "-v" to msgfmt to get a warning for wrong translations.
	    Don't install the Turkish translations for now.
	    Update a few more translations.
Files:	    src/po/Makefile, src/po/af.po, src/po/cs.po, src/po/cs.cp1250.po,
	    src/po/de.po, src/po/es.po, src/po/fr.po, src/po/it.po,
	    src/po/ja.po, src/po/ja.sjis.po, src/po/ko.po, src/po/pl.po,
	    src/po/sk.po, src/po/uk.po, src/po/zh_CN.UTF-8.po,
	    src/po/zh_CN.cp936.po, src/po/zh_CN.po, src/po/zh_TW.po

Patch 6.0.088
Problem:    "." doesn't work after using "rx" in Visual mode.  (Charles
	    Campbell)
Solution:   Also store the replacement character in the redo buffer.
Files:	    src/normal.c

Patch 6.0.089
Problem:    In a C file, using "==" to align a line starting with "*  " after
	    a line with "* -" indents one space too few.  (Piet Delport)
Solution:   Align with the previous line if the comment-start-string matches
	    there.
Files:	    src/misc1.c

Patch 6.0.090
Problem:    When a wrapping line does not fit in a window and 'scrolloff' is
	    bigger than half the window height, moving the cursor left or
	    right causes the screen to flash badly. (Lubomir Host)
Solution:   When there is not enough room to show 'scrolloff' screen lines and
	    near the end of the line, show the end of the line.
Files:	    src/move.c

Patch 6.0.091
Problem:    Using CTRL-O in Insert mode, while 'virtualedit' is "all" and the
	    cursor is after the end-of-line, moves the cursor left. (Yegappan
	    Lakshmanan)
Solution:   Keep the cursor in the same position.
Files:	    src/edit.c

Patch 6.0.092
Problem:    The explorer plugin doesn't ignore case of 'suffixes' on
	    MS-Windows. (Mike Williams)
Solution:   Match or ignore case as appropriate for the OS.
Files:	    runtime/plugin/explorer.vim

Patch 6.0.093
Problem:    When the Tcl library couldn't be loaded dynamically, get an error
	    message when closing a buffer or window. (Muraoka Taro)
Solution:   Only free structures if already using the Tcl interpreter.
Files:	    src/if_tcl.c

Patch 6.0.094
Problem:    Athena: When clicking in the horizontal scrollbar Vim crashes.
	    (Paul Ackersviller)
Solution:   Use the thumb size instead of the window pointer of the scrollbar
	    (which is NULL). (David Harrison)
	    Also avoid that scrolling goes the wrong way in a narrow window.
Files:	    src/gui_athena.c

Patch 6.0.095
Problem:    Perl: Deleting lines may leave the cursor beyond the end of the
	    file.
Solution:   Check the cursor position after deleting a line. (Serguei)
Files:	    src/if_perl.xs

Patch 6.0.096
Problem:    When ":saveas fname" fails because the file already exists, the
	    file name is changed anyway and a following ":w" will overwrite
	    the file. (Eric Carlier)
Solution:   Don't change the file name if the file already exists.
Files:	    src/ex_cmds.c

Patch 6.0.097
Problem:    Re-indenting in Insert mode with CTRL-F may cause a crash with a
	    multi-byte encoding.
Solution:   Avoid using a character before the start of a line. (Sergey
	    Vlasov)
Files:	    src/edit.c

Patch 6.0.098
Problem:    GTK: When using Gnome the "Search" and "Search and Replace" dialog
	    boxes are not translated.
Solution:   Define ENABLE_NLS before including gnome.h. (Eduardo Fernandez)
Files:	    src/gui_gtk.c, src/gui_gtk_x11.c

Patch 6.0.099
Problem:    Cygwin: When running Vi compatible MS-DOS line endings cause
	    trouble.
Solution:   Make the default for 'fileformats' "unix,dos" in Vi compatible
	    mode.  (Michael Schaap)
Files:	    src/option.h

Patch 6.0.100
Problem:    ":badd +0 test%file" causes a crash.
Solution:   Take into account that the "+0" is NUL terminated when allocating
	    room for replacing the "%".
Files:	    src/ex_docmd.c

Patch 6.0.101
Problem:    ":mksession" doesn't restore editing a file that has a '#' or '%'
	    in its name.  (Wolfgang Blankenburg)
Solution:   Put a backslash before the '#' and '%'.
Files:	    src/ex_docmd.c

Patch 6.0.102
Problem:    When changing folds the cursor may appear halfway a closed fold.
	    (Nam SungHyun)
Solution:   Set w_cline_folded correctly. (Yasuhiro Matsumoto)
Files:	    src/move.c

Patch 6.0.103
Problem:    When using 'scrollbind' a large value of 'scrolloff' will make the
	    scroll binding stop near the end of the file. (Coen Engelbarts)
Solution:   Don't use 'scrolloff' when limiting the topline for scroll
	    binding. (Dany StAmant)
Files:	    src/normal.c

Patch 6.0.104
Problem:    Multi-byte: When '$' is in 'cpoptions', typing a double-wide
	    character that overwrites the left halve of an old double-wide
	    character causes a redraw problem and the cursor stops blinking.
Solution:   Clear the right half of the old character. (Yasuhiro Matsumoto)
Files:	    src/edit.c, src/screen.c

Patch 6.0.105
Problem:    Multi-byte: In a window of one column wide, with syntax
	    highlighting enabled a crash might happen.
Solution:   Skip getting the syntax attribute when the character doesn't fit
	    anyway.  (Yasuhiro Matsumoto)
Files:	    src/screen.c

Patch 6.0.106 (extra)
Problem:    Win32: When the printer font is wrong, there is no error message.
Solution:   Give an appropriate error message. (Yasuhiro Matsumoto)
Files:	    src/os_mswin.c

Patch 6.0.107 (extra)
Problem:    VisVim: When editing another file, a modified file may be written
	    unexpectedly and without warning.
Solution:   Split the window if a file was modified.
Files:	    VisVim/Commands.cpp

Patch 6.0.108
Problem:    When using folding could try displaying line zero, resulting in an
	    error for a NULL pointer.
Solution:   Stop decrementing w_topline when the first line of a window is in
	    a closed fold.
Files:	    src/window.c

Patch 6.0.109
Problem:    XIM: When the input method is enabled, repeating an insertion with
	    "." disables it. (Marcel Svitalsky)
Solution:   Don't store the input method status when a command comes from the
	    stuff buffer.
Files:	    src/ui.c

Patch 6.0.110
Problem:    Using undo after executing "OxjAxkdd" from a register in
	    an empty buffer gives an error message.  (Gerhard Hochholzer)
Solution:   Don't adjust the bottom line number of an undo block when it's
	    zero.  Add a test for this problem.
Files:	    src/undo.c, src/testdir/test20.in, src/testdir/test20.ok

Patch 6.0.111
Problem:    The virtcol() function doesn't take care of 'virtualedit'.
Solution:   Add the column offset when needed. (Yegappan Lakshmanan)
Files:	    src/eval.c

Patch 6.0.112
Problem:    The explorer plugin doesn't sort directories with a space or
	    special character after a directory with a shorter name.
Solution:   Ignore the trailing slash when comparing directory names.  (Mike
	    Williams)
Files:	    runtime/plugin/explorer.vim

Patch 6.0.113
Problem:    ":edit ~/fname" doesn't work if $HOME includes a space.  Also,
	    expanding wildcards with the shell may fail. (John Daniel)
Solution:   Escape spaces with a backslash when needed.
Files:	    src/ex_docmd.c, src/misc1.c, src/proto/misc1.pro, src/os_unix.c

Patch 6.0.114
Problem:    Using ":p" with fnamemodify() didn't expand "~/" or "~user/" to a
	    full path.  For Win32 the current directory was prepended.
	    (Michael Geddes)
Solution:   Expand the home directory.
Files:	    src/eval.c

Patch 6.0.115 (extra)
Problem:    Win32: When using a dialog with a textfield it cannot scroll the
	    text.
Solution:   Add ES_AUTOHSCROLL to the textfield style. (Pedro Gomes)
Files:	    src/gui_w32.c

Patch 6.0.116 (extra)
Problem:    MS-Windows NT/2000/XP: filewritable() doesn't work correctly for
	    filesystems that use ACLs.
Solution:   Use ACL functions to check if a file is writable. (Mike Williams)
Files:	    src/eval.c, src/macros.h, src/os_win32.c, src/proto/os_win32.pro

Patch 6.0.117 (extra)
Problem:    Win32: when disabling the menu, "set lines=999" doesn't use all
	    the available screen space.
Solution:   Don't subtract the fixed caption height but the real menu height
	    from the available screen space.  Also: Avoid recursion in
	    gui_mswin_get_menu_height().
Files:	    src/gui_w32.c, src/gui_w48.c

Patch 6.0.118
Problem:    When $TMPDIR is a relative path, the temp directory is missing a
	    trailing slash and isn't deleted when Vim exits. (Peter Holm)
Solution:   Add the slash after expanding the directory to an absolute path.
Files:	    src/fileio.c

Patch 6.0.119 (depends on patch 6.0.116)
Problem:    VMS: filewritable() doesn't work properly.
Solution:   Use the same method as for Unix. (Zoltan Arpadffy)
Files:	    src/eval.c

Patch 6.0.120
Problem:    The conversion to html isn't compatible with XHTML.
Solution:   Quote the values. (Jess Thrysoee)
Files:	    runtime/syntax/2html.vim

Patch 6.0.121 (extra) (depends on patch 6.0.116)
Problem:    Win32: After patch 6.0.116 Vim doesn't compile with mingw32.
Solution:   Add an #ifdef HAVE_ACL.
Files:	    src/os_win32.c

Patch 6.0.122 (extra)
Problem:    Win16: Same resize problems as patch 6.0.117 fixed for Win32.  And
	    dialog textfield problem from patch 6.0.115.
Solution:   Set old_menu_height only when used.  Add ES_AUTOHSCROLL flag.
	    (Vince Negri)
Files:	    src/gui_w16.c

Patch 6.0.123 (depends on patch 6.0.119)
Problem:    Win16: Compilation problems.
Solution:   Move "&&" to other lines. (Vince Negri)
Files:	    src/eval.c

Patch 6.0.124
Problem:    When using a ":substitute" command that starts with "\="
	    (evaluated as an expression), "~" was still replaced with the
	    previous substitute string.
Solution:   Skip the replacement when the substitute string starts with "\=".
	    Also adjust the documentation about doubling backslashes.
Files:	    src/ex_cmds.c, runtime/doc/change.txt

Patch 6.0.125 (extra)
Problem:    Win32: When using the multi_byte_ime feature pressing the shift
	    key would be handled as if a character was entered, thus mappings
	    with a shifted key didn't work. (Charles Campbell)
Solution:   Ignore pressing the shift, control and alt keys.
Files:	    src/os_win32.c

Patch 6.0.126
Problem:    The python library was always statically linked.
Solution:   Link the python library dynamically. (Matthias Klose)
Files:	    src/auto/configure, src/configure.in

Patch 6.0.127
Problem:    When using a terminal that swaps screens and the Normal background
	    color has a different background, using an external command may
	    cause the color of the wrong screen to be changed. (Mark Waggoner)
Solution:   Don't call screen_stop_highlight() in stoptermcap().
Files:	    src/term.c

Patch 6.0.128
Problem:    When moving a vertically split window to the far left or right,
	    the scrollbars are not adjusted. (Scott E Lee)  When 'mousefocus'
	    is set the mouse pointer wasn't adjusted.
Solution:   Adjust the scrollbars and the mouse pointer.
Files:	    src/window.c

Patch 6.0.129
Problem:    When using a very long file name, ":ls" (repeated a few times)
	    causes a crash.  Test with "vim `perl -e 'print "A"x1000'`".
	    (Tejeda)
Solution:   Terminate a string before getting its length in buflist_list().
Files:	    src/buffer.c

Patch 6.0.130
Problem:    When using ":cprev" while the error window is open, and the new
	    line at the top wraps, the window isn't correctly drawn.
	    (Yegappan Lakshmanan)
Solution:   When redrawing the topline don't scroll twice.
Files:	    src/screen.c

Patch 6.0.131
Problem:    When using bufname() and there are two matches for listed buffers
	    and one match for an unlisted buffer, the unlisted buffer is used.
	    (Aric Blumer)
Solution:   When there is a match with a listed buffer, don't check for
	    unlisted buffers.
Files:	    src/buffer.c

Patch 6.0.132
Problem:    When setting 'iminsert' in the vimrc and using an xterm with two
	    screens the ruler is drawn in the wrong screen. (Igor Goldenberg)
Solution:   Only draw the ruler when using the right screen.
Files:	    src/option.c

Patch 6.0.133
Problem:    When opening another buffer while 'keymap' is set and 'iminsert'
	    is zero, 'iminsert' is set to one unexpectedly. (Igor Goldenberg)
Solution:   Don't set 'iminsert' as a side effect of defining a ":lmap"
	    mapping.  Only do that when 'keymap' is set.
Files:	    src/getchar.c, src/option.c

Patch 6.0.134
Problem:    When completing ":set tags=" a path with an embedded space causes
	    the completion to stop. (Sektor van Skijlen)
Solution:   Escape spaces with backslashes, like for ":set path=".  Also take
	    backslashes into account when searching for the start of the path
	    to complete (e.g., for 'backupdir' and 'cscopeprg').
Files:	    src/ex_docmd.c, src/ex_getln.c, src/option.c, src/structs.h

Patch 6.0.135
Problem:    Menus that are not supposed to do anything used "<Nul>", which
	    still produced an error beep.
	    When CTRL-O is mapped for Insert mode, ":amenu" commands didn't
	    work in Insert mode.
	    Menu language falls back to English when $LANG ends in "@euro".
Solution:   Use "<Nop>" for a menu item that doesn't do anything, just like
	    mappings.
	    Use ":anoremenu" instead of ":amenu".
	    Ignore "@euro" in the locale name.
Files:	    runtime/makemenu.vim, runtime/menu.vim, src/menu.c

Patch 6.0.136
Problem:    When completing in Insert mode, a mapping could be unexpectedly
	    applied.
Solution:   Don't use mappings when checking for a typed character.
Files:	    src/edit.c

Patch 6.0.137
Problem:    GUI: When using the find or find/replace dialog from Insert mode,
	    the input mode is stopped.
Solution:   Don't use the input method status when the main window doesn't
	    have focus.
Files:	    src/ui.c

Patch 6.0.138
Problem:    GUI: When using the find or find/replace dialog from Insert mode,
	    the text is inserted when CTRL-O is mapped. (Andre Pang)
	    When opening the dialog again, a whole word search isn't
	    recognized.
	    When doing "replace all" a whole word search was never done.
Solution:   Don't put a search or replace command in the input buffer,
	    execute it directly.
	    Recognize "\<" and "\>" after removing "\V".
	    Add "\<" and "\>" also for "replace all".
Files:	    src/gui.c

Patch 6.0.139
Problem:    When stopping 'wildmenu' completion, the statusline of the
	    bottom-left vertically split window isn't redrawn. (Yegappan
	    Lakshmanan)
Solution:   Redraw all the bottom statuslines.
Files:	    src/ex_getln.c, src/proto/screen.pro, src/screen.c

Patch 6.0.140
Problem:    Memory allocated for local mappings and abbreviations is leaked
	    when the buffer is wiped out.
Solution:   Clear the local mappings when deleting a buffer.
Files:	    src/buffer.c, src/getchar.c, src/proto/getchar.pro, src/vim.h

Patch 6.0.141
Problem:    When using ":enew" in an empty buffer, some buffer-local things
	    are not cleared.  b:keymap_name is not set.
Solution:   Clear user commands and mappings local to the buffer when re-using
	    the current buffer.  Reload the keymap.
Files:	    src/buffer.c

Patch 6.0.142
Problem:    When Python is linked statically, loading dynamic extensions might
	    fail.
Solution:   Add an extra linking flag when needed. (Andrew Rodionoff)
Files:	    src/configure.in, src/auto/configure

Patch 6.0.143
Problem:    When a syntax item includes a line break in a pattern, the syntax
	    may not be updated properly when making a change.
Solution:   Add the "linebreaks" argument to ":syn sync".
Files:	    runtime/doc/syntax.txt, src/screen.c, src/structs.h, src/syntax.c

Patch 6.0.144
Problem:    After patch 6.0.088 redoing "veU" doesn't work.
Solution:   Don't add the "U" to the redo buffer, it will be used as an undo
	    command.
Files:	    src/normal.c

Patch 6.0.145
Problem:    When Vim can't read any input it might get stuck.  When
	    redirecting stdin and stderr Vim would not read commands from a
	    file.  (Servatius Brandt)
Solution:   When repeatedly trying to read a character when it's not possible,
	    exit Vim.  When stdin and stderr are not a tty, still try reading
	    from them, but don't do a blocking wait.
Files:	    src/ui.c

Patch 6.0.146
Problem:    When 'statusline' contains "%{'-'}" this results in a zero.
	    (Milan Vancura)
Solution:   Don't handle numbers with a minus as a number, they were not
	    displayed anyway.
Files:	    src/buffer.c

Patch 6.0.147
Problem:    It's not easy to mark a Vim version as being modified.  The new
	    license requires this.
Solution:   Add the --modified-by argument to configure and the MODIFIED_BY
	    define.  It's used in the intro screen and the ":version" output.
Files:	    src/auto/configure, src/configure.in, src/config.h.in,
	    src/feature.h, src/version.c

Patch 6.0.148
Problem:    After "p" in an empty line, `[ goes to the second character.
	    (Kontra Gergely)
Solution:   Don't increment the column number in an empty line.
Files:	    src/ops.c

Patch 6.0.149
Problem:    The pattern "\(.\{-}\)*" causes a hang.  When using a search
	    pattern that causes a stack overflow to be detected Vim could
	    still hang.
Solution:   Correctly report "operand could be empty" when using "\{-}".
	    Check for "out_of_stack" inside loops to avoid a hang.
Files:	    src/regexp.c

Patch 6.0.150
Problem:    When using a multi-byte encoding, patch 6.0.148 causes "p" to work
	    like "P". (Sung-Hyun Nam)
Solution:   Compute the byte length of a multi-byte character.
Files:	    src/ops.c

Patch 6.0.151
Problem:    Redrawing the status line and ruler can be wrong when it contains
	    multi-byte characters.
Solution:   Use character width and byte length correctly. (Yasuhiro Matsumoto)
Files:	    src/screen.c

Patch 6.0.152
Problem:    strtrans() could hang on an illegal UTF-8 byte sequence.
Solution:   Skip over illegal bytes. (Yasuhiro Matsumoto)
Files:	    src/charset.c

Patch 6.0.153
Problem:    When using (illegal) double-byte characters and Vim syntax
	    highlighting Vim can crash. (Yasuhiro Matsumoto)
Solution:   Increase a pointer over a character instead of a byte.
Files:	    src/regexp.c

Patch 6.0.154
Problem:    MS-DOS and MS-Windows: The menu entries for xxd don't work when
	    there is no xxd in the path.
	    When converting back from Hex the filetype may remain "xxd" if it
	    is not detected.
Solution:   When xxd is not in the path use the one in the runtime directory,
	    where the install program has put it.
	    Clear the 'filetype' option before detecting the new value.
Files:	    runtime/menu.vim

Patch 6.0.155
Problem:    Mac: compilation problems in ui.c after patch 6.0.145. (Axel
	    Kielhorn)
Solution:   Don't call mch_inchar() when NO_CONSOLE is defined.
Files:	    src/ui.c

Patch 6.0.156
Problem:    Starting Vim with the -b argument and two files, ":next" doesn't
	    set 'binary' in the second file, like Vim 5.7. (Norman Diamond)
Solution:   Set the global value for 'binary'.
Files:	    src/option.c

Patch 6.0.157
Problem:    When defining a user command with "-complete=dir" files will also
	    be expanded.  Also, "-complete=mapping" doesn't appear to work.
	    (Michael Naumann)
Solution:   Use the expansion flags defined with the user command.
	    Handle expanding mappings specifically.
Files:	    src/ex_docmd.c

Patch 6.0.158
Problem:    When getting the warning for a file being changed outside of Vim
	    and reloading the file, the 'readonly' option is reset, even when
	    the permissions didn't change. (Marcel Svitalsky)
Solution:   Keep 'readonly' set when reloading a file and the permissions
	    didn't change.
Files:	    src/fileio.c

Patch 6.0.159
Problem:    Wildcard expansion for ":emenu" also shows separators.
Solution:   Skip menu separators for ":emenu", ":popup" and ":tearoff".
	    Also, don't handle ":tmenu" as if it was ":tearoff".  And leave
	    out the alternatives with "&" included.
Files:	    src/menu.c

Patch 6.0.160
Problem:    When compiling with GCC 3.0.2 and using the "-O2" argument, the
	    optimizer causes a problem that makes Vim crash.
Solution:   Add a configure check to avoid "-O2" for this version of gcc.
Files:	    src/configure.in, src/auto/configure

Patch 6.0.161 (extra)
Problem:    Win32: Bitmaps don't work with signs.
Solution:   Make it possible to use bitmaps with signs. (Muraoka Taro)
Files:	    src/ex_cmds.c, src/feature.h, src/gui_w32.c, src/gui_x11.c,
	    src/proto/gui_w32.pro, src/proto/gui_x11.pro

Patch 6.0.162
Problem:    Client-server: An error message for a wrong expression appears in
	    the server instead of the client.
Solution:   Pass the error message from the server to the client.  Also
	    adjust the example code. (Flemming Madsen)
Files:	    src/globals.h, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
	    src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro,
	    runtime/doc/eval.txt, runtime/tools/xcmdsrv_client.c

Patch 6.0.163
Problem:    When using a GUI dialog, a file name is sometimes used like it was
	    a directory.
Solution:   Separate path and file name properly.
	    For GTK, Motif and Athena concatenate directory and file name for
	    the default selection.
Files:	    src/diff.c, src/ex_cmds.c, src/ex_cmds2.c, src/ex_docmd.c,
	    src/gui_athena.c, src/gui_gtk.c, src/gui_motif.c, src/message.c

Patch 6.0.164
Problem:    After patch 6.0.135 the menu entries for pasting don't work in
	    Insert and Visual mode. (Muraoka Taro)
Solution:   Add <script> to allow script-local mappings.
Files:	    runtime/menu.vim

Patch 6.0.165
Problem:    Using --remote and executing locally gives unavoidable error
	    messages.
Solution:   Add --remote-silent and --remote-wait-silent to silently execute
	    locally.
	    For Win32 there was no error message when a server didn't exist.
Files:	    src/eval.c, src/if_xcmdsrv.c, src/main.c, src/os_mswin.c,
	    src/proto/if_xcmdsrv.pro, src/proto/os_mswin.pro

Patch 6.0.166
Problem:    GUI: There is no way to avoid dialogs to pop up.
Solution:   Add the 'c' flag to 'guioptions': Use console dialogs.  (Yegappan
	    Lakshmanan)
Files:	    runtime/doc/options.txt, src/option.h, src/message.c

Patch 6.0.167
Problem:    When 'fileencodings' is "latin2" some characters in the help files
	    are displayed wrong.
Solution:   Force the 'fileencoding' for the help files to be "latin1".
Files:	    src/fileio.c

Patch 6.0.168
Problem:    ":%s/\n/#/" doesn't replace at an empty line. (Bruce DeVisser)
Solution:   Don't skip matches after joining two lines.
Files:	    src/ex_cmds.c

Patch 6.0.169
Problem:    When run as evim and the GUI can't be started we get stuck in a
	    terminal without menus in Insert mode.
Solution:   Exit when using "evim" and "gvim -y" when the GUI can't be
	    started.
Files:	    src/main.c

Patch 6.0.170
Problem:    When printing double-width characters the size of tabs after them
	    is wrong.  (Muraoka Taro)
Solution:   Correctly compute the column after a double-width character.
Files:	    src/ex_cmds2.c

Patch 6.0.171
Problem:    With 'keymodel' including "startsel", in Insert mode after the end
	    of a line, shift-Left does not move the cursor. (Steve Hall)
Solution:   CTRL-O doesn't move the cursor left, need to do that explicitly.
Files:	    src/edit.c

Patch 6.0.172
Problem:    CTRL-Q doesn't replace CTRL-V after CTRL-X in Insert mode while it
	    does in most other situations.
Solution:   Make CTRL-X CTRL-Q work like CTRL-X CTRL-V in Insert mode.
Files:	    src/edit.c

Patch 6.0.173
Problem:    When using "P" to insert a line break the cursor remains past the
	    end of the line.
Solution:   Check for the cursor being beyond the end of the line.
Files:	    src/ops.c

Patch 6.0.174
Problem:    After using "gd" or "gD" the search direction for "n" may still be
	    backwards. (Servatius Brandt)
Solution:   Reset the search direction to forward.
Files:	    src/normal.c, src/search.c, src/proto/search.pro

Patch 6.0.175
Problem:    ":help /\z(\)" doesn't work. (Thomas Koehler)
Solution:   Double the backslashes.
Files:	    src/ex_cmds.c

Patch 6.0.176
Problem:    When killed by a signal autocommands are still triggered as if
	    nothing happened.
Solution:   Add the v:dying variable to allow autocommands to work differently
	    when a deadly signal has been trapped.
Files:	    src/eval.c, src/os_unix.c, src/vim.h

Patch 6.0.177
Problem:    When 'commentstring' is empty and 'foldmethod' is "marker", "zf"
	    doesn't work. (Thomas S. Urban)
Solution:   Add the marker even when 'commentstring' is empty.
Files:	    src/fold.c, src/normal.c

Patch 6.0.178
Problem:    Uninitialized memory read from xp_backslash field.
Solution:   Initialize xp_backslash field properly.
Files:	    src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/misc1.c, src/tag.c

Patch 6.0.179
Problem:    Win32: When displaying UTF-8 characters may read uninitialized
	    memory.
Solution:   Add utfc_ptr2len_check_len() to avoid reading past the end of a
	    string.
Files:	    src/mbyte.c, src/proto/mbyte.pro, src/gui_w32.c

Patch 6.0.180
Problem:    Expanding environment variables in a string that ends in a
	    backslash could go past the end of the string.
Solution:   Detect the trailing backslash.
Files:	    src/misc1.c

Patch 6.0.181
Problem:    When using ":cd dir" memory was leaked.
Solution:   Free the allocated memory.  Also avoid an uninitialized memory
	    read.
Files:	    src/misc2.c

Patch 6.0.182
Problem:    When using a regexp on multi-byte characters, could try to read a
	    character before the start of the line.
Solution:   Don't decrement a pointer to before the start of the line.
Files:	    src/regexp.c

Patch 6.0.183
Problem:    Leaking memory when ":func!" redefines a function.
Solution:   Free the function name when it's not used.
Files:	    src/eval.c

Patch 6.0.184
Problem:    Leaking memory when expanding option values.
Solution:   Don't always copy the expanded option into allocated memory.
Files:	    src/option.c

Patch 6.0.185
Problem:    Crash in Vim when pasting a selection in another application, on a
	    64 bit machine.
Solution:   Fix the format for an Atom to 32 bits. (Peter Derr)
Files:	    src/ui.c

Patch 6.0.186
Problem:    X11: Three warnings when compiling the client-server code.
Solution:   Add a typecast to unsigned char.
Files:	    src/if_xcmdsrv.c

Patch 6.0.187
Problem:    "I" in Visual mode and then "u" reports too many changes. (Andrew
	    Stryker)
	    "I" in Visual linewise mode adjusts the indent for no apparent
	    reason.
Solution:   Only save those lines for undo that are changed.
	    Don't change the indent after inserting in Visual linewise mode.
Files:	    src/ops.c

Patch 6.0.188
Problem:    Win32: After patch 6.0.161 signs defined in the vimrc file don't
	    work.
Solution:   Initialize the sign icons after initializing the GUI. (Vince
	    Negri)
Files:	    src/gui.c, src/gui_x11.c

Patch 6.0.189
Problem:    The size of the Visual area isn't always displayed when scrolling
	    ('ruler' off, 'showcmd' on).  Also not when using a search
	    command. (Sylvain Hitier)
Solution:   Redisplay the size of the selection after showing the mode.
Files:	    src/screen.c

Patch 6.0.190
Problem:    GUI: when 'mouse' is empty a click with the middle button still
	    moves the cursor.
Solution:   Paste at the cursor position instead of the mouse position.
Files:	    src/normal.c

Patch 6.0.191
Problem:    When no servers are available serverlist() gives an error instead
	    of returning an empty string. (Hari Krishna)
Solution:   Don't give an error message.
Files:	    src/eval.c

Patch 6.0.192
Problem:    When 'virtualedit' is set, "ylj" goes to the wrong column. (Andrew
	    Nikitin)
Solution:   Reset the flag that w_virtcol is valid when moving the cursor back
	    to the start of the operated area.
Files:	    src/normal.c

Patch 6.0.193
Problem:    When 'virtualedit' is set, col(".") after the end of the line
	    should return one extra.
Solution:   Add one to the column.
Files:	    src/eval.c

Patch 6.0.194
Problem:    "--remote-silent" tries to send a reply to the client, like it was
	    "--remote-wait".
Solution:   Properly check for the argument.
Files:	    src/main.c

Patch 6.0.195
Problem:    When 'virtualedit' is set and a search starts in virtual space
	    ":call search('x')" goes to the wrong position. (Eric Long)
Solution:   Reset coladd when finding a match.
Files:	    src/search.c

Patch 6.0.196
Problem:    When 'virtualedit' is set, 'selection' is "exclusive" and visually
	    selecting part of a tab at the start of a line, "x" joins it with
	    the previous line.  Also, when the selection spans more than one
	    line the whole tab is deleted.
Solution:   Take coladd into account when adjusting for 'selection' being
	    "exclusive".  Also expand a tab into spaces when deleting more
	    than one line.
Files:	    src/normal.c, src/ops.c

Patch 6.0.197
Problem:    When 'virtualedit' is set and 'selection' is "exclusive", "v$x"
	    doesn't delete the last character in the line. (Eric Long)
Solution:   Don't reset the inclusive flag. (Helmut Stiegler)
Files:	    src/normal.c

Patch 6.0.198
Problem:    When 'virtualedit' is set and 'showbreak' is not empty, moving the
	    cursor over the line break doesn't work properly. (Eric Long)
Solution:   Make getviscol() and getviscol2() use getvvcol() to obtain the
	    virtual cursor position.  Adjust coladvance() and oneleft() to
	    skip over the 'showbreak' characters.
Files:	    src/edit.c, src/misc2.c

Patch 6.0.199
Problem:    Multi-byte: could use iconv() after calling iconv_end().
	    (Yasuhiro Matsumoto)
Solution:   Stop converting input and output stream after calling iconv_end().
Files:	    src/mbyte.c

Patch 6.0.200
Problem:    A script that starts with "#!perl" isn't recognized as a Perl
	    filetype.
Solution:   Ignore a missing path in a script header.  Also, speed up
	    recognizing scripts by simplifying the patterns used.
Files:	    runtime/scripts.vim

Patch 6.0.201
Problem:    When scrollbinding and doing a long jump, switching windows jumps
	    to another position in the file.  Scrolling a few lines at a time
	    is OK. (Johannes Zellner)
Solution:   When setting w_topline reset the flag that indicates w_botline is
	    valid.
Files:	    src/diff.c

Patch 6.0.202
Problem:    The "icon=" argument for the menu command to define a toolbar icon
	    with a file didn't work for GTK. (Christian J. Robinson)
	    For Motif and Athena a full path was required.
Solution:   Search the icon file using the specified path.  Expand environment
	    variables in the file name.
Files:	    src/gui_gtk.c, src/gui_x11.c

Patch 6.0.203
Problem:    Can change 'fileformat' even though 'modifiable' is off.
	    (Servatius Brandt)
Solution:   Correct check for kind of set command.
Files:	    src/option.c

Patch 6.0.204
Problem:    ":unlet" doesn't work for variables with curly braces. (Thomas
	    Scott Urban)
Solution:   Handle variable names with curly braces properly. (Vince Negri)
Files:	    src/eval.c

Patch 6.0.205 (extra)
Problem:    "gvim -f" still forks when using the batch script to start Vim.
Solution:   Add an argument to "start" to use a foreground session (Michael
	    Geddes)
Files:	    src/dosinst.c

Patch 6.0.206
Problem:    Unix: if expanding a wildcard in a file name results in a
	    wildcard character and there are more parts in the path with a
	    wildcard, it is expanded again.
	    Windows: ":edit \[abc]" could never edit the file "[abc]".
Solution:   Don't expand wildcards in already expanded parts.
	    Don't remove backslashes used to escape the special meaning of a
	    wildcard; can edit "[abc]" if '[' is removed from 'isfname'.
Files:	    src/misc1.c, src/os_unix.c

Patch 6.0.207 (extra)
Problem:    Win32: The shortcuts and start menu entries let Vim startup in the
	    desktop directory, which is not very useful.
Solution:   Let shortcuts start Vim in $HOME or $HOMEDIR$HOMEPATH.
Files:	    src/dosinst.c

Patch 6.0.208
Problem:    GUI: When using a keymap and the cursor is not blinking, CTRL-^ in
	    Insert mode doesn't directly change the cursor color.  (Alex
	    Solow)
Solution:   Force a redraw of the cursor after CTRL-^.
Files:	    src/edit.c

Patch 6.0.209
Problem:    GUI GTK: After selecting a 'guifont' with the font dialog there
	    are redraw problems for multi-byte characters.
Solution:   Separate the font dialog from setting the new font name to avoid
	    that "*" is used to find wide and bold fonts.
	    When redrawing extra characters for the bold trick, take care of
	    UTF-8 characters.
Files:	    src/gui.c, src/gui_gtk_x11.c, src/option.c, src/proto/gui.pro,
	    src/proto/gui_gtk_x11.pro

Patch 6.0.210
Problem:    After patch 6.0.167 it's no longer possible to edit a help file in
	    another encoding than latin1.
Solution:   Let the "++enc=" argument overrule the encoding.
Files:	    src/fileio.c

Patch 6.0.211
Problem:    When reading a file fails, the buffer is empty, but it might still
	    be possible to write it with ":w" later.  The original file is
	    lost then. (Steve Amerige)
Solution:   Set the 'readonly' option for the buffer.
Files:	    src/fileio.c

Patch 6.0.212
Problem:    GUI GTK: confirm("foo", "") causes a crash.
Solution:   Don't make a non-existing button the default.  Add a default "OK"
	    button if none is specified.
Files:	    src/eval.c, src/gui_gtk.c

Patch 6.0.213
Problem:    When a file name contains unprintable characters, CTRL-G and other
	    commands don't work well.
Solution:   Turn unprintable into printable characters. (Yasuhiro Matsumoto)
Files:	    src/buffer.c, src/charset.c

Patch 6.0.214
Problem:    When there is a buffer without a name, empty entries appear in the
	    jumplist saved in the viminfo file.
Solution:   Don't write jumplist entries without a file name.
Files:	    src/mark.c

Patch 6.0.215
Problem:    After using "/" from Visual mode the Paste menu and Toolbar
	    entries don't work.  Pasting with the middle mouse doesn't work
	    and modeless selection doesn't work.
Solution:   Use the command line mode menus and use the mouse like in the
	    command line.
Files:	    src/gui.c, src/menu.c, src/ui.c

Patch 6.0.216
Problem:    After reloading a file, displayed in another window than the
	    current one, which was changed outside of Vim the part of the file
	    around the cursor set by autocommands may be displayed, but
	    jumping back to the original cursor position when entering the
	    window again.
Solution:   Restore the topline of the window.
Files:	    src/fileio.c

Patch 6.0.217
Problem:    When getting help from a help file that was used before, an empty
	    unlisted buffer remains in the buffer list. (Eric Long)
Solution:   Wipe out the buffer used to do the tag jump from.
Files:	    src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro

Patch 6.0.218
Problem:    With explorer plugin: "vim -o filename dirname" doesn't load the
	    explorer window until entering the window.
Solution:   Call s:EditDir() for each window after starting up.
Files:	    runtime/plugin/explorer.vim

Patch 6.0.219
Problem:    ":setlocal" and ":setglobal", without arguments, display terminal
	    options. (Zdenek Sekera)
Solution:   Skip terminal options for these two commands.
Files:	    src/option.c

Patch 6.0.220
Problem:    After patch 6.0.218 get a beep on startup. (Muraoka Taro)
Solution:   Don't try going to another window when there isn't one.
Files:	    runtime/plugin/explorer.vim

Patch 6.0.221
Problem:    When using ":bdel" and all other buffers are unloaded the lowest
	    numbered buffer is jumped to instead of the most recent one. (Dave
	    Cecil)
Solution:   Prefer an unloaded buffer from the jumplist.
Files:	    src/buffer.c

Patch 6.0.222
Problem:    When 'virtualedit' is set and using autoindent, pressing Esc after
	    starting a new line leaves behind part of the autoindent. (Helmut
	    Stiegler)
Solution:   After deleting the last char in the line adjust the cursor
	    position in del_bytes().
Files:	    src/misc1.c, src/ops.c

Patch 6.0.223
Problem:    When splitting a window that contains the explorer, hitting CR on
	    a file name gives error messages.
Solution:   Set the window variables after splitting the window.
Files:	    runtime/plugin/explorer.vim

Patch 6.0.224
Problem:    When 'sidescroll' and 'sidescrolloff' are set in a narrow window
	    the text may jump left-right and the cursor is displayed in the
	    wrong position. (Aric Blumer)
Solution:   When there is not enough room, compute the left column for the
	    window to put the cursor in the middle.
Files:	    src/move.c

Patch 6.0.225
Problem:    In Visual mode "gk" gets stuck in a closed fold. (Srinath
	    Avadhanula)
Solution:   Behave differently in a closed fold.
Files:	    src/normal.c

Patch 6.0.226
Problem:    When doing ":recover file" get the ATTENTION prompt.
	    After recovering the same file five times get a read error or a
	    crash.  (Alex Davis)
Solution:   Set the recoverymode flag before setting the file name.
	    Correct the amount of used memory for the size of block zero.
Files:	    src/ex_docmd.c

Patch 6.0.227 (extra)
Problem:    The RISC OS port has several problems.
Solution:   Update the makefile and fix some of the problems. (Andy Wingate)
Files:	    src/Make_ro.mak, src/os_riscos.c, src/os_riscos.h,
	    src/proto/os_riscos.pro, src/search.c

Patch 6.0.228
Problem:    After putting text in Visual mode the '] mark is not at the end of
	    the put text.
	    Undo doesn't work properly when putting a word into a Visual
	    selection that spans more than one line.
Solution:   Correct the '] mark for the deleting the Visually selected text.
	    #ifdef code that depends on FEAT_VISUAL properly.
	    Also fix that "d" crossing line boundary puts '[ just before
	    deleted text.
	    Fix undo by saving all deleted lines at once.
Files:	    src/ex_docmd.c, src/globals.h, src/normal.c, src/ops.c,
	    src/structs.h, src/vim.h

Patch 6.0.229
Problem:    Multi-byte: With 'm' in 'formatoptions', formatting doesn't break
	    at a multi-byte char followed by an ASCII char, and the other way
	    around. (Muraoka Taro)
	    When joining lines a space is inserted between multi-byte
	    characters, which is not always wanted.
Solution:   Check for multi-byte character before and after the breakpoint.
	    Don't insert a space before or after a multi-byte character when
	    joining lines and the 'M' flag is in 'formatoptions'.  Don't
	    insert a space between multi-byte characters when the 'B' flag is
	    in 'formatoptions'.
Files:	    src/edit.c, src/ops.c, src/option.h

Patch 6.0.230
Problem:    The ":" used as a motion after an operator is exclusive, but
	    sometimes it should be inclusive.
Solution:   Make the "v" in between an operator and motion toggle
	    inclusive/exclusive. (Servatius Brandt)
Files:	    runtime/doc/motion.txt, src/normal.c

Patch 6.0.231
Problem:    "gd" and "gD" don't work when the variable matches in a comment
	    just above the match to be found. (Servatius Brandt)
Solution:   Continue searching in the first column below the comment.
Files:	    src/normal.c

Patch 6.0.232
Problem:    "vim --version" prints on stderr while "vim --help" prints on
	    stdout.
Solution:   Make "vim --version" use stdout.
Files:	    runtime/doc/starting.txt, src/globals.h, src/main.c, src/message.c

Patch 6.0.233
Problem:    "\1\{,8}" in a regexp is not allowed, but it should work, because
	    there is an upper limit.  (Jim Battle)
Solution:   Allow using "\{min,max}" after an atom that can be empty if there
	    is an upper limit.
Files:	    src/regexp.c

Patch 6.0.234
Problem:    It's not easy to set the cursor position without modifying marks.
Solution:   Add the cursor() function. (Yegappan Lakshmanan)
Files:	    runtime/doc/eval.txt, src/eval.c

Patch 6.0.235
Problem:    When writing a file and renaming the original file to make the
	    backup, permissions could change when setting the owner.
Solution:   Only set the owner when it's needed and set the permissions again
	    afterwards.
	    When 'backupcopy' is "auto" check that the owner and permissions
	    of a newly created file can be set properly.
Files:	    src/fileio.c

Patch 6.0.236
Problem:    ":edit" without argument should move cursor to line 1 in Vi
	    compatible mode.
Solution:   Add 'g' flag to 'cpoptions'.
Files:	    runtime/doc/options.txt, src/ex_docmd.c, src/option.h

Patch 6.0.237
Problem:    In a C file, using the filetype plugin, re-indenting a comment
	    with two spaces after the middle "*" doesn't align properly.
Solution:   Don't use a middle entry from a start/middle/end to line up with
	    the start of the comment when the start part doesn't match with
	    the actual comment start.
Files:	    src/misc1.c

Patch 6.0.238
Problem:    Using a ":substitute" command with a substitute() call in the
	    substitution expression causes errors. (Srinath Avadhanula)
Solution:   Save and restore pointers when doing substitution recursively.
Files:	    src/regexp.c

Patch 6.0.239
Problem:    Using "A" to append after a Visually selected block which is after
	    the end of the line, spaces are inserted in the wrong line and
	    other unexpected effects. (Michael Naumann)
Solution:   Don't advance the cursor to the next line.
Files:	    src/ops.c

Patch 6.0.240
Problem:    Win32: building with Python 2.2 doesn't work.
Solution:   Add support for Python 2.2 with dynamic linking. (Paul Moore)
Files:	    src/if_python.c

Patch 6.0.241
Problem:    Win32: Expanding the old value of an option that is a path that
	    starts with a backslash, an extra backslash is inserted.
Solution:   Only insert backslashes where needed.
	    Also handle multi-byte characters properly when removing
	    backslashes.
Files:	    src/option.c

Patch 6.0.242
Problem:    GUI: On a system with an Exceed X server sometimes get a "Bad
	    Window" error. (Tommi Maekitalo)
Solution:   When forking, use a pipe to wait in the parent for the child to
	    have done the setsid() call.
Files:	    src/gui.c

Patch 6.0.243
Problem:    Unix: "vim --version" outputs a NL before the last line instead of
	    after it. (Charles Campbell)
Solution:   Send the NL to the same output stream as the text.
Files:	    src/message.c, src/os_unix.c, src/proto/message.pro

Patch 6.0.244
Problem:    Multi-byte: Problems with (illegal) UTF-8 characters in menu and
	    file name (e.g., icon text, status line).
Solution:   Correctly handle unprintable characters.  Catch illegal UTF-8
	    characters and replace them with <xx>.  Truncating the status line
	    wasn't done correctly at a multi-byte character. (Yasuhiro
	    Matsumoto)
	    Added correct_cmdspos() and transchar_byte().
Files:	    src/buffer.c, src/charset.c, src/ex_getln.c, src/gui.c,
	    src/message.c, src/screen.c, src/vim.h

Patch 6.0.245
Problem:    After using a color scheme, setting the 'background' option might
	    not work. (Peter Horst)
Solution:   Disable the color scheme if it switches 'background' back to the
	    wrong value.
Files:	    src/option.c

Patch 6.0.246
Problem:    ":echomsg" didn't use the highlighting set by ":echohl". (Gary
	    Holloway)
Solution:   Use the specified attributes for the message. (Yegappan
	    Lakshmanan)
Files:	    src/eval.c

Patch 6.0.247
Problem:    GTK GUI: Can't use gvim in a kpart widget.
Solution:   Add the "--echo-wid" argument to let Vim echo the window ID on
	    stdout. (Philippe Fremy)
Files:	    runtime/doc/starting.txt, src/globals.h, src/gui_gtk_x11.c,
	    src/main.c

Patch 6.0.248
Problem:    When using compressed help files and 'encoding' isn't "latin1",
	    Vim converts the help file before decompressing. (David Reviejo)
Solution:   Don't convert a help file when 'binary' is set.
Files:	    src/fileio.c

Patch 6.0.249
Problem:    "vim -t edit -c 'sta ex_help'" doesn't move cursor to edit().
Solution:   Don't set the cursor on the first line for "-c" arguments when
	    there also is a "-t" argument.
Files:	    src/main.c

Patch 6.0.250 (extra)
Problem:    Macintosh: Various problems when compiling.
Solution:   Various fixes, mostly #ifdefs. (Dany St. Amant)
Files:	    src/gui_mac.c, src/main.c, src/misc2.c, src/os_mac.h,
	    src/os_mac.pbproj/project.pbxproj, src/os_unix.c

Patch 6.0.251 (extra)
Problem:    Macintosh: menu shortcuts are not very clear.
Solution:   Show the shortcut with the Mac clover symbol. (raindog)
Files:	    src/gui_mac.c

Patch 6.0.252
Problem:    When a user function was defined with "abort", an error that is
	    not inside if/endif or while/endwhile doesn't abort the function.
	    (Servatius Brandt)
Solution:   Don't reset did_emsg when the function is to be aborted.
Files:	    src/ex_docmd.c

Patch 6.0.253
Problem:    When 'insertmode' is set, after "<C-O>:edit file" the next <C-O>
	    doesn't work. (Benji Fisher)  <C-L> has the same problem.
Solution:   Reset need_start_insertmode once in edit().
Files:	    src/edit.c

Patch 6.0.254 (extra)
Problem:    Borland C++ 5.5: Checking for stack overflow doesn't work
	    correctly.  Matters when using a complicated regexp.
Solution:   Remove -N- from Make_bc5.mak. (Yasuhiro Matsumoto)
Files:	    src/Make_bc5.mak

Patch 6.0.255 (extra) (depends on patch 6.0.116 and 6.0.121)
Problem:    Win32: ACL support doesn't work well on Samba drives.
Solution:   Add a check for working ACL support. (Mike Williams)
Files:	    src/os_win32.c

Patch 6.0.256 (extra)
Problem:    Win32: ":highlight Comment guifg=asdf" does not give an error
	    message. (Randall W.  Morris)  Also for other systems.
Solution:   Add gui_get_color() to give one error message for all systems.
Files:	    src/gui.c, src/gui_amiga.c, src/gui_athena.c, src/gui_motif.c,
	    src/gui_riscos.c, src/gui_x11.c, src/gui_gtk_x11.c,
	    src/proto/gui.pro, src/syntax.c

Patch 6.0.257
Problem:    Win32: When 'mousefocus' is set and there is a BufRead
	    autocommand, after the dialog for permissions changed outside of
	    Vim: 'mousefocus' stops working. (Robert Webb)
Solution:   Reset need_mouse_correct after checking timestamps.
Files:	    src/fileio.c

Patch 6.0.258
Problem:    When 'scrolloff' is 999 and there are folds, the text can jump up
	    and down when moving the cursor down near the end of the file.
	    (Lubomir Host)
Solution:   When putting the cursor halfway the window start counting lines at
	    the end of a fold.
Files:	    src/move.c

Patch 6.0.259
Problem:    MS-DOS: after editing the command line the cursor shape may remain
	    like in Insert mode. (Volker Kiefel)
Solution:   Reset the cursor shape after editing the command line.
Files:	    src/ex_getln.c

Patch 6.0.260
Problem:    GUI: May crash while starting up when giving an error message for
	    missing color. (Servatius Brandt)
Solution:   Don't call gui_write() when still starting up.  Don't give error
	    message for empty color name.  Don't use 't_vb' while the GUI is
	    still starting up.
Files:	    src/fileio.c, src/gui.c, src/misc1.c, src/ui.c

Patch 6.0.261
Problem:    nr2char() and char2nr() don't work with multi-byte characters.
Solution:   Use 'encoding' for these functions. (Yasuhiro Matsumoto)
Files:	    runtime/doc/eval.txt, src/eval.c

Patch 6.0.262 (extra)
Problem:    Win32: IME doesn't work properly.  OnImeComposition() isn't used
	    at all.
Solution:   Adjust various things for IME.
Files:	    src/globals.h, src/gui_w32.c, src/mbyte.c, src/proto/ui.pro,
	    src/structs.h, src/ui.c

Patch 6.0.263
Problem:    GTK: When a dialog is closed by the window manager, Vim hangs.
	    (Christian J. Robinson)
Solution:   Use GTK_WIDGET_DRAWABLE() instead of GTK_WIDGET_VISIBLE().
Files:	    src/gui_gtk.c, src/gui_gtk_x11.c

Patch 6.0.264
Problem:    The amount of virtual memory is used to initialize 'maxmemtot',
	    which may be much more than the amount of physical memory,
	    resulting in a lot of swapping.
Solution:   Get the amount of physical memory with sysctl(), sysconf() or
	    sysinfo() when possible.
Files:	    src/auto/configure, src/configure.in, src/config.h.in,
	    src/os_unix.c, src/os_unix.h

Patch 6.0.265
Problem:    Win32: Using backspace while 'fkmap' is set causes a crash.
	    (Jamshid Oasjmoha)
Solution:   Don't try mapping special keys.
Files:	    src/farsi.c

Patch 6.0.266
Problem:    The rename() function deletes the file if the old and the new name
	    are the same. (Volker Kiefel)
Solution:   Don't do anything if the names are equal.
Files:	    src/fileio.c

Patch 6.0.267
Problem:    UTF-8: Although 'isprint' says a character is printable,
	    utf_char2cells() still considers it unprintable.
Solution:   Use vim_isprintc() for characters upto 0x100. (Yasuhiro Matsumoto)
Files:	    src/mbyte.c

Patch 6.0.268 (extra) (depends on patch 6.0.255)
Problem:    Win32: ACL check crashes when using forward slash in file name.
Solution:   Improve the check for the path in the file name.
Files:	    src/os_win32.c

Patch 6.0.269
Problem:    Unprintable characters in a file name may cause problems when
	    using the 'statusline' option or when 'buftype' is "nofile".
Solution:   call trans_characters() for the resulting statusline. (Yasuhiro
	    Matsumoto)
Files:	    src/buffer.c, src/screen.c, src/charset.c

Patch 6.0.270 (depends on patch 6.0.267)
Problem:    A tab causes UTF-8 text to be displayed in the wrong position.
	    (Ron Aaron)
Solution:   Correct utf_char2cells() again.
Files:	    src/mbyte.c

Patch 6.1a.001 (extra)
Problem:    32bit DOS: copying text to the clipboard may cause a crash.
	    (Jonathan D Johnston)
Solution:   Don't copy one byte too much in SetClipboardData().
Files:	    src/os_msdos.c

Patch 6.1a.002
Problem:    GTK: On some configurations, when closing a dialog from the window
	    manager, Vim hangs.
Solution:   Catch the "destroy" signal. (Aric Blumer)
Files:	    src/gui_gtk.c

Patch 6.1a.003
Problem:    Multi-byte: With UTF-8 double-wide char and 'virtualedit' set:
	    yanking in Visual mode doesn't include the last byte. (Eric Long)
Solution:   Don't add a space for a double-wide character.
Files:	    src/ops.c

Patch 6.1a.004 (extra)
Problem:    MINGW: undefined type. (Ron Aaron)
Solution:   Make GetCompositionString_inUCS2() static.
Files:	    src/gui_w32.c, src/gui_w48.c, src/proto/gui_w32.pro

Patch 6.1a.005 (extra)
Problem:    Win32: ":hardcopy" doesn't work after ":hardcopy!". (Jonathan
	    Johnston)
Solution:   Don't keep the driver context when using ":hardcopy!". (Vince
	    Negri)
Files:	    src/os_mswin.c

Patch 6.1a.006
Problem:    multi-byte: after setting 'encoding' the window title might be
	    wrong.
Solution:   Force resetting the title. (Yasuhiro Matsumoto)
Files:	    src/option.c

Patch 6.1a.007
Problem:    Filetype detection for "*.inc" doesn't work.
Solution:   Use a ":let" command. (David Schweikert)
Files:	    runtime/filetype.vim

Patch 6.1a.008 (extra)
Problem:    Win32: ACL detection for network shares doesn't work.
Solution:   Include the trailing (back)slash in the root path. (Mike Williams)
Files:	    src/os_win32.c

Patch 6.1a.009
Problem:    When using "\@<=" or "\@<!" in a pattern, a "\1" may refer to a ()
	    part that follows, but it generates an error message.
Solution:   Allow a forward reference when there is a following "\@<=" or
	    "\@<!".
Files:	    runtime/doc/pattern.txt, src/regexp.c

Patch 6.1a.010
Problem:    When using ":help" and opening a new window, the alternate file
	    isn't set.
Solution:   Set the alternate file to the previously edited file.
Files:	    src/ex_cmds.c

Patch 6.1a.011
Problem:    GTK: ":set co=77", change width with the mouse, ":set co=77"
	    doesn't resize the window. (Darren Hiebert)
Solution:   Set the form size after handling a resize event.
Files:	    src/gui_gtk_x11.c

Patch 6.1a.012
Problem:    GTK: The file browser always returns a full path. (Lohner)
Solution:   Shorten the file name if possible.
Files:	    src/gui_gtk.c

Patch 6.1a.013
Problem:    When using "=~word" in 'cinkeys' or 'indentkeys', the case of the
	    last character of the word isn't ignored. (Raul Segura Acevedo)
Solution:   Ignore case when checking the last typed character.
Files:	    src/edit.c

Patch 6.1a.014
Problem:    After patch 6.1a.006 can't compile without the title feature.
Solution:   Add an #ifdef.
Files:	    src/option.c

Patch 6.1a.015
Problem:    MS-Windows: When expanding a file name that contains a '[' or '{'
	    an extra backslash is inserted. (Raul Segura Acevedo)
Solution:   Avoid adding the backslash.
Files:	    src/ex_getln.c

Patch 6.1a.016
Problem:    Completion after ":language" doesn't include "time". (Raul Segura
	    Acevedo)
Solution:   Add the alternative to the completions.
Files:	    src/ex_cmds2.c

Patch 6.1a.017
Problem:    Clicking the mouse in the top row of a window where the first line
	    doesn't fit moves the cursor to the wrong column.
Solution:   Add the skipcol also for the top row of a window.
Files:	    src/ui.c

Patch 6.1a.018
Problem:    When 'scrolloff' is one and the window height is one, "gj" can put
	    the cursor above the window. (Raul Segura Acevedo)
Solution:   Don't let skipcol become bigger than the cursor column.
Files:	    src/move.c

Patch 6.1a.019
Problem:    When using a composing character on top of an ASCII character, the
	    "l" command clears the composing character.  Only when 'ruler' and
	    'showcmd' are off. (Raphael Finkel)
Solution:   Don't move the cursor by displaying characters when there are
	    composing characters.
Files:	    src/screen.c

Patch 6.1a.020
Problem:    GTK: after patch 6.1a.011 resizing with the mouse doesn't always
	    work well for small sizes. (Adrien Beau)
Solution:   Use another way to avoid the problem with ":set co=77".
Files:	    src/gui_gtk_x11.c

Patch 6.1a.021
Problem:    Several Syntax menu entries are wrong or confusing.
Solution:   Rephrase and correct the menu entries. (Adrien Beau)
Files:	    runtime/makemenu.vim, runtime/menu.vim

Patch 6.1a.022
Problem:    A tags file might be used twice on case insensitive systems.
	    (Rick Swanton)
Solution:   Don't use the same file name twice in the default for the 'tags'
	    option.  Ignore case when comparing names of already visited
	    files.
Files:	    src/misc2.c, src/option.c

Patch 6.1a.023
Problem:    When starting the GUI get "C" characters echoed in the terminal.
Solution:   Don't try sending a clear-screen command while the GUI is starting
	    up.
Files:	    src/screen.c

Patch 6.1a.024
Problem:    In other editors CTRL-F is often used for a find dialog.
Solution:   In evim use CTRL-F for the find dialog.
Files:	    runtime/evim.vim

Patch 6.1a.025
Problem:    The choices for the fileformat dialog can't be translated.
Solution:   Add g:menutrans_fileformat_choices. (Adrien Beau)
Files:	    runtime/menu.vim

Patch 6.1a.026
Problem:    Indenting Java files is wrong with "throws", "extends" and
	    "implements" clauses.
Solution:   Update the Java indent script.
Files:	    runtime/indent/java.vim

Patch 6.1a.027
Problem:    A few Syntax menu entries missing or incorrect.
Solution:   Add and correct the menu entries. (Adrien Beau)
	    Shorten a few menus to avoid they become too long.
Files:	    runtime/makemenu.vim, runtime/menu.vim

Patch 6.1a.028
Problem:    XIM: problems with feedback and some input methods.
Solution:   Use iconv for calculating the cells.  Remove the queue for
	    key_press_event only when text was changed. (Yasuhiro Matsumoto)
Files:	    src/globals.h, src/mbyte.c, src/screen.c

Patch 6.1a.029
Problem:    After patch 6.1a.028 can't compile GTK version with XIM but
	    without multi-byte chars.
Solution:   Add an #ifdef. (Aschwin Marsman)
Files:	    src/mbyte.c

Patch 6.1a.030
Problem:    With double-byte encodings toupper() and tolower() may have wrong
	    results.
Solution:   Skip double-byte characters. (Eric Long)
Files:	    src/eval.c

Patch 6.1a.031
Problem:    Accessing the 'balloondelay' variable may cause a crash.
Solution:   Make the variable for 'balloondelay' a long. (Olaf Seibert)
Files:	    src/option.h

Patch 6.1a.032 (extra)
Problem:    Some menu files used a wrong encoding name for "scriptencoding".
Solution:   Move the translations to a separate file, which is sourced after
	    setting "scriptencoding".
	    Also add Czech menu translations in ASCII and update the other
	    encodings.
Files:	    runtime/lang/menu_cs_cz.iso_8859-1.vim,
	    runtime/lang/menu_cs_cz.iso_8859-2.vim,
	    runtime/lang/menu_czech_czech_republic.1250.vim,
	    runtime/lang/menu_czech_czech_republic.1252.vim,
	    runtime/lang/menu_czech_czech_republic.ascii.vim,
	    runtime/lang/menu_de_de.iso_8859-1.vim,
	    runtime/lang/menu_de_de.latin1.vim,
	    runtime/lang/menu_fr_fr.iso_8859-1.vim,
	    runtime/lang/menu_fr_fr.latin1.vim,
	    runtime/lang/menu_french_france.1252.vim,
	    runtime/lang/menu_german_germany.1252.vim,
	    runtime/lang/menu_ja_jp.euc-jp.vim,
	    runtime/lang/menu_ja_jp.utf-8.vim,
	    runtime/lang/menu_japanese_japan.932.vim

Patch 6.1a.033
Problem:    XIM: doesn't reset input context.
Solution:   call xim_reset() with im_set_active(FALSE). (Takuhiro Nishioka)
Files:	    src/mbyte.c

Patch 6.1a.034 (extra)
Problem:    Win32: The ACL checks for a readonly file still don't work well.
Solution:   Remove the ACL checks, go back to how it worked in Vim 6.0.
Files:	    src/os_win32.c

Patch 6.1a.035
Problem:    multi-byte: When using ":sh" in the GUI, typed and displayed
	    multi-byte characters are not handled correctly.
Solution:   Deal with multi-byte characters to and from the shell. (Yasuhiro
	    Matsumoto)  Also handle UTF-8 composing characters.
Files:	    src/os_unix.c

Patch 6.1a.036
Problem:    GTK: the save-yourself event was not handled.
Solution:   Catch the save-yourself event and preserve swap files. (Neil Bird)
Files:	    src/gui_gtk_x11.c

Patch 6.1a.037
Problem:    The MS-Windows key mapping doesn't include CTRL-S for saving.
	    (Vlad Sandrini)
Solution:   Map CTRL-S to ":update".
Files:	    runtime/mswin.vim

Patch 6.1a.038
Problem:    Solaris: Including both sys/sysctl.h and sys/sysinfo.h doesn't
	    work. (Antonio Colombo)
Solution:   Don't include sys/sysinfo.h when not calling sysinfo().
Files:	    src/os_unix.c

Patch 6.1a.039
Problem:    Not all visual basic files are recognized.
Solution:   Add checks to catch *.ctl files. (Raul Segura Acevedo)
Files:	    runtime/filetype.vim

Patch 6.1a.040
Problem:    A *.pl file is recognized as Perl, but it could be a prolog file.
Solution:   Check the first non-empty line. (Kontra Gergely)
Files:	    runtime/filetype.vim

Patch 6.1a.041
Problem:    When pressing the left mouse button in the command line and them
	    moving the mouse upwards, nearly all the text is selected.
Solution:   Don't try extending a modeless selection when there isn't one.
Files:	    src/ui.c

Patch 6.1a.042
Problem:    When merging files, ":diffput" and ":diffget" are used a lot, but
	    they require a lot of typing.
Solution:   Add "dp" for ":diffput" and "do" for ":diffget".
Files:	    runtime/doc/diff.txt, src/diff.c, src/normal.c, src/proto/diff.pro


Patch 6.1b.001 (extra)
Problem:    Checking for wildcards in a path does not handle multi-byte
	    characters with a trail byte which is a wildcard.
Solution:   Handle multi-byte characters correctly. (Muraoka Taro)
Files:	    src/os_amiga.c, src/os_mac.c, src/os_msdos.c, src/os_mswin.c,
	    src/os_unix.c

Patch 6.1b.002
Problem:    A regexp that ends in "\{" is not flagged as an error.  May cause
	    a stack overflow when 'incsearch' is set. (Gerhard Hochholzer)
Solution:   Handle a missing "}" as an error.
Files:	    src/regexp.c

Patch 6.1b.003 (extra)
Problem:    The RISC OS GUI doesn't compile.
Solution:   Include changes since Vim 5.7. (Andy Wingate)
Files:	    src/Make_ro.mak, src/gui_riscos.c, src/os_riscos.c,
	    src/os_riscos.h, src/proto/gui_riscos.pro

Patch 6.1b.004
Problem:    col("'>") returns a negative number for linewise selection. (Neil
	    Bird)
Solution:   Don't add one to MAXCOL.
Files:	    src/eval.c

Patch 6.1b.005
Problem:    Using a search pattern that causes an out-of-stack error while
	    'hlsearch' is set keeps giving the hit-Enter prompt.
	    A search pattern that takes a long time delays typing when
	    'incsearch' is set.
Solution:   Stop 'hlsearch' highlighting when the regexp causes an error.
	    Stop searching for 'incsearch' when a character is typed.
Files:	    src/globals.h, src/message.c, src/screen.c, src/search.c,
	    src/vim.h

Patch 6.1b.006
Problem:    When entering a composing character on the command line with
	    CTRL-V, the text isn't redrawn correctly.
Solution:   Redraw the text under and after the cursor.
Files:	    src/ex_getln.c

Patch 6.1b.007
Problem:    When the cursor is in the white space between two sentences, "dis"
	    deletes the first character of the following sentence, "das"
	    deletes a space after the sentence.
Solution:   Backup the cursor one character in these situations.
Files:	    src/search.c

Patch 6.1b.008
Problem:    *.xsl files are not recognized as xslt but xml.
	    Monk files are not recognized.
Solution:   Delete the duplicate line for *.xsl. (Johannes Zellner)
	    Recognize monk files.
Files:	    runtime/filetype.vim

Patch 6.1b.009
Problem:    Can't always compile small features and then adding eval feature,
	    "sandbox" is undefined. (Axel Kielhorn)
Solution:   Always define "sandbox" when the eval feature is used.
Files:	    src/globals.h

Patch 6.1b.010 (extra)
Problem:    When compiling gvimext.cpp with MSVC 4.2 get a number of warnings.
Solution:   Change "true" to "TRUE". (Walter Briscoe)
Files:	    GvimExt/gvimext.cpp

Patch 6.1b.011
Problem:    When using a very long string for confirm(), can't quit the
	    displaying at the more prompt. (Hari Krishna Dara)
Solution:   Jump to the end of the message to show the choices.
Files:	    src/message.c

Patch 6.1b.012
Problem:    Multi-byte: When 'showbreak' is set and a double-wide character
	    doesn't fit at the right window edge the cursor gets stuck there.
	    Using cursor-left gets stuck when 'virtualedit' is set.  (Eric
	    Long)
Solution:   Fix the way the extra ">" character is counted when 'showbreak' is
	    set.  Don't correct cursor for virtual editing on a double-wide
	    character.
Files:	    src/charset.c, src/edit.c

Patch 6.1b.013
Problem:    A user command that partly matches with a buffer-local user
	    command and matches full with a global user command unnecessarily
	    gives an 'ambiguous command' error.
Solution:   Find the full global match even after a partly local match.
Files:	    src/ex_docmd.c

Patch 6.1b.014
Problem:    EBCDIC: switching mouse events off causes garbage on screen.
	    Positioning the cursor in the GUI causes garbage.
Solution:   Insert an ESC in the terminal code. (Ralf Schandl)
	    Use "\b" instead of "\010" for KS_LE.
Files:	    src/os_unix.c, src/term.c

Patch 6.1b.015
Problem:    Vimtutor has a typo.  Get a warning for "tempfile" if it
	    doesn't exist.
Solution:   Move a quote to the end of a line. (Max Ischenko)
	    Use "mktemp" first, more systems have it.
Files:	    src/vimtutor

Patch 6.1b.016
Problem:    GTK: loading a fontset that works partly, Vim might hang or crash.
Solution:   Avoid that char_width becomes zero. (Yasuhiro Matsumoto)
Files:	    src/gui_gtk_x11.c

Patch 6.1b.017
Problem:    GUI: When using ":shell" and there is a beep, nothing happens.
Solution:   Call vim_beep() to produce the beep from the shell. (Yasuhiro
	    Matsumoto)
Files:	    src/message.c

Patch 6.1b.018 (depends on 6.1b.006)
Problem:    When entering the encryption key, special keys may still reveal
	    the typed characters.
Solution:   Make sure stars are used or nothing is shown in all cases.
Files:	    src/digraph.c, src/getchar.c, src/ex_getln.c

Patch 6.1b.019 (depends on 6.1b.005)
Problem:    A search pattern that takes a long time slows down typing when
	    'incsearch' is set.
Solution:   Pass SEARCH_PEEK to dosearch().
Files:	    src/ex_getln.c

Patch 6.1b.020
Problem:    When using the matchit plugin, "%" finds a match on the "end" of a
	    ":syntax region" command in Vim scripts.
Solution:   Skip over ":syntax region" commands by setting b:match_skip.
Files:	    runtime/ftplugin/vim.vim

Patch 6.1b.021
Problem:    when 'mousefocus' is set, CTRL-W CTRL-] sometimes doesn't warp the
	    pointer to the new window. (Robert Webb)
Solution:   Don't reset need_mouse_correct when checking the timestamp of a
	    file.
Files:	    src/fileio.c

Patch 6.1b.022
Problem:    With lots of folds "j" does not obey 'scrolloff' properly.
	    (Srinath Avadhanula)
Solution:   Go to end of the fold before counting context lines.
Files:	    src/move.c

Patch 6.1b.023
Problem:    On MS-Windows system() may cause checking timestamps, because Vim
	    loses and gains input focus, while this doesn't happen on Unix.
Solution:   Don't check timestamps while system() is busy.
Files:	    src/ex_cmds2.c, src/fileio.c, src/globals.h, src/misc1.c

Patch 6.1b.024 (extra)
Problem:    Gettext 0.11 complains that "sjis" is not a standard name.
Solution:   Use "cp932" instead.
Files:	    src/po/sjiscorr.c

Patch 6.1b.025 (extra)
Problem:    Win32: When closing gvim while it is minimized  and has a changed
	    file, the file-changed dialog pops up in a corner of the screen.
Solution:   Put the dialog in the middle of the screen.
Files:	    src/gui_w48.c

Patch 6.1b.026
Problem:    When 'diffopt' contains 'iwhite' but not 'icase': differences in
	    case are not highlighted properly. (Gerhard Hochholzer)
Solution:   Don't ignore case when ignoring white space differences.
Files:	    src/diff.c

Patch 6.1b.027
Problem:    "vim --remote +" may cause a crash.
Solution:   Check for missing file name argument. (Martin Kahlert)
Files:	    src/main.c

Patch 6.1b.028 (extra)
Problem:    Win16: Can't compile after patch 6.1b.025.
Solution:   Add code specifically for Win16. (Vince Negri)
Files:	    src/gui_w48.c

Patch 6.1b.029
Problem:    Win32: When a directory on an NTFS partition is read/execute (no
	    delete,modify,write) and the file has modify rights, trying to
	    write the file deletes it.  Making the file read/write/execute
	    (not delete) solves it. (Mark Canup)
Solution:   Use the Unix code to check for a writable directory.  If not, then
	    make a backup copy and overwrite the file.
Files:	    src/fileio.c

Patch 6.1b.030 (extra)
Problem:    Mac: small mistake in the build script and prototypes.
Solution:   Fix the build script and add the prototypes. (Axel Kielhorn)
Files:	    src/os_mac.build, src/gui_mac.c

Patch 6.1b.031 (extra)
Problem:    Win32 GUI: ":set guifont=*" doesn't set 'guifont' to the resulting
	    font name. (Vlad Sandrini)
Solution:   Put the code back in gui_mch_init_font() to form the font name out
	    of the logfont.
Files:	    src/gui_w48.c

Patch 6.1b.032
Problem:    Athena: Setting a color scheme before the GUI has started causes a
	    crash. (Todd Blumer)
Solution:   Don't try using color names that haven't been set yet.
Files:	    src/gui_athena.c

Patch 6.1b.033
Problem:    When using a count after a ":s" command may get ml_get errors.
	    (Dietmar Lang)
Solution:   Check that the resulting range does not go past the end of the
	    buffer.
Files:	    src/ex_cmds.c

Patch 6.1b.034
Problem:    After sourcing mswin.vim, when using <C-S-Right> after
	    auto-indenting and then <Del>, get warning for allocating
	    ridiculous amount of memory. (Dave Delgreco)
Solution:   Adjust the start of the Visual area when deleting the auto-indent.
Files:	    src/edit.c

Patch 6.1b.035
Problem:    When using evim, dropping a file on Vim and then double clicking
	    on a word, it is changed to "i". (Merlin Hansen)
Solution:   Reset need_start_insertmode after editing the file.
Files:	    src/ex_docmd.c


==============================================================================
VERSION 6.2						*version-6.2*

This section is about improvements made between version 6.1 and 6.2.

This is mainly a bug-fix release.  There are also a few new features.

Main new features:
- Support for GTK 2. (Daniel Elstner)
- Support for editing Arabic text. (Nadim Shaikli & Isam Bayazidi)
- ":try" command and exception handling. (Servatius Brandt)
- Support for the neXtaw GUI toolkit (mostly like Athena). (Alexey Froloff)
- Cscope support for Win32. (Khorev Sergey)
- Support for PostScript printing in various 8-bit encodings. (Mike Williams)


Changed							*changed-6.2*
-------

Removed the scheme indent file, the internal Lisp indenting works well now.

Moved the GvimEXt, OleVim and VisVim directories into the "src" directory.
This is more consistent with how xxd is handled.

The VisVim.dll file is installed in the top directory, next to gvimext.dll,
instead of in a subdirectory "VisVim".  Fixes that NSIS was uninstalling it
from the wrong directory.

Removed the art indent file, it didn't do anything.

submatch() returned line breaks with CR instead of LF.

Changed the Win32 Makefiles to become more uniform and compile gvimext.dll.
(Dan Sharp)

'cindent': Align a "//" comment with a "//" comment in a previous line.
(Helmut Stiegler)

Previously only for xterm-like terminals parent widgets were followed to find
the title and icon label.  Now do this for all terminal emulators.

Made it possible to recognize backslashes for "%" matching.  The 'M' flag in
'cpoptions' disables it. (Haakon Riiser)

Removed the Make_tcc.mak makefile for Turbo C.  It didn't work and we probably
can't make it work (the compiler runs out of memory).

Even though the documentation refers to keywords, "[ CTRL-D" was using
'isident' to find matches.  Changed it to use 'iskeyword'.  Also applies to
other commands that search for defined words in included files such as
":dsearch", "[D" and "[d".

Made 'keywordprg' global-local. (Christian Robinson)

Enabled the Netbeans interface by default.  Reversed the configure argument
from "--enable-netbeans" to "--disable-netbeans".


Added							*added-6.2*
-----

New options:
	'arabic'
	'arabicshape'
	'ambiwidth'
	'autochdir'
	'casemap'
	'copyindent'
	'cscopequickfix'
	'preserveindent'
	'printencoding'
	'rightleftcmd'
	'termbidi'
	'toolbariconsize'
	'winfixheight'

New keymaps:
	Serbian (Aleksandar Veselinovic)
	Chinese Pinyin (Fredrik Roubert)
	Esperanto (Antoine J. Mechelynck)

New syntax files:
	Valgrind (Roger Luethi)
	Smarty template (Manfred Stienstra)
	MySQL (Kenneth Pronovici)
	RockLinux package description (Piotr Esden-Tempski)
	MMIX (Dirk Huesken)
	gkrellmrc (David Necas)
	Tilde (Tobias Rundtrom)
	Logtalk (Paulo Moura)
	PLP (Juerd Waalboer)
	fvwm2m4 (David Necas)
	IPfilter (Hendrik Scholz)
	fstab (Radu Dineiu)
	Quake (Nikolai Weibull)
	Occam (Mario Schweigler)
	lpc (Shizhu Pan)
	Exim conf (David Necas)
	EDIF (Artem Zankovich)
	.cvsrc (Nikolai Weibull)
	.fetchmailrc (Nikolai Weibull)
	GNU gpg (Nikolai Weibull)
	Grub (Nikolai Weibull)
	Modconf (Nikolai Weibull)
	RCS (Dmitry Vasiliev)
	Art (Dorai Sitaram)
	Renderman Interface Bytestream (Andrew J Bromage)
	Mailcap (Doug Kearns)
	Subversion commit file (Dmitry Vasiliev)
	Microsoft IDL (Vadim Zeitlin)
	WildPackets EtherPeek Decoder (Christopher Shinn)
	Spyce (Rimon Barr)
	Resolv.conf (Radu Dineiu)
	A65 (Clemens Kirchgatterer)
	sshconfig and sshdconfig (David Necas)
	Cheetah and HTMLCheetah (Max Ischenko)
	Packet filter (Camiel Dobbelaar)

New indent files:
	Eiffel (David Clarke)
	Tilde (Tobias Rundtrom)
	Occam (Mario Schweigler)
	Art (Dorai Sitaram)
	PHP (Miles Lott)
	Dylan (Brent Fulgham)

New tutor translations:
	Slovak (Lubos Celko)
	Greek (Christos Kontas)
	German (Joachim Hofmann)
	Norwegian (Øyvind Holm)

New filetype plugins:
	Occam (Mario Schweigler)
	Art (Dorai Sitaram)
	ant.vim, aspvbs.vim, config.vim, csc.vim, csh.vim, dtd.vim, html.vim,
	jsp.vim, pascal.vim, php.vim, sgml.vim, sh.vim, svg.vim, tcsh.vim,
	xhtml.vim, xml.vim, xsd.vim.  (Dan Sharp)

New compiler plugins:
	Checkstyle (Doug Kearns)
	g77 (Ralf Wildenhues)
	fortran (Johann-Guenter Simon)
	Xmllint (Doug Kearns)
	Ruby (Tim Hammerquist)
	Modelsim vcom (Paul Baleme)

New menu translations:
	Brazilian (José de Paula)
	British (Mike Williams)
	Korean in UTF-8. (Nam SungHyun)
	Norwegian (Øyvind Holm)
	Serbian (Aleksandar Jelenak)

New message translation for Norwegian. (Øyvind Holm)

New color scheme:
	desert (Hans Fugal)

Arabic specific features.  'arabicshape', 'termbidi', 'arabic' and
'rightleftcmd' options.  (Nadim Shaikli & Isam Bayazidi)

Support for neXtaw GUI toolkit, mostly like Athena. (Alexey Froloff)

Win32: cscope support. (Khorev Sergey)

VMS: various improvements to documentation and makefiles.  (Zoltan Arpadffy)

Added "x" key to the explorer plugin: execute the default action. (Yasuhiro
Matsumoto)

Compile gvimext.dll with MingW. (Rene de Zwart)

Add the "tohtml.vim" plugin.  It defines the ":TOhtml" user command, an easy
way to convert text to HTML.

Added ":try" / ":catch" / ":finally" / ":endtry" commands.  Add E999 numbers
to all error messages, so that they can be caught by the number.
(Servatius Brandt)
Moved part of ex_docmd.c to the new ex_eval.c source file.

Include support for GTK+ 2.2.x (Daniel Elstner)
Adds the "~" register: drag & drop text.
Adds the 'toolbariconsize' option.
Add -Dalloca when running lint to work around a problem with alloca()
prototype.

When selecting an item in the error window to jump to, take some effort to
find an ordinary window to show the file in (not a preview window).

Support for PostScript printing of various 8-bit encodings. (Mike Williams)

inputdialog() accepts a third argument that is used when the dialog is
cancelled.  Makes it possible to see a difference between cancelling and
entering nothing.

Included Aap recipes.  Can be used to update Vim to the latest version,
building and installing.

"/" option in 'cinoptions': extra indent for comment lines. (Helmut Stiegler)

Vim variable "v:register" and functions setreg(), getreg() and getregtype().
(Michael Geddes)

"v" flag in 'cpoptions': Leave text on screen with backspace in Insert mode.
(Phillip Vandry)

Dosinst.exe also finds gvimext.dll in the "GvimExt" directory.  Useful when
running install in the "src" directory for testing.

Support tag files that were sorted with case ignored. (Flemming Madsen)

When completing a wildcard in a leading path element, as in "../*/Makefile",
only the last part ("Makefile") was listed.  Support custom defined
command line completion.  (Flemming Madsen)

Also recognize "rxvt" as an xterm-like terminal. (Tomas Styblo)

Proper X11 session management.  Fixes that the WM_SAVE_YOURSELF event was not
used by popular desktops.  (Neil Bird)
Not used for Gnome 2, it has its own handling.

Support BOR, DEBUG and SPAWNO arguments for the Borland 3 Makefile. (Walter
Briscoe)

Support page breaks for printing.  Adds the "formfeed" field in
'printoptions'.  (Mike Williams)

Mac OSX: multi-language support: iconv and gettext. (Muraoka Taro, Axel
Kielhorn)

"\Z" flag in patterns: ignore differences in combining characters. (Ron Aaron)

Added 'preserveindent' and 'copyindent' options.  They use existing white
space characters instead of using Tabs as much as possible. (Chris Leishman)

Updated Unicode tables to Unicode 4.0. (Raphael Finkel)

Support for the mouse wheel in rxvt. (AIDA Shinra)

Win32: Added ":8" file modifier to get short filename.  Test50 tests the ":8"
expansion on Win32 systems. (Michael Geddes)

'cscopequickfix' option: Open quickfix window for Cscope commands.  Also
cleanup the code for giving messages.  (Khorev Sergey)

GUI: Support more than 222 columns for mouse positions.

":stopinsert" command: Don't return to Insert mode.

"interrupt" command for debug mode.  Useful for simulating CTRL-C. (Servatius
Brandt)


Fixed							*fixed-6.2*
-----

Removed a few unused #defines from config.h.in, os_os2_cfg.h and os_vms_conf.h.

The Vim icons in PNG format didn't have a transparent background. (Greg
Roelofs)

Fixed a large number of spelling mistakes in the docs. (Adri Verhoef)

The #defines for prototype generation were causing trouble.  Changed them to
typedefs.

A new version of libintl.h uses __asm__, which confuses cproto.  Define a
dummy __asm__ macro.

When 'virtualedit' is set can't move to halfway an unprintable character.
Cripples CTRL-V selection. (Taro Muraoka)
Allow moving to halfway an unprintable character.  Don't let getvvcol() change
the pos->coladd argument.

When a tab wraps to the next line, 'listchars' is set and 'foldcolumn' is
non-zero, only one character of the foldcolumn is highlighted. (Muraoka Taro)

When using ":catch" without an argument Vim crashes. (Yasuhiro Matsumoto)
When no argument given use the ".*" pattern.

Win32: When gvim.exe is started from a shortcut with the window style property
set to maximize Vim doesn't start with a maximized window. (Yasuhiro
Matsumoto)  Open the window with the default size and don't call ShowWindow()
again when it's already visible. (Helmut Stiegler)

gui_gtk.c used MAX, but it's undefined to avoid a conflict with system header
files.

Win32: When closing a window from a mapping some pixels remain on the
statusline. (Yasuhiro Matsumoto)

A column number in an errorformat that goes beyond the end of the line may
cause a crash.

":throw 'test'" crashes Vim. (Yasuhiro Matsumoto)

The file selector's scrollbar colors are not set after doing a ":hi Scrollbar
guifg=color".  And the file selector's colors are not changed by the
colorscheme command.  (David Harrison)

Motif: When compiling with FEAT_FOOTER defined, the text area gets a few
pixels extra space on the right.  Remove the special case in
gui_get_base_width(). (David Harrison)

Using CTRL-R CTRL-P in Insert mode puts the '] mark in the wrong position.
(Helmut Stiegler)

When 'formatoptions' includes "awct" a non-comment wasn't auto-formatted.

Using a "--cmd" argument more than 10 times caused a crash.

DEC style mouse support didn't work if the page field is not empty.
(Uribarri)

"vim -l one two" did only set 'lisp' in the first file.  Vi does it for every
file.

":set tw<" didn't work.  Was checking for '^' instead of '<'.

In ":hardcopy > %.ps" the "%" was not expanded to the current filename.

Made ":redraw" also update the Visual area.

When a not implemented command, such as ":perl", has wrong arguments the less
important error was reported, giving the user the idea the command could work.

On non-Unix systems autocommands for writing did not attempt a match with the
short file name, causing a pattern like "a/b" to fail.

VMS: e_screenmode was not defined and a few other fixes for VMS. (Zoltan
Arpadffy)

redraw_msg() depended on FEAT_ARABIC instead of FEAT_RIGHTLEFT. (Walter
Briscoe)

Various changes for the PC Makefiles. (Walter Briscoe)

Use _truename() instead of our own code to expand a file name into a full
path. (Walter Briscoe)

Error in filetype check for /etc/modutils. (Lubomir Host)

Cscope interface: allocated a buffer too small.

Win16: remove a trailing backslash from a path when obtaining the permission
flags. (Vince Negri)

When searching for tags with case ignored Vim could hang.

When searching directories with a stopdir could get a crash.  Did not
re-allocate enough memory. (Vince Negri)

A user command may cause a crash.  Don't use the command index when it's
negative. (Vince Negri)

putenv() didn't work for MingW and Cygwin. (Dan Sharp)

Many functions were common between os_msdos.c and os_win16.c.  Use os_msdos.c
for compiling the Win16 version and remove the functions from os_win16.c.
(Vince Negri)

For terminals that behave like an xterm but didn't have a name that is
recognized, the window title would not always be set.

When syntax highlighting is off ":hardcopy" could still attempt printing
colors.

Crash when using ":catch" without an argument.  (Servatius Brandt)

Win32: ":n #" doubled the backslashes.

Fixed Arabic shaping for the command line. (Nadim Shaikli)

Avoid splitting up a string displayed on the command line into individual
characters, it breaks Arabic shaping.

Updated Cygwin and MingW makefiles to use more dependencies. (Dan Sharp)

2html.vim didn't work with 'nomagic' set.

When a local argument list is used and doing ":only" Vim could crash later.
(Muraoka Taro)

When using "%P" in 'statusline' and the fillchar is "-", a percentage of 3%
could result in "-3%".  Also avoid changing a space inside a filename to the
fill character.

MSwin: Handling of backslashes and double quotes for command line arguments
was not like what other applications do.  (Walter Briscoe)

Test32 sometimes didn't work, because test11.out was written as TEST11.OUT.

Avoid pointer conversions warnings for Borland C 5.5 in dosinst.c and
uninstal.c.

More improvements for Make_bc3.mak file. (Walter Briscoe)

When ":syn sync linebreaks=1" is used, editing the first line caused a redraw
of the whole screen.

Making translated messages didn't work, if_perl.xs wasn't found. (Vlad
Sandrini)

Motif and Athena: moving Vim to the foreground didn't uniconify it.  Use
XMapRaised() instead of XRaiseWindow(). (Srikanth Sankaran)

When using ":ptag" in a window where 'scrollbind' is set the preview window
would also have 'scrollbind' set.  Also reset 'foldcolumn' and 'diff'.

Various commands that split a window took over 'scrollbind', which is hardly
ever desired.  Esp. for "q:" and ":copen".  Mostly reset 'scrollbind' when
splitting a window.

When 'shellslash' is set in the vimrc file the first entry of ":scriptnames"
would still have backslashes.  Entries in the quickfix list could also have
wrong (back)slashes.

Win32: printer dialog texts were not translated. (Yasuhiro Matsumoto)

When using a multi-byte character with a K_SPECIAL byte or a special key code
with "--remote-send" the received byte sequence was mangled.  Put it in the
typeahead buffer instead of the input buffer.

Win32: The cursor position was incorrect after changing cursor shape.
(Yasuhiro Matsumoto).

Win32: When 'encoding' is not the current codepage the title could not be set
to non-ascii characters.

"vim -d scp://machine/file1 scp://machine/file2" did not work, there was only
one window.  Fixed the netrw plugin not to wipe out the buffer if it is
displayed in other windows.

"/$" caused "e" in last column of screen to disappear, a highlighted blank was
displayed instead.

":s/ *\ze\n//e" removed the line break and introduced arbitrary text.  Was
using the line count including what matched after the "\ze".

Using the "c" flag with ":s" changed the behavior when a line break is
replaced and "\@<=" is used.  Without "c" a following match was not found.

":%s/\vA@<=\nB@=//gce" got stuck on "A\nB" when entering "n".

VMS: add HAVE_STRFTIME in the config file. (Zoltan Arpadffy)

When a delete prompts if a delete should continue when yanking is not
possible, restore msg_silent afterwards.

":sign" did not complain about a missing argument.

When adding or deleting a sign 'hlsearch' highlighting could disappear.
Use the generic functions for updating signs.

On MS-Windows NT, 2K and XP don't use command.com but cmd.exe for testing.
Makes the tests work on more systems.

In the DOS tests don't create "/tmp" to avoid an error.

Mac classic: Problems with reading files with CR vs CR/LF.  Rely on the
library version of fgets() to work correctly for Metrowerks 2.2. (Axel
Kielhorn)

When typing a password a "*" was shown for each byte instead of for each
character.  Added multi-byte handling to displaying the stars. (Yasuhiro
Matsumoto)

When using Perl 5.6 accessing $curbuf doesn't work.  Add an #ifdef to use
different code for 5.6 and 5.8.  (Dan Sharp)

MingW and Cygwin: Don't strip the debug executable. (Dan Sharp)

An assignment to a variable with curlies that includes "==" doesn't work.
Skip over the curlies before searching for an "=". (Vince Negri)

When cancelling the selection of alternate matching tags the tag stack index
could be advanced too far, resulting in an error message when using CTRL-T.


Patch 6.1.001
Problem:    When formatting UTF-8 text it might be wrapped at a space that is
	    followed by a composing character. (Raphael Finkel)
	    Also correct a display error for removing a composing char on top
	    of a space.
Solution:   Check for a composing character on a space.
Files:	    src/edit.c, src/misc1.c, src/screen.c

Patch 6.1.002 (extra)
Problem:    Win32: after a ":popup" command the mouse pointer stays hidden.
Solution:   Unhide the mouse pointer before showing the menu.
Files:	    src/gui_w48.c

Patch 6.1.003
Problem:    When 'laststatus' is zero and there is a vertical split, the
	    vertical separator is drawn in the command line. (Srikant
	    Sankaran)
Solution:   Don't draw the vertical separator where there is no statusline.
Files:	    src/screen.c

Patch 6.1.004
Problem:    Unicode 3.2 changes width and composing of a few characters.
	    (Markus Kuhn)
Solution:   Adjust the Unicode functions for the character width and composing
	    characters.
Files:	    src/mbyte.c

Patch 6.1.005
Problem:    When using more than 50 items in 'statusline' Vim might crash.
	    (Steve Hall)
Solution:   Increment itemcnt in check_stl_option(). (Flemming Madsen)
Files:	    src/option.c

Patch 6.1.006
Problem:    When using "P" in Visual mode to put linewise selected text, the
	    wrong text is deleted. (Jakub Turski)
Solution:   Put the text before the Visual area and correct the text to be
	    deleted for the inserted lines.
	    Also fix that "p" of linewise text in Visual block mode doesn't
	    work correctly.
Files:	    src/normal.c, src/ops.c

Patch 6.1.007
Problem:    Using ":filetype plugin off" when filetype plugins were never
	    enabled causes an error message. (Yiu Wing)
Solution:   Use ":silent!" to avoid the error message.
Files:	    runtime/ftplugof.vim

Patch 6.1.008
Problem:    The "%" command doesn't ignore \" inside a string, it's seen as
	    the end of the string. (Ken Clark)
Solution:   Skip a double quote preceded by an odd number of backslashes.
Files:	    src/search.c

Patch 6.1.009
Problem:    Vim crashes when using a huge number for the maxwid value in a
	    statusline. (Robert M. Nowotniak)
Solution:   Check for an overflow that makes maxwid negative.
Files:	    src/buffer.c

Patch 6.1.010
Problem:    Searching backwards for a question mark with "?\?" doesn't work.
	    (Alan Isaac)  Same problem in ":s?\??" and ":g?\??".
Solution:   Change the "\?" in a pattern to "?" when using "?" as delimiter.
Files:	    src/ex_cmds.c, src/ex_docmd.c, src/proto/regexp.pro, src/regexp.c,
	    src/search.c, src/syntax.c, src/tag.c

Patch 6.1.011
Problem:    XIM: doesn't work correctly when 'number' is set.  Also, a focus
	    problem when selecting candidates.
Solution:   Fix the XIM problems. (Yasuhiro Matsumoto)
Files:	    src/mbyte.c, src/screen.c

Patch 6.1.012
Problem:    A system() call might fail if fread() does CR-LF to LF
	    translation.
Solution:   Open the output file in binary mode. (Pavol Huhas)
Files:	    src/misc1.c

Patch 6.1.013
Problem:    Win32: The default for 'printexpr' doesn't work when there are
	    special characters in 'printdevice'.
Solution:   Add double quotes around the device name. (Mike Williams)
Files:	    runtime/doc/option.txt, src/option.c

Patch 6.1.014
Problem:    An operator like "r" used in Visual block mode doesn't use
	    'virtualedit' when it's set to "block".
Solution:   Check for 'virtualedit' being active in Visual block mode when the
	    operator was started.
Files:	    src/ex_docmd.c, src/globals.h, src/misc2.c, src/normal.c,
	    src/ops.c, src/undo.c

Patch 6.1.015
Problem:    After patch 6.1.014 can't compile with tiny features. (Christian
	    J. Robinson)
Solution:   Add the missing define of virtual_op.
Files:	    src/vim.h

Patch 6.1.016 (extra)
Problem:    Win32: Outputting Hebrew or Arabic text might have a problem with
	    reversing.
Solution:   Replace the RevOut() function with ETO_IGNORELANGUAGE. (Ron Aaron)
Files:	    src/gui_w32.c

Patch 6.1.017
Problem:    Cygwin: After patch 6.1.012 Still doesn't do binary file I/O.
	    (Pavol Juhas)
Solution:   Define BINARY_FILE_IO for Cygwin.
Files:	    src/os_unix.h

Patch 6.1.018
Problem:    Error message when using cterm highlighting. (Leonardo Di Lella)
Solution:   Remove a backslash before a question mark.
Files:	    runtime/syntax/cterm.vim

Patch 6.1.019 (extra)
Problem:    Win32: File name is messed up when editing just a drive name.
	    (Walter Briscoe)
Solution:   Append a NUL after the drive name. (Vince Negri)
Files:	    src/os_win32.c

Patch 6.1.020
Problem:    col("'>") returns a huge number after using Visual line mode.
Solution:   Return the length of the line instead.
Files:	    src/eval.c

Patch 6.1.021 (depends on patch 6.1.009)
Problem:    Vim crashes when using a huge number for the minwid value in a
	    statusline. (Robert M. Nowotniak)
Solution:   Check for an overflow that makes minwid negative.
Files:	    src/buffer.c

Patch 6.1.022
Problem:    Grabbing the status line above the command-line window works like
	    the bottom status line was grabbed. (Jim Battle)
Solution:   Make it possible to grab the status line above the command-line
	    window, so that it can be resized.
Files:	    src/ui.c

Patch 6.1.023 (extra)
Problem:    VMS: running tests doesn't work properly.
Solution:   Adjust the makefile. (Zoltan Arpadffy)
Files:	    src/testdir/Make_vms.mms

Patch 6.1.024
Problem:    When header files use a new syntax for declaring functions, Vim
	    can't figure out missing prototypes properly.
Solution:   Accept braces around a function name. (M. Warner Losh)
Files:	    src/osdef.sh

Patch 6.1.025
Problem:    Five messages for "vim --help" don't start with a capital. (Vlad
	    Sandrini)
Solution:   Make the messages consistent.
Files:	    src/main.c

Patch 6.1.026
Problem:    *.patch files are not recognized as diff files.  In a script a
	    "VAR=val" argument after "env" isn't ignored.  PHP scripts are not
	    recognized.
Solution:   Add *.patch for diff filetypes.  Ignore "VAR=val".  Recognize PHP
	    scripts. (Roman Neuhauser)
Files:	    runtime/filetype.vim, runtime/scripts.vim

Patch 6.1.027
Problem:    When 'foldcolumn' is non-zero, a special character that wraps to
	    the next line disturbs the foldcolumn highlighting.  (Yasuhiro
	    Matsumoto)
Solution:   Only use the special highlighting when drawing text characters.
Files:	    src/screen.c

Patch 6.1.028
Problem:    Client-server: When a --remote-expr fails, Vim still exits with
	    status zero.
Solution:   Exit Vim with a non-zero status to indicate the --remote-expr
	    failed. (Thomas Scott Urban)
Files:	    src/main.c

Patch 6.1.029
Problem:    When 'encoding' is an 8-bit encoding other than "latin1", editing
	    a utf-8 or other Unicode file uses the wrong conversion. (Jan
	    Fedak)
Solution:   Don't use Unicode to latin1 conversion for 8-bit encodings other
	    than "latin1".
Files:	    src/fileio.c

Patch 6.1.030
Problem:    When CTRL-N is mapped in Insert mode, it is also mapped after
	    CTRL-X CTRL-N, while it is not mapped after CTRL-X CTRL-F.
	    (Kontra Gergely)
Solution:   Don't map CTRL-N after CTRL-X CTRL-N.  Same for CTRL-P.
Files:	    src/getchar.c

Patch 6.1.031
Problem:    Cygwin: Xxd could read a file in text mode instead of binary mode.
Solution:   Use "rb" or "rt" when needed. (Pavol Juhas)
Files:	    src/xxd/xxd.c

Patch 6.1.032
Problem:    Can't specify a quickfix file without jumping to the first error.
Solution:   Add the ":cgetfile" command. (Yegappan Lakshmanan)
Files:	    runtime/doc/index.txt, runtime/doc/quickfix.txt, src/ex_cmds.h,
	    src/quickfix.c

Patch 6.1.033
Problem:    GUI: When the selection is lost and the Visual highlighting is
	    changed to underlining, the cursor is left in a different
	    position. (Christian Michon)
Solution:   Update the cursor position after redrawing the selection.
Files:	    src/ui.c

Patch 6.1.034
Problem:    A CVS diff file isn't recognized as diff filetype.
Solution:   Skip lines starting with "? " before checking for an "Index:" line.
Files:	    runtime/scripts.vim

Patch 6.1.035 (extra, depends on 6.1.016)
Problem:    Win32: Outputting Hebrew or Arabic text might have a problem with
	    reversing on MS-Windows 95/98/ME.
Solution:   Restore the RevOut() function and use it in specific situations
	    only. (Ron Aaron)
Files:	    src/gui_w32.c

Patch 6.1.036
Problem:    This command may cause a crash: ":v/./,//-j". (Ralf Arens)
Solution:   Compute the right length of the regexp when it's empty.
Files:	    src/search.c

Patch 6.1.037
Problem:    When 'lazyredraw' is set, pressing "q" at the hit-enter prompt
	    causes an incomplete redraw and the cursor isn't positioned.
	    (Lubomir Host)
Solution:   Overrule 'lazyredraw' when do_redraw is set.
Files:	    src/main.c, src/screen.c

Patch 6.1.038
Problem:    Multi-byte: When a ":s" command contains a multi-byte character
	    where the trail byte is '~' the text is messed up.
Solution:   Properly skip multi-byte characters in regtilde() (Muraoka Taro)
Files:	    src/regexp.c

Patch 6.1.039
Problem:    When folds are defined and the file is changed outside of Vim,
	    reloading the file doesn't update the folds. (Anders
	    Schack-Nielsen)
Solution:   Recompute the folds after reloading the file.
Files:	    src/fileio.c

Patch 6.1.040
Problem:    When changing directory for expanding a file name fails there is
	    no error message.
Solution:   Give an error message for this situation.  Don't change directory
	    if we can't return to the original directory.
Files:	    src/diff.c, src/ex_docmd.c, src/globals.h, src/misc1.c,
	    src/os_unix.c

Patch 6.1.041
Problem:    ":mkvimrc" doesn't handle a mapping that has a leading space in
	    the rhs. (Davyd Ondrejko)
Solution:   Insert a CTRL-V before the leading space.  Also display leading
	    and trailing white space in <> form.
Files:	    src/getchar.c, src/message.c

Patch 6.1.042
Problem:    "vim -r" doesn't show all matches when 'wildignore' removes swap
	    files. (Steve Talley)
Solution:   Keep all matching swap file names.
Files:	    src/memline.c

Patch 6.1.043
Problem:    After patch 6.1.040 a few warnings are produced.
Solution:   Add a type cast to "char *" for mch_chdir(). (Axel Kielhorn)
Files:	    src/diff.c, src/ex_docmd.c.c, src/misc1.c, src/os_unix.c

Patch 6.1.044 (extra)
Problem:    GUI: When using the find/replace dialog with text that contains a
	    slash, an invalid substitute command is generated.
	    On Win32 a find doesn't work when 'insertmode' is set.
Solution:   Escape slashes with a backslash.
	    Make the Win32, Motif and GTK gui use common code for the
	    find/replace dialog.
	    Add the "match case" option for Motif and GTK.
Files:	    src/feature.h, src/proto/gui.pro, src/gui.c, src/gui.h,
	    src/gui_motif.c, src/gui_gtk.c, src/gui_w48.c

Patch 6.1.045
Problem:    In Visual mode, with lots of folds and 'scrolloff' set to 999,
	    moving the cursor down near the end of the file causes the text to
	    jump up and down. (Lubomir Host)
Solution:   Take into account that the cursor may be on the last line of a
	    closed fold.
Files:	    src/move.c

Patch 6.1.046
Problem:    X11 GUI: ":set lsp=2 gcr=n-v-i:hor1-blinkon0" draws a black
	    rectangle.  ":set lsp=2 gcr=n-v-i:hor10-blinkon0" makes the cursor
	    disappear.  (Nam SungHyun)
Solution:   Correctly compute the height of the horizontal cursor.
Files:	    src/gui_gtk_x11.c, src/gui_x11.c

Patch 6.1.047
Problem:    When skipping commands after an error was encountered, expressions
	    for ":if", ";elseif" and ":while" are still evaluated.
Solution:   Skip the expression after an error. (Servatius Brandt)
Files:	    src/ex_docmd.c

Patch 6.1.048
Problem:    Unicode 3.2 changes were missing a few Hangul Jamo characters.
Solution:   Recognize more characters as composing characters. (Jungshik Shin)
Files:	    src/mbyte.c

Patch 6.1.049 (extra)
Problem:    On a 32 bit display a valid color may cause an error message,
	    because its pixel value is negative. (Chris Paulson-Ellis)
Solution:   Check for -11111 instead of the color being negative.
	    Don't add one to the pixel value, -1 may be used for white.
Files:	    src/globals.h, src/gui.c, src/gui.h, src/gui_amiga.c,
	    src/gui_athena.c, src/gui_beos.cc, src/gui_gtk_x11.c,
	    src/gui_mac.c, src/gui_motif.c, src/gui_photon.c,
	    src/gui_riscos.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c,
	    src/gui_x11.c, src/mbyte.c, src/syntax.c

Patch 6.1.050 (depends on 6.1.049)
Problem:    After patch 6.1.049 the non-GUI version doesn't compile.
Solution:   Add an #ifdef FEAT_GUI.  (Robert Stanton)
Files:	    src/syntax.c

Patch 6.1.051 (depends on 6.1.044)
Problem:    Doesn't compile with GUI and small features.
Solution:   Adjust the #if for ga_append().
Files:	    src/misc2.c

Patch 6.1.052
Problem:    Unix: The executable() function doesn't work when the "which"
	    command isn't available.
Solution:   Go through $PATH manually.  Also makes it work for VMS.
Files:	    src/os_unix.c

Patch 6.1.053
Problem:    When 'sessionoptions' contains "globals", or "localoptions" and an
	    option value contains a line break, the resulting script is wrong.
Solution:   Use "\n" and "\r" for a line break. (Srinath Avadhanula)
Files:	    src/eval.c

Patch 6.1.054
Problem:    GUI: A mouse click is not recognized at the more prompt, even when
	    'mouse' includes 'r'.
Solution:   Recognize a mouse click at the more prompt.
	    Also accept a mouse click in the last line in the GUI.
	    Add "ml" entry in 'mouseshape'.
Files:	    src/gui.c, src/message.c, src/misc1.c, src/misc2.c, src/option.c,
	    src/structs.h

Patch 6.1.055
Problem:    When editing a compressed file, Vim will inspect the contents to
	    guess the filetype.
Solution:   Don't source scripts.vim for .Z, .gz, .bz2, .zip and .tgz files.
Files:	    runtime/filetype.vim, runtime/plugin/gzip.vim

Patch 6.1.056
Problem:    Loading the Syntax menu can take quite a bit of time.
Solution:   Add the "skip_syntax_sel_menu" variable.  When it's defined the
	    available syntax files are not in the Syntax menu.
Files:	    runtime/doc/gui.txt, runtime/menu.vim

Patch 6.1.057
Problem:    An ESC inside a mapping doesn't work as documented when
	    'insertmode' is set, it does go from Visual or Normal mode to
	    Insert mode. (Benji Fisher)
Solution:   Make it work as documented.
Files:	    src/normal.c

Patch 6.1.058
Problem:    When there is a closed fold just above the first line in the
	    window, using CTRL-X CTRL-Y in Insert mode will show only one line
	    of the fold. (Alexey Marinichev)
Solution:   Correct the topline by putting it at the start of the fold.
Files:	    src/move.c

Patch 6.1.059
Problem:    ":redir > ~/file" doesn't work. (Stephen Rasku)
Solution:   Expand environment variables in the ":redir >" argument.
Files:	    src/ex_docmd.c

Patch 6.1.060
Problem:    When 'virtualedit' is set and 'selection' is "exclusive", deleting
	    a character just before a tab changes the tab into spaces.  Undo
	    doesn't restore the tab. (Helmut Stiegler)
Solution:   Don't replace the tab by spaces when it's not needed.  Correctly
	    save the line before it's changed.
Files:	    src/ops.c

Patch 6.1.061
Problem:    When 'virtualedit' is set and 'selection' is "exclusive", a Visual
	    selection that ends just after a tab doesn't include that tab in
	    the highlighting.  (Helmut Stiegler)
Solution:   Use a different way to exclude the character under the cursor.
Files:	    src/screen.c

Patch 6.1.062
Problem:    The "man" filetype plugin doesn't work properly on Solaris 5.
Solution:   Use a different way to detect that "man -s" should be used. (Hugh
	    Sasse)
Files:	    runtime/ftplugin/man.vim

Patch 6.1.063
Problem:    Java indenting doesn't work properly.
Solution:   Ignore comments when checking if the indent doesn't increase after
	    a "}".
Files:	    runtime/indent/java.vim

Patch 6.1.064
Problem:    The URLs that the netrw plugin recognized for ftp and rcp did not
	    conform to the standard method://[user@]host[:port]/path.
Solution:   Use ftp://[user@]host[[:#]port]/path, which supports both the new
	    and the previous style.  Also added a bit of dav/cadaver support.
	    (Charles Campbell)
Files:	    runtime/plugin/netrw.vim

Patch 6.1.065
Problem:    VMS: The colorscheme, keymap and compiler menus are not filled in.
Solution:   Ignore case when looking for ".vim" files. (Coen Engelbarts)
Files:	    runtime/menu.vim

Patch 6.1.066 (extra)
Problem:    When calling system() in a plugin reading stdin hangs.
Solution:   Don't set the terminal to RAW mode when it wasn't in RAW mode
	    before the system() call.
Files:	    src/os_amiga.c, src/os_msdos.c, src/os_riscos.c, src/os_unix.c,
	    src/os_win16.c, src/os_win32.c

Patch 6.1.067
Problem:    ":set viminfo+=f0" is not working. (Benji Fisher)
Solution:   Check the "f" flag instead of "'" in 'viminfo'.
Files:	    src/mark.c

Patch 6.1.068
Problem:    When a file is reloaded after it was changed outside of Vim, diff
	    mode isn't updated. (Michael Naumann)
Solution:   Invalidate the diff info so that it's updated when needed.
Files:	    src/fileio.c

Patch 6.1.069
Problem:    When 'showmatch' is set and "$" is in 'cpoptions', using
	    "C}<Esc>" may forget to remove the "$". (Preben Guldberg)
Solution:   Restore dollar_vcol after displaying the matching cursor position.
Files:	    src/search.c

Patch 6.1.070 (depends on 6.1.060)
Problem:    Compiler warning for signed/unsigned mismatch. (Mike Williams)
Solution:   Add a typecast to int.
Files:	    src/ops.c

Patch 6.1.071
Problem:    When 'selection' is exclusive, g CTRL-G in Visual mode counts one
	    character too much. (David Necas)
Solution:   Subtract one from the end position.
Files:	    src/ops.c

Patch 6.1.072
Problem:    When a file name in a tags file starts with http:// or something
	    else for which there is a BufReadCmd autocommand, the file isn't
	    opened anyway.
Solution:   Check if there is a matching BufReadCmd autocommand and try to
	    open the file.
Files:	    src/fileio.c, src/proto/fileio.pro, src/tag.c

Patch 6.1.073 (extra)
Problem:    BC5: Can't easily specify a tiny, small, normal, big or huge
	    version.
Solution:   Allow selecting the version with the FEATURES variable. (Ajit
	    Thakkar)
Files:	    src/Make_bc5.mak

Patch 6.1.074
Problem:    When 'cdpath' includes "../..", changing to a directory in which
	    we currently already are doesn't work.  ff_check_visited() adds
	    the directory both when using it as the root for searching and for
	    the actual matches. (Stephen Rasku)
Solution:   Use a separate list for the already searched directories.
Files:	    src/misc2.c

Patch 6.1.075 (depends on 6.1.072)
Problem:    Can't compile fileio.c on MS-Windows.
Solution:   Add a declaration for the "p" pointer. (Madoka Machitani)
Files:	    src/fileio.c

Patch 6.1.076 (extra)
Problem:    Macintosh: explorer plugin doesn't work on Mac Classic.
	    IME doesn't work.  Dialog boxes don't work on Mac OS X
Solution:   Fix explorer plugin and key modifiers. (Axel Kielhorn)
	    Fix IME support. (Muraoka Taro)
	    Disable dialog boxes. (Benji Fisher)
Files:	    src/edit.c, src/feature.h, src/gui_mac.c, src/os_mac.c

Patch 6.1.077
Problem:    On a Debian system with ACL linking fails. (Lubomir Host)
Solution:   When the "acl" library is used, check if the "attr" library is
	    present and use it.
Files:	    src/auto/configure, src/configure.in, src/link.sh

Patch 6.1.078
Problem:    When using 'foldmethod' "marker" and the end marker appears before
	    the start marker in the file, no fold is found. (Nazri Ramliy)
Solution:   Don't let the fold depth go negative.
Files:	    src/fold.c

Patch 6.1.079
Problem:    When using "s" in Visual block mode with 'virtualedit' set, when
	    the selected block is after the end of some lines the wrong text
	    is inserted and some lines are skipped. (Servatius Brandt)
Solution:   Insert the right text and extend short lines.
Files:	    src/ops.c

Patch 6.1.080
Problem:    When using gcc with /usr/local already in the search path, adding
	    it again causes problems.
Solution:   Adjust configure.in to avoid adding /usr/local/include and
	    /usr/local/lib when using GCC and they are already used. (Johannes
	    Zellner)
Files:	    src/auto/configure, src/configure.in

Patch 6.1.081
Problem:    ":help CTRL-\_CTRL-N" doesn't work.  (Christian J. Robinson)
Solution:   Double the backslash to avoid the special meaning of "\_".
Files:	    src/ex_cmds.c

Patch 6.1.082
Problem:    On MS-Windows the vimrc_example.vim script is sourced and then
	    mswin.vim.  This enables using select mode, but since "p" is
	    mapped it doesn't replace the selection.
Solution:   Remove the mapping of "p" from vimrc_example.vim, it's obsolete.
	    (Vlad Sandrini)
Files:	    runtime/vimrc_example.vim

Patch 6.1.083
Problem:    When $LANG is "sk" or "sk_sk", the Slovak menu file isn't found.
	    (Martin Lacko)
Solution:   Guess the right menu file based on the system.
Files:	    runtime/lang/menu_sk_sk.vim

Patch 6.1.084 (depends on 6.1.080)
Problem:    "include" and "lib" are mixed up when checking the directories gcc
	    already searches.
Solution:   Swap the variable names. (SunHo Kim)
Files:	    src/auto/configure, src/configure.in

Patch 6.1.085
Problem:    When using CTRL-O CTRL-\ CTRL-N from Insert mode, the displayed
	    mode "(insert)" isn't removed. (Benji Fisher)
Solution:   Clear the command line.
Files:	    src/normal.c

Patch 6.1.086 (depends on 6.1.049)
Problem:    The guifg color for CursorIM doesn't take effect.
Solution:   Use the foreground color when it's defined. (Muraoka Taro)
Files:	    src/gui.c

Patch 6.1.087
Problem:    A thesaurus with Japanese characters has problems with characters
	    in different word classes.
Solution:   Only separate words with single-byte non-word characters.
	    (Muraoka Taro)
Files:	    src/edit.c

Patch 6.1.088 (extra)
Problem:    Win32: no debugging info is generated.  Tags file excludes .cpp
	    files.
Solution:   Add "/map" to compiler flags.  Add "*.cpp" to ctags command.
	    (Muraoka Taro)
Files:	    src/Make_mvc.mak

Patch 6.1.089
Problem:    On BSDI systems there is no ss_sp field in stack_t. (Robert Jan)
Solution:   Use ss_base instead.
Files:	    src/auto/configure, src/configure.in, src/config.h.in,
	    src/os_unix.c

Patch 6.1.090
Problem:    CTRL-F gets stuck when 'scrolloff' is non-zero and there is a mix
	    of long wrapping lines and a non-wrapping line.
Solution:   Check that CTRL-F scrolls at least one line.
Files:	    src/move.c

Patch 6.1.091
Problem:    GTK: Can't change preeditstate without setting 'imactivatekey'.
Solution:   Add some code to change preeditstate for OnTheSpot. (Yasuhiro
	    Matsumoto)
Files:	    src/mbyte.c

Patch 6.1.092
Problem:    ":mapclear <buffer>" doesn't work. (Srikanth Adayapalam)
Solution:   Allow an argument for ":mapclear".
Files:	    src/ex_cmds.h

Patch 6.1.093 (extra)
Problem:    Mac and MS-Windows GUI: when scrolling while ":s" is working the
	    results can be messed up, because the cursor is moved.
Solution:   Disallow direct scrolling when not waiting for a character.
Files:	    src/gui_mac.c, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c

Patch 6.1.094
Problem:    Cygwin: Passing a file name that has backslashes isn't handled
	    very well.
Solution:   Convert file name arguments to Posix.  (Chris Metcalf)
Files:	    src/main.c

Patch 6.1.095
Problem:    When using signs can free an item on the stack.
	    Overruling sign colors doesn't work. (Srikanth Sankaran)
Solution:   Don't free the item on the stack.  Use NULL instead of "none" for
	    the value of the color.
Files:	    src/gui_x11.c

Patch 6.1.096
Problem:    When erasing the right halve of a double-byte character, it may
	    cause further characters to be erased. (Yasuhiro Matsumoto)
Solution:   Make sure only one character is erased.
Files:	    src/screen.c

Patch 6.1.097 (depends on 6.1.090)
Problem:    When 'scrolloff' is set to a huge value, CTRL-F at the end of the
	    file scrolls one line. (Lubomir Host)
Solution:   Don't scroll when CTRL-F detects the end-of-file.
Files:	    src/move.c

Patch 6.1.098
Problem:    MS-Windows: When the xxd program is under "c:\program files" the
	    "Convert to Hex" menu doesn't work. (Brian Mathis)
Solution:   Put the path to xxd in double quotes.
Files:	    runtime/menu.vim

Patch 6.1.099
Problem:    Memory corrupted when closing a fold with more than 99999 lines.
Solution:   Allocate more space for the fold text. (Walter Briscoe)
Files:	    src/eval.c

Patch 6.1.100 (extra, depends on 6.1.088)
Problem:    Win32: VC5 and earlier don't support the /mapinfo option.
Solution:   Add "/mapinfo" only when "MAP=lines" is specified. (Muraoka Taro)
Files:	    src/Make_mvc.mak

Patch 6.1.101
Problem:    After using ":options" the tabstop of a new window is 15.  Entry
	    in ":options" window for 'autowriteall' is wrong. (Antoine J
	    Mechelynck)  Can't insert a space in an option value.
Solution:   Use ":setlocal" instead of ":set".  Change "aw" to "awa".
	    Don't map space in Insert mode.
Files:	    runtime/optwin.vim

Patch 6.1.102
Problem:    Unprintable and multi-byte characters in a statusline item are not
	    truncated correctly. (Yasuhiro Matsumoto)
Solution:   Count the width of characters instead of the number of bytes.
Files:	    src/buffer.c

Patch 6.1.103
Problem:    A function returning from a while loop, with 'verbose' set to 12
	    or higher, doesn't mention the return value.  A function with the
	    'abort' attribute may return -1 while the verbose message says
	    something else.
Solution:   Move the verbose message about returning from a function to
	    call_func(). (Servatius Brandt)
Files:	    src/eval.c

Patch 6.1.104
Problem:    GCC 3.1 appears to have an optimizer problem that makes test 3
	    crash.
Solution:   For GCC 3.1 add -fno-strength-reduce to avoid the optimizer bug.
	    Filter out extra info from "gcc --version".
Files:	    src/auto/configure, src/configure.in

Patch 6.1.105
Problem:    Win32: The default for 'shellpipe' doesn't redirect stderr. (Dion
	    Nicolaas)
Solution:   Redirect stderr, depending on the shell (like for 'shellredir').
Files:	    src/option.c

Patch 6.1.106
Problem:    The maze program crashes.
Solution:   Change "11" to "27" and it works. (Greg Roelofs)
Files:	    runtime/macros/maze/mazeansi.c

Patch 6.1.107
Problem:    When 'list' is set the current line in the error window may be
	    displayed wrong. (Muraoka Taro)
Solution:   Don't continue the line after the $ has been displayed and the
	    rightmost column is reached.
Files:	    src/screen.c

Patch 6.1.108
Problem:    When interrupting a filter command such as "!!sleep 20" the file
	    becomes read-only. (Mark Brader)
Solution:   Only set the read-only flag when opening a buffer is interrupted.
	    When the shell command was interrupted, read the output that was
	    produced so far.
Files:	    src/ex_cmds.c, src/fileio.c

Patch 6.1.109
Problem:    When 'eadirection' is "hor", using CTRL-W = doesn't equalize the
	    window heights. (Roman Neuhauser)
Solution:   Ignore 'eadirection' for CTRL-W =
Files:	    src/window.c

Patch 6.1.110
Problem:    When using ":badd file" when "file" is already present but not
	    listed, it stays unlisted. (David Frey)
Solution:   Set 'buflisted'.
Files:	    src/buffer.c

Patch 6.1.111
Problem:    It's not possible to detect using the Unix sources on Win32 or Mac.
Solution:   Add has("macunix") and has("win32unix").
Files:	    runtime/doc/eval.txt, src/eval.c

Patch 6.1.112
Problem:    When using ":argdo", ":bufdo" or ":windo", CTRL-O doesn't go to
	    the cursor position from before this command but every position
	    where the argument was executed.
Solution:   Only remember the cursor position from before the ":argdo",
	    ":bufdo" and ":windo".
Files:	    src/ex_cmds2.c, src/mark.c

Patch 6.1.113
Problem:    ":bufdo bwipe" only wipes out half the buffers.  (Roman Neuhauser)
Solution:   Decide what buffer to go to next before executing the command.
Files:	    src/ex_cmds2.c

Patch 6.1.114
Problem:    ":python import vim", ":python vim.current.buffer[0:0] = []" gives
	    a lalloc(0) error. (Chris Southern)
Solution:   Don't allocate an array when it's size is zero.
Files:	    src/if_python.c

Patch 6.1.115
Problem:    "das" on the white space at the end of a paragraph does not delete
	    the "." the sentence ends with.
Solution:   Don't exclude the last character when it is not white space.
Files:	    src/search.c

Patch 6.1.116
Problem:    When 'endofline' is changed while 'binary' is set a file should be
	    considered modified. (Olaf Buddenhagen)
Solution:   Remember the 'eol' value when editing started and consider the
	    file changed when the current value is different and 'binary' is
	    set.  Also fix that the window title isn't updated when 'ff' or
	    'bin' changes.
Files:	    src/option.c, src/structs.h

Patch 6.1.117
Problem:    Small problem with editing a file over ftp: and with Cygwin.
Solution:   Remove a dot from a ":normal" command.  Use "cygdrive" where
	    appropriate.  (Charles Campbell)
Files:	    runtime/plugin/netrw.vim

Patch 6.1.118
Problem:    When a file in diff mode is reloaded because it changed outside
	    of Vim, other windows in diff mode are not always updated.
	    (Michael Naumann)
Solution:   After reloading a file in diff mode mark all windows in diff mode
	    for redraw.
Files:	    src/diff.c

Patch 6.1.119 (extra)
Problem:    With the Sniff interface, using Sniff 4.0.X on HP-UX, there may be
	    a crash when connecting to Sniff.
Solution:   Initialize sniff_rq_sep such that its value can be changed.
	    (Martin Egloff)
Files:	    src/if_sniff.c

Patch 6.1.120 (depends on 6.1.097)
Problem:    When 'scrolloff' is non-zero and there are folds, CTRL-F at the
	    end of the file scrolls part of a closed fold.  (Lubomir Host)
Solution:   Adjust the first line to the start of a fold.
Files:	    src/move.c

Patch 6.1.121 (depends on 6.1.098)
Problem:    When starting Select mode from Insert mode, then using the Paste
	    menu entry, the cursor is left before the last pasted character.
	    (Mario Schweigler)
Solution:   Set the cursor for Insert mode one character to the right.
Files:	    runtime/menu.vim

Patch 6.1.122
Problem:    ":file name" creates a new buffer to hold the old buffer name,
	    which becomes the alternate file.  This buffer is unexpectedly
	    listed.
Solution:   Create the buffer for the alternate name unlisted.
Files:	    src/ex_cmds.c

Patch 6.1.123
Problem:    A ":match" command with more than one argument doesn't report an
	    error.
Solution:   Check for extra characters. (Servatius Brandt)
Files:	    src/ex_docmd.c

Patch 6.1.124
Problem:    When trying to exit and there is a hidden buffer that had 'eol'
	    off and 'bin' set exiting isn't possible. (John McGowan)
Solution:   Set b_start_eol when clearing the buffer.
Files:	    src/buffer.c

Patch 6.1.125
Problem:    Explorer plugin asks for saving a modified buffer even when it's
	    open in another window as well.
Solution:   Count the number of windows using the buffer.
Files:	    runtime/plugin/explorer.vim

Patch 6.1.126
Problem:    Adding the choices in the syntax menu is consuming much of the
	    startup time of the GUI while it's not often used.
Solution:   Only add the choices when the user wants to use them.
Files:	    Makefile, runtime/makemenu.vim, runtime/menu.vim,
	    runtime/synmenu.vim, src/Makefile

Patch 6.1.127
Problem:    When using "--remote file" and the server has 'insertmode' set,
	    commands are inserted instead of being executed. (Niklas Volbers)
Solution:   Go to Normal mode again after the ":drop" command.
Files:	    src/main.c

Patch 6.1.128
Problem:    The expression "input('very long prompt')" puts the cursor in the
	    wrong line (column is OK).
Solution:   Add the wrapped lines to the indent. (Yasuhiro Matsumoto)
Files:	    src/ex_getln.c

Patch 6.1.129
Problem:    On Solaris editing "file/" and then "file" results in using the
	    same buffer.  (Jim Battle)
Solution:   Before using stat(), check that there is no illegal trailing
	    slash.
Files:	    src/auto/configure, src/config.h.in, src/configure.in,
	    src/macros.h src/misc2.c, src/proto/misc2.pro

Patch 6.1.130
Problem:    The documentation for some of the 'errorformat' items is unclear.
Solution:   Add more examples and explain hard to understand items. (Stefan
	    Roemer)
Files:	    runtime/doc/quickfix.txt

Patch 6.1.131
Problem:    X11 GUI: when expanding a CSI byte in the input stream to K_CSI,
	    the CSI byte itself isn't copied.
Solution:   Copy the CSI byte.
Files:	    src/gui_x11.c

Patch 6.1.132
Problem:    Executing a register in Ex mode may cause commands to be skipped.
	    (John McGowan)
Solution:   In Ex mode use an extra check if the register contents was
	    consumed, to avoid input goes into the typeahead buffer.
Files:	    src/ex_docmd.c

Patch 6.1.133
Problem:    When drawing double-wide characters in the statusline, may clear
	    half of a character. (Yasuhiro Matsumoto)
Solution:   Force redraw of the next character by setting the attributes
	    instead of putting a NUL in ScreenLines[].  Do put a NUL in
	    ScreenLines[] when overwriting half of a double-wide character.
Files:	    src/screen.c

Patch 6.1.134
Problem:    An error for a trailing argument of ":match" should not be given
	    after ":if 0". (Servatius Brandt)
Solution:   Only do the check when executing commands.
Files:	    src/ex_docmd.c

Patch 6.1.135
Problem:    Passing a command to the shell that includes a newline always has
	    a backslash before the newline.
Solution:   Remove one backslash before the newline.  (Servatius Brandt)
Files:	    src/ex_docmd.c

Patch 6.1.136
Problem:    When $TERM is "linux" the default for 'background' is "dark", even
	    though the GUI uses a light background. (Hugh Allen)
Solution:   Don't mark the option as set when defaulting to "dark" for the
	    linux console.  Also reset 'background' to "light" when the GUI
	    has a light background.
Files:	    src/option.c

Patch 6.1.137
Problem:    Converting to HTML has a clumsy way of dealing with tabs which may
	    change the highlighting.
Solution:   Replace tabs with spaces after converting a line to HTML. (Preben
	    Guldberg)
Files:	    runtime/syntax/2html.vim

Patch 6.1.138 (depends on 6.1.126)
Problem:    Adding extra items to the Syntax menu can't be done when the "Show
	    individual choices" menu is used.
Solution:   Use ":runtime!" instead of ":source", so that all synmenu.vim
	    files in the runtime path are loaded. (Servatius Brandt)
	    Also fix that a translated menu can't be removed.
Files:	    runtime/menu.vim

Patch 6.1.139
Problem:    Cygwin: PATH_MAX is not defined.
Solution:   Include limits.h. (Dan Sharp)
Files:	    src/main.c

Patch 6.1.140
Problem:    Cygwin: ":args `ls *.c`" does not work if the shell command
	    produces CR NL line separators.
Solution:   Remove the CR characters ourselves. (Pavol Juhas)
Files:	    src/os_unix.c

Patch 6.1.141
Problem:    ":wincmd gx" may cause problems when mixed with other commands.
	    ":wincmd c" doesn't close the window immediately. (Benji Fisher)
Solution:   Pass the extra command character directly instead of using the
	    stuff buffer and call ex_close() directly.
Files:	    src/ex_docmd.c, src/normal.c, src/proto/normal.pro,
	    src/proto/window.pro, src/window.c

Patch 6.1.142
Problem:    Defining paragraphs without a separating blank line isn't
	    possible.  Paragraphs can't be formatted automatically.
Solution:   Allow defining paragraphs with lines that end in white space.
	    Added the 'w' and 'a' flags in 'formatoptions'.
Files:	    runtime/doc/change.txt, src/edit.c, src/misc1.c, src/normal.c,
	    src/option.h, src/ops.c, src/proto/edit.pro, src/proto/ops.pro,
	    src/vim.h

Patch 6.1.143 (depends on 6.1.142)
Problem:    Auto formatting near the end of the file moves the cursor to a
	    wrong position.  In Insert mode some lines are made one char too
	    narrow.  When deleting a line undo might not always work properly.
Solution:   Don't always move to the end of the line in the last line.  Don't
	    position the cursor past the end of the line in Insert mode.
	    After deleting a line save the cursor line for undo.
Files:	    src/edit.c, src/ops.c, src/normal.c

Patch 6.1.144
Problem:    Obtaining the size of a line in screen characters can be wrong.
	    A pointer may wrap around zero.
Solution:   In win_linetabsize() check for a MAXCOL length argument. (Jim
	    Dunleavy)
Files:	    src/charset.c

Patch 6.1.145
Problem:    GTK: Drag&drop with more than 3 files may cause a crash. (Mickael
	    Marchand)
Solution:   Rewrite the code that parses the received list of files to be more
	    robust.
Files:	    src/charset.c, src/gui_gtk_x11.c

Patch 6.1.146
Problem:    MS-Windows: When $HOME is constructed from $HOMEDRIVE and
	    $HOMEPATH, it is not used for storing the _viminfo file.  (Normal
	    Diamond)
Solution:   Set $HOME with the value obtained from $HOMEDRIVE and $HOMEPATH.
Files:	    src/misc1.c

Patch 6.1.147 (extra)
Problem:    MS-Windows: When a dialog has no default button, pressing Enter
	    ends it anyway and all buttons are selected.
Solution:   Don't end a dialog when there is no default button.  Don't select
	    all button when there is no default. (Vince Negri)
Files:	    src/gui_w32.c

Patch 6.1.148 (extra)
Problem:    MS-Windows: ACL is not properly supported.
Solution:   Add an access() replacement that also works for ACL. (Mike
	    Williams)
Files:	    runtime/doc/editing.txt, src/os_win32.c

Patch 6.1.149 (extra)
Problem:    MS-Windows: Can't use diff mode from the file explorer.
Solution:   Add a "diff with Vim" context menu entry. (Dan Sharp)
Files:	    GvimExt/gvimext.cpp, GvimExt/gvimext.h

Patch 6.1.150
Problem:    OS/2, MS-Windows and MS-DOS: When 'shellslash' is set getcwd()
	    still uses backslash. (Yegappan Lakshmanan)
Solution:   Adjust slashes in getcwd().
Files:	    src/eval.c

Patch 6.1.151 (extra)
Problem:    Win32: The NTFS substream isn't copied.
Solution:   Copy the substream when making a backup copy. (Muraoka Taro)
Files:	    src/fileio.c, src/os_win32.c, src/proto/os_win32.pro

Patch 6.1.152
Problem:    When $LANG is iso8859-1 translated menus are not used.
Solution:   Change iso8859 to iso_8859.
Files:	    runtime/menu.vim

Patch 6.1.153
Problem:    Searching in included files may search recursively when the path
	    starts with "../".  (Sven Berkvens-Matthijsse)
Solution:   Compare full file names, use inode/device when possible.
Files:	    src/search.c

Patch 6.1.154 (extra)
Problem:    DJGPP: "vim -h" leaves the cursor in a wrong position.
Solution:   Don't position the cursor using uninitialized variables. (Jim
	    Dunleavy)
Files:	    src/os_msdos.c

Patch 6.1.155
Problem:    Win32: Cursor may sometimes disappear in Insert mode.
Solution:   Change "hor10" in 'guicursor' to "hor15". (Walter Briscoe)
Files:	    src/option.c

Patch 6.1.156
Problem:    Conversion between DBCS and UCS-2 isn't implemented cleanly.
Solution:   Clean up a few things.
Files:	    src/mbyte.c, src/structs.h

Patch 6.1.157
Problem:    'hlsearch' highlights only the second comma in ",,,,," with
	    "/,\@<=[^,]*". (Preben Guldberg)
Solution:   Also check for an empty match to start just after a previous
	    match.
Files:	    src/screen.c

Patch 6.1.158
Problem:    "zs" and "ze" don't work correctly with ":set nowrap siso=1".
	    (Preben Guldberg)
Solution:   Take 'siso' into account when computing the horizontal scroll
	    position for "zs" and "ze".
Files:	    src/normal.c

Patch 6.1.159
Problem:    When expanding an abbreviation that includes a multi-byte
	    character too many characters are deleted. (Andrey Urazov)
Solution:   Delete the abbreviation counting characters instead of bytes.
Files:	    src/getchar.c

Patch 6.1.160
Problem:    ":$read file.gz" doesn't work. (Preben Guldberg)
Solution:   Don't use the '[ mark after it has become invalid.
Files:	    runtime/plugin/gzip.vim

Patch 6.1.161 (depends on 6.1.158)
Problem:    Warning for signed/unsigned compare.  Can set 'siso' to a negative
	    value. (Mike Williams)
Solution:   Add a typecast.  Add a check for 'siso' being negative.
Files:	    src/normal.c, src/option.c

Patch 6.1.162
Problem:    Python interface: Didn't initialize threads properly.
Solution:   Call PyEval_InitThreads() when starting up.
Files:	    src/if_python.c

Patch 6.1.163
Problem:    Win32: Can't compile with Python after 6.1.162.
Solution:   Dynamically load  PyEval_InitThreads(). (Dan Sharp)
Files:	    src/if_python.c

Patch 6.1.164
Problem:    If 'modifiable' is off, converting to xxd fails and 'filetype' is
	    changed to "xxd" anyway.
Solution:   Don't change 'filetype' when conversion failed.
Files:	    runtime/menu.vim

Patch 6.1.165
Problem:    Making changes in several lines and then a change in one of these
	    lines that splits it in two or more lines, undo information was
	    corrupted.  May cause a crash. (Dave Fishburn)
Solution:   When skipping to save a line for undo because it was already
	    saved, move it to become the last saved line, so that when the
	    command changes the line count other saved lines are not involved.
Files:	    src/undo.c

Patch 6.1.166
Problem:    When 'autoindent' is set and mswin.vim has been sourced, pasting
	    with CTRL-V just after auto-indenting removes the indent. (Shlomi
	    Fish)
Solution:   First insert an "x" and delete it again, so that the auto-indent
	    remains.
Files:	    runtime/mswin.vim

Patch 6.1.167
Problem:    When giving a negative argument to ":retab" strange things start
	    happening. (Hans Ginzel)
Solution:   Check for a negative value.
Files:	    src/ex_cmds.c

Patch 6.1.168
Problem:    Pressing CTRL-C at the hit-enter prompt doesn't end the prompt.
Solution:   Make CTRL-C stop the hit-enter prompt.
Files:	    src/message.c

Patch 6.1.169
Problem:    bufexists() finds a buffer by using the name of a symbolic link to
	    it, but bufnr() doesn't. (Yegappan Lakshmanan)
Solution:   When bufnr() can't find a buffer, try using the same method as
	    bufexists().
Files:	    src/eval.c

Patch 6.1.170
Problem:    Using ":mksession" uses the default session file name, but "vim
	    -S" doesn't. (Hans Ginzel)
Solution:   Use the default session file name if "-S" is the last command
	    line argument or another option follows.
Files:	    runtime/doc/starting.txt, src/main.c

Patch 6.1.171
Problem:    When opening a line just above a closed fold with "O" and the
	    comment leader is automatically inserted, the cursor is displayed
	    in the first column. (Sung-Hyun Nam)
Solution:   Update the flag that indicates the cursor is in a closed fold.
Files:	    src/misc1.c

Patch 6.1.172
Problem:    Command line completion of ":tag /pat" does not show the same
	    results as the tags the command actually finds. (Gilles Roy)
Solution:   Don't modify the pattern to make it a regexp.
Files:	    src/ex_getln.c, src/tag.c

Patch 6.1.173
Problem:    When using remote control to edit a position in a file and this
	    file is the current buffer and it's modified, the window is split
	    and the ":drop" command fails.
Solution:   Don't split the window, keep editing the same buffer.
	    Use the ":drop" command in VisVim to avoid the problem there.
Files:	    src/ex_cmds.c, src/ex_cmds2.c, src/proto/ex_cmds2.pro,
	    VisVim/Commands.cpp

Patch 6.1.174
Problem:    It is difficult to know in a script whether an option not only
	    exists but really works.
Solution:   Add "exists('+option')".
Files:	    runtime/doc/eval.txt, src/eval.c

Patch 6.1.175
Problem:    When reading commands from a pipe and a CTRL-C is pressed, Vim
	    will hang. (Piet Delport)
Solution:   Don't keep reading characters to clear typeahead when an interrupt
	    was detected, stop when a single CTRL-C is read.
Files:	    src/getchar.c, src/ui.c

Patch 6.1.176
Problem:    When the stack limit is very big a false out-of-stack error may
	    be detected.
Solution:   Add a check for overflow of the stack limit computation. (Jim
	    Dunleavy)
Files:	    src/os_unix.c

Patch 6.1.177 (depends on 6.1.141)
Problem:    ":wincmd" does not allow a following command. (Gary Johnson)
Solution:   Check for a following " | cmd".  Also give an error for trailing
	    characters.
Files:	    src/ex_docmd.c

Patch 6.1.178
Problem:    When 'expandtab' is set "r<C-V><Tab>" still expands the Tab.
	    (Bruce deVisser)
Solution:   Replace with a literal Tab.
Files:	    src/normal.c

Patch 6.1.179 (depends on 6.1.091)
Problem:    When using X11R5 XIMPreserveState is undefined. (Albert Chin)
Solution:   Include the missing definitions.
Files:	    src/mbyte.c

Patch 6.1.180
Problem:    Use of the GUI code for forking is inconsistent.
Solution:   Define MAY_FORK and use it for later #ifdefs. (Ben Fowlwer)
Files:	    src/gui.c

Patch 6.1.181
Problem:    If the terminal doesn't wrap from the last char in a line to the
	    next line, the last column is blanked out. (Peter Karp)
Solution:   Don't output a space to mark the wrap, but the same character
	    again.
Files:	    src/screen.c

Patch 6.1.182 (depends on 6.1.142)
Problem:    It is not possible to auto-format comments only. (Moshe Kaminsky)
Solution:   When the 'a' and 'c' flags are in 'formatoptions' only auto-format
	    comments.
Files:	    runtime/doc/change.txt, src/edit.c

Patch 6.1.183
Problem:    When 'fencs' is empty and 'enc' is utf-8, reading a file with
	    illegal bytes gives "CONVERSION ERROR" even though no conversion
	    is done.  'readonly' is set, even though writing the file results
	    in an unmodified file.
Solution:   For this specific error use "ILLEGAL BYTE" and don't set
	    'readonly'.
Files:	    src/fileio.c

Patch 6.1.184 (extra)
Problem:    The extra mouse buttons found on some mice don't work.
Solution:   Support two extra buttons for MS-Windows. (Michael Geddes)
Files:	    runtime/doc/term.txt, src/edit.c, src/ex_getln.c, src/gui.c,
	    src/gui_w32.c, src/gui_w48.c, src/keymap.h, src/message.c,
	    src/misc1.c, src/misc2.c, src/normal.c, src/vim.h

Patch 6.1.185 (depends on 6.1.182)
Problem:    Can't compile without +comments feature.
Solution:   Add #ifdef FEAT_COMMENTS. (Christian J. Robinson)
Files:	    src/edit.c

Patch 6.1.186 (depends on 6.1.177)
Problem:    ":wincmd" does not allow a following comment. (Aric Blumer)
Solution:   Check for a following double quote.
Files:	    src/ex_docmd.c

Patch 6.1.187
Problem:    Using ":doarg" with 'hidden' set and the current file is the only
	    argument and was modified gives an error message. (Preben
	    Guldberg)
Solution:   Don't try re-editing the same file.
Files:	    src/ex_cmds2.c

Patch 6.1.188 (depends on 6.1.173)
Problem:    Unused variable in the small version.
Solution:   Move the declaration for "p" inside #ifdef FEAT_LISTCMDS.
Files:	    src/ex_cmds2.c

Patch 6.1.189
Problem:    inputdialog() doesn't work when 'c' is in 'guioptions'. (Aric
	    Blumer)
Solution:   Fall back to the input() function in this situation.
Files:	    src/eval.c

Patch 6.1.190 (extra)
Problem:    VMS: doesn't build with GTK GUI.  Various other problems.
Solution:   Fix building for GTK.  Improved Perl, Python and TCL support.
	    Improved VMS documentation. (Zoltan Arpadffy)
	    Added Vimtutor for VMS (T. R. Wyant)
Files:	    runtime/doc/os_vms.txt, src/INSTALLvms.txt, src/gui_gtk_f.h,
	    src/if_tcl.c, src/main.c, src/gui_gtk_vms.h, src/Make_vms.mms,
	    src/os_vms.opt, src/proto/if_tcl.pro, vimtutor.com,
	    src/testdir/Make_vms.mms

Patch 6.1.191
Problem:    When using "vim -s script" and redirecting the output, the delay
	    for the "Output is not to a terminal" warning slows Vim down too
	    much.
Solution:   Don't delay when reading commands from a script.
Files:	    src/main.c

Patch 6.1.192
Problem:    ":diffsplit" doesn't add "hor" to 'scrollopt'. (Gary Johnson)
Solution:   Add "hor" to 'scrollopt' each time ":diffsplit" is used.
Files:	    src/diff.c, src/main.c

Patch 6.1.193
Problem:    Crash in in_id_list() for an item with a "containedin" list. (Dave
	    Fishburn)
Solution:   Check for a negative syntax id, used for keywords.
Files:	    src/syntax.c

Patch 6.1.194
Problem:    When "t_ti" is set but it doesn't cause swapping terminal pages,
	    "ZZ" may cause the shell prompt to appear on top of the file-write
	    message.
Solution:   Scroll the text up in the Vim page before swapping to the terminal
	    page. (Michael Schroeder)
Files:	    src/os_unix.c

Patch 6.1.195
Problem:    The quickfix and preview windows always keep their height, while
	    other windows can't fix their height.
Solution:   Add the 'winfixheight' option, so that a fixed height can be
	    specified for any window.  Also fix that the wildmenu may resize a
	    one-line window to a two-line window if 'ls' is zero.
Files:	    runtime/doc/options.txt, runtime/optwin.vim, src/ex_cmds.c,
	    src/ex_getln.c, src/globals.h, src/option.c, src/quickfix.c,
	    src/screen.c, src/structs.h, src/window.c

Patch 6.1.196  (depends on 6.1.084)
Problem:    On Mac OS X 10.2 generating osdef.h fails.
Solution:   Add -no-cpp-precomp to avoid using precompiled header files, which
	    disables printing the search path. (Ben Fowler)
Files:	    src/auto/configure, src/configure.in

Patch 6.1.197
Problem:    ":help <C-V><C-\><C-V><C-N>" (resulting in <1c><0e>) gives an
	    error message. (Servatius Brandt)
Solution:   Double the backslash in "CTRL-\".
Files:	    src/ex_cmds.c

Patch 6.1.198 (extra) (depends on 6.1.076)
Problem:    Mac OS X: Dialogues don't work.
Solution:   Fix a crashing problem for some GUI dialogues.  Fix a problem when
	    saving to a new file from the GUI. (Peter Cucka)
Files:	    src/feature.h, src/gui_mac.c

Patch 6.1.199
Problem:    'guifontwide' doesn't work on Win32.
Solution:   Output each wide character separately. (Michael Geddes)
Files:	    src/gui.c

Patch 6.1.200
Problem:    ":syn sync fromstart" is not skipped after ":if 0".  This can make
	    syntax highlighting very slow.
Solution:   Check "eap->skip" appropriately. (Rob West)
Files:	    src/syntax.c

Patch 6.1.201 (depends on 6.1.192)
Problem:    Warning for illegal pointer combination. (Zoltan Arpadffy)
Solution:   Add a typecast.
Files:	    src/diff.c

Patch 6.1.202  (extra)(depends on 6.1.148)
Problem:    Win32: filewritable() doesn't work properly on directories.
Solution:   fix filewritable(). (Mike Williams)
Files:	    src/os_win32.c

Patch 6.1.203
Problem:    ":%s/~//" causes a crash after ":%s/x//". (Gary Holloway)
Solution:   Avoid reading past the end of a line when "~" is empty.
Files:	    src/regexp.c

Patch 6.1.204 (depends on 6.1.129)
Problem:    Warning for an illegal pointer on Solaris.
Solution:   Add a typecast. (Derek Wyatt)
Files:	    src/misc2.c

Patch 6.1.205
Problem:    The gzip plugin changes the alternate file when editing a
	    compressed file. (Oliver Fuchs)
Solution:   Temporarily remove the 'a' and 'A' flags from 'cpo'.
Files:	    runtime/plugin/gzip.vim

Patch 6.1.206
Problem:    The script generated with ":mksession" doesn't work properly when
	    some commands are mapped.
Solution:   Use ":normal!" instead of ":normal".  And use ":wincmd" where
	    possible. (Muraoka Taro)
Files:	    src/ex_docmd.c, src/fold.c

Patch 6.1.207
Problem:    Indenting a Java file hangs below a line with a comment after a
	    command.
Solution:   Break out of a loop. (Andre Pang)
	    Also line up } with matching {.
Files:	    runtime/indent/java.vim

Patch 6.1.208
Problem:    Can't use the buffer number from the Python interface.
Solution:   Add buffer.number. (Michal Vitecek)
Files:	    src/if_python.c

Patch 6.1.209
Problem:    Printing doesn't work on Mac OS classic.
Solution:   Use a ":" for path separator when opening the resource file. (Axel
	    Kielhorn)
Files:	    src/ex_cmds2.c

Patch 6.1.210
Problem:    When there is an iconv() conversion error when reading a file
	    there can be an error the next time iconv() is used.
Solution:   Reset the state of the iconv() descriptor. (Yasuhiro Matsumoto)
Files:	    src/fileio.c

Patch 6.1.211
Problem:    The message "use ! to override" is confusing.
Solution:   Make it "add ! to override".
Files:	    src/buffer.c, src/eval.c, src/ex_docmd.c, src/fileio.c,
	    src/globals.h

Patch 6.1.212
Problem:    When Vim was started with "-R" ":new" creates a buffer
	    'noreadonly' while ":enew" has 'readonly' set. (Preben Guldberg)
Solution:   Don't set 'readonly in a new empty buffer for ":enew".
Files:	    src/ex_docmd.c

Patch 6.1.213
Problem:    Using CTRL-W H may cause a big gap to appear below the last
	    window. (Aric Blumer)
Solution:   Don't set the window height when there is a vertical split.
	    (Yasuhiro Matsumoto)
Files:	    src/window.c

Patch 6.1.214
Problem:    When installing Vim and the runtime files were checked out from
	    CVS the CVS directories will also be installed.
Solution:   Avoid installing the CVS dirs and their contents.
Files:	    src/Makefile

Patch 6.1.215
Problem:    Win32: ":pwd" uses backslashes even when 'shellslash' is set.
	    (Xiangjiang Ma)
Solution:   Adjust backslashes before printing the message.
Files:	    src/ex_docmd.c

Patch 6.1.216
Problem:    When dynamically loading the iconv library, the error codes may be
	    confused.
Solution:   Use specific error codes for iconv and redefine them for dynamic
	    loading. (Yasuhiro Matsumoto)
Files:	    src/fileio.c, src/mbyte.c, src/vim.h

Patch 6.1.217
Problem:    When sourcing the same Vim script using a different name (symbolic
	    link or MS-Windows 8.3 name) it is listed twice with
	    ":scriptnames".  (Tony Mechelynck)
Solution:   Turn the script name into a full path before using it.  On Unix
	    compare inode/device numbers.
Files:	    src/ex_cmds2.c

Patch 6.1.218
Problem:    No error message for using the function argument "5+".  (Servatius
	    Brandt)
Solution:   Give an error message if a function or variable is expected but is
	    not found.
Files:	    src/eval.c

Patch 6.1.219
Problem:    When using ":amenu :b 1<CR>" with a Visual selection and
	    'insertmode' is set, Vim does not return to Insert mode. (Mickael
	    Marchand)
Solution:   Add the command CTRL-\ CTRL-G that goes to Insert mode if
	    'insertmode' is set and to Normal mode otherwise.  Append this to
	    menus defined with ":amenu".
Files:	    src/edit.c, src/ex_getln.c, src/normal.c

Patch 6.1.220
Problem:    When using a BufReadPost autocommand that changes the line count,
	    e.g., "$-1join", reloading a file that was changed outside Vim
	    does not work properly. (Alan G Isaac)
Solution:   Make the buffer empty before reading the new version of the file.
	    Save the lines in a dummy buffer, so that they can be put back
	    when reading the file fails.
Files:	    src/buffer.c, src/ex_cmds.c, src/fileio.c, src/globals.h,
	    src/proto/buffer.pro

Patch 6.1.221
Problem:    Changing case may not work properly, depending on the current
	    locale.
Solution:   Add the 'casemap' option to let the user chose how changing case
	    is to be done.
	    Also fix lowering case when an UTF-8 character doesn't keep the
	    same byte length.
Files:	    runtime/doc/options.txt, src/ascii.h, src/auto/configure,
	    src/buffer.c, src/charset.c, src/config.h.in, src/configure.in,
	    src/diff.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/gui_amiga.c
	    src/gui_mac.c, src/gui_photon.c, src/gui_w48.c, src/gui_beos.cc,
	    src/macros.h, src/main.c, src/mbyte.c, src/menu.c, src/message.c,
	    src/misc1.c, src/misc2.c, src/option.c, src/os_msdos.c,
	    src/os_mswin.c, src/proto/charset.pro, src/regexp.c, src/option.h,
	    src/syntax.c

Patch 6.1.222 (depends on 6.1.219)
Problem:    Patch 6.1.219 was incomplete.
Solution:   Add the changes for ":amenu".
Files:	    src/menu.c

Patch 6.1.223 (extra)
Problem:    Win32: When IME is activated 'iminsert' is set, but it might never
	    be reset when IME is disabled. (Muraoka Taro)
	    All systems: 'iminsert' is set to 2 when leaving Insert mode, even
	    when langmap is being used. (Peter Valach)
Solution:   Don't set "b_p_iminsert" in _OnImeNotify(). (Muraoka Taro)
	    Don't store the status of the input method in 'iminsert' when
	    'iminsert' is one.  Also for editing the command line and for
	    arguments to Normal mode commands.
Files:	    src/edit.c, src/ex_getln.c, src/gui_w32.c, src/normal.c

Patch 6.1.224
Problem:    "expand('$VAR')" returns an empty string when the expanded $VAR
	    is not an existing file. (Aric Blumer)
Solution:   Included non-existing files, as documented.
Files:	    src/eval.c

Patch 6.1.225
Problem:    Using <C-O><C-^> in Insert mode has a delay when starting "vim -u
	    NONE" and ":set nocp hidden". (Emmanuel)  do_ecmd() uses
	    fileinfo(), the redraw is done after a delay to give the user time
	    to read the message.
Solution:   Put the message from fileio() in "keep_msg", so that the redraw is
	    done before the delay (still needed to avoid the mode message
	    overwrites the fileinfo() message).
Files:	    src/buffer.c

Patch 6.1.226
Problem:    Using ":debug" with a ":normal" command may cause a hang.  (Colin
	    Keith)
Solution:   Save the typeahead buffer when obtaining a debug command.
Files:	    src/ex_cmds2.c, src/getchar.c, src/proto/getchar.pro

Patch 6.1.227
Problem:    It is possible to use a variable name "asdf:asdf" and ":let j:asdf
	    = 5" does not give an error message. (Mikolaj Machowski)
Solution:   Check for a ":" inside the variable name.
Files:	    src/eval.c

Patch 6.1.228 (extra)
Problem:    Win32: The special output function for Hangul is used too often,
	    causing special handling for other situations to be skipped.
	    bInComposition is always FALSE, causing ImeGetTempComposition()
	    always to return NULL.
Solution:   Remove HanExtTextOut().  Delete the dead code around
	    bInComposition and ImeGetTempComposition().
Files:	    src/gui_w16.c, src/gui_w32.c, src/gui_w48.c

Patch 6.1.229
Problem:    Win32: Conversion to/from often used codepages requires the iconv
	    library, which is not always available.
Solution:   Use standard MS-Windows functions for the conversion when
	    possible. (mostly by Glenn Maynard)
	    Also fixes missing declaration for patch 6.1.220.
Files:	    src/fileio.c

Patch 6.1.230 (extra)
Problem:    Win16: building doesn't work.
Solution:   Exclude the XBUTTON handling. (Vince Negri)
Files:	    src/gui_w48.c

Patch 6.1.231
Problem:    Double clicking with the mouse to select a word does not work for
	    multi-byte characters.
Solution:   Use vim_iswordc() instead of vim_isIDc().  This means 'iskeyword'
	    is used instead of 'isident'.  Also fix that mixing ASCII with
	    multi-byte word characters doesn't work, the mouse class for
	    punctuation and word characters was mixed up.
Files:	    src/normal.c

Patch 6.1.232 (depends on 6.1.226)
Problem:    Using ex_normal_busy while it might not be available. (Axel
	    Kielhorn)
Solution:   Only use ex_normal_busy when FEAT_EX_EXTRA is defined.
Files:	    src/ex_cmds2.c

Patch 6.1.233
Problem:    ":help expr-||" does not work.
Solution:   Don't use the '|' as a command separator
Files:	    src/ex_cmds.c

Patch 6.1.234 (depends on 6.1.217)
Problem:    Get a warning for using a negative value for st_dev.
Solution:   Don't assign a negative value to st_dev.
Files:	    src/ex_cmds2.c

Patch 6.1.235 (depends on 6.1.223)
Problem:    'iminsert' is changed from 1 to 2 when leaving Insert mode. (Peter
	    Valach)
Solution:   Check "State" before resetting it to NORMAL.
Files:	    src/edit.c

Patch 6.1.236
Problem:    Memory leaks when appending lines for ":diffget" or ":diffput" and
	    when reloading a changed buffer.
Solution:   Free a line after calling ml_append().
Files:	    src/diff.c, src/fileio.c

Patch 6.1.237
Problem:    Putting in Visual block mode does not work correctly when "$" was
	    used or when the first line is short.  (Christian Michon)
Solution:   First delete the selected text and then put the new text.  Save
	    and restore registers as necessary.
Files:	    src/globals.h, src/normal.c, src/ops.c, src/proto/ops.pro,
	    src/vim.h

Patch 6.1.238 (extra)
Problem:    Win32: The "icon=" argument for the ":menu" command does not
	    search for the bitmap file.
Solution:   Expand environment variables and search for the bitmap file.
	    (Vince Negri)
	    Make it consistent, use the same mechanism for X11 and GTK.
Files:	    src/gui.c src/gui_gtk.c, src/gui_w32.c, src/gui_x11.c,
	    src/proto/gui.pro

Patch 6.1.239
Problem:    Giving an error for missing :endif or :endwhile when being
	    interrupted.
Solution:   Don't give these messages when interrupted.
Files:	    src/ex_docmd.c, src/os_unix.c

Patch 6.1.240 (extra)
Problem:    Win32 with BCC 5: CPU may be defined in the environment, which
	    causes a wrong argument for the compiler. (Walter Briscoe)
Solution:   Use CPUNR instead of CPU.
Files:	    src/Make_bc5.mak

Patch 6.1.241
Problem:    Something goes wrong when drawing or undrawing the cursor.
Solution:   Remember when the cursor invalid in a better way.
Files:	    src/gui.c

Patch 6.1.242
Problem:    When pasting a large number of lines on the command line it is not
	    possible to interrupt. (Jean Jordaan)
Solution:   Check for an interrupt after each pasted line.
Files:	    src/ops.c

Patch 6.1.243 (extra)
Problem:    Win32: When the OLE version is started and wasn't registered, a
	    message pops up to suggest registering, even when this isn't
	    possible (when the registry is not writable).
Solution:   Check if registering is possible before asking whether it should
	    be done. (Walter Briscoe)
	    Also avoid restarting Vim after registering.
Files:	    src/if_ole.cpp

Patch 6.1.244
Problem:    Patch 6.1.237 was missing the diff for vim.h. (Igor Goldenberg)
Solution:   Include it here.
Files:	    src/vim.h

Patch 6.1.245
Problem:    Comparing with ignored case does not work properly for Unicode
	    with a locale where case folding an ASCII character results in a
	    multi-byte character. (Glenn Maynard)
Solution:   Handle ignore-case compare for Unicode differently.
Files:	    src/mbyte.c

Patch 6.1.246
Problem:    ":blast" goes to the first buffer if the last one is unlisted.
	    (Andrew Stryker)
Solution:   From the last buffer search backwards for the first listed buffer
	    instead of forwards.
Files:	    src/ex_docmd.c

Patch 6.1.247
Problem:    ACL support doesn't always work properly.
Solution:   Add a configure argument to disable ACL "--disable-acl". (Thierry
	    Vignaud)
Files:	    src/auto/configure, src/configure.in

Patch 6.1.248
Problem:    Typing 'q' at the more-prompt for ":let" does not quit the
	    listing. (Hari Krishna Dara)
Solution:   Quit the listing when got_int is set.
Files:	    src/eval.c

Patch 6.1.249
Problem:    Can't expand a path on the command line if it includes a "|" as a
	    trail byte of a multi-byte character.
Solution:   Check for multi-byte characters. (Yasuhiro Matsumoto)
Files:	    src/ex_docmd.c

Patch 6.1.250
Problem:    When changing the value of 'lines' inside the expression set with
	    'diffexpr' Vim might crash. (Dave Fishburn)
Solution:   Don't allow changing the screen size while updating the screen.
Files:	    src/globals.h, src/option.c, src/screen.c

Patch 6.1.251
Problem:    Can't use completion for ":lcd" and ":lchdir" like ":cd".
Solution:   Expand directory names for these commands. (Servatius Brandt)
Files:	    src/ex_docmd.c

Patch 6.1.252
Problem:    "vi}" does not include a line break when the "}" is at the start
	    of a following line. (Kamil Burzynski)
Solution:   Include the line break.
Files:	    src/search.c

Patch 6.1.253 (extra)
Problem:    Win32 with Cygwin: Changes the path of arguments in a wrong way.
	    (Xiangjiang Ma)
Solution:   Don't use cygwin_conv_to_posix_path() for the Win32 version.
	    Update the Cygwin makefile to support more features.  (Dan Sharp)
Files:	    src/Make_cyg.mak, src/if_ole.cpp, src/main.c

Patch 6.1.254
Problem:    exists("foo{bar}") does not work.  ':unlet v{"a"}r' does not work.
	    ":let v{a}r1 v{a}r2" does not work. ":func F{(1)}" does not work.
	    ":delfunc F{" does not give an error message.  ':delfunc F{"F"}'
	    does not work.
Solution:   Support magic braces for the exists() argument. (Vince Negri)
	    Check for trailing comments explicitly for ":unlet".  Add support
	    for magic braces in further arguments of ":let".  Look for a
	    parenthesis only after the function name.  (Servatius Brandt)
	    Also expand magic braces for "exists('*expr')".  Give an error
	    message for an invalid ":delfunc" argument.  Allow quotes in the
	    ":delfunc" argument.
Files:	    src/eval.c, src/ex_cmds.h, src/ex_docmd.c

Patch 6.1.255 (depends on 6.1.254)
Problem:    Crash when loading menu.vim a second time. (Christian Robinson)
	    ":unlet garbage foo" tries unletting "foo" after an error message.
	    (Servatius Brandt)
	    Very long function arguments cause very long messages when
	    'verbose' is 14 or higher.
Solution:   Avoid reading from uninitialized memory.
	    Break out of a loop after an invalid argument for ":unlet".
	    Truncate long function arguments to 80 characters.
Files:	    src/eval.c

Patch 6.1.256 (depends on 6.1.255)
Problem:    Defining a function after ":if 0" could still cause an error
	    message for an existing function.
	    Leaking memory when there are trailing characters for ":delfunc".
Solution:   Check the "skip" flag.  Free the memory. (Servatius Brandt)
Files:	    src/eval.c

Patch 6.1.257
Problem:    ":cwindow" always sets the previous window to the last but one
	    window.  (Benji Fisher)
Solution:   Set the previous window properly.
Files:	    src/globals.c, src/quickfix.c, src/window.c

Patch 6.1.258
Problem:    Buffers menu doesn't work properly for multibyte buffer names.
Solution:   Use a pattern to get the left and right part of the name.
	    (Yasuhiro Matsumoto)
Files:	    runtime/menu.vim

Patch 6.1.259 (extra)
Problem:    Mac: with 'patchmode' is used filenames are truncated.
Solution:   Increase the BASENAMELEN for Mac OS X. (Ed Ralston)
Files:	    src/os_mac.h

Patch 6.1.260 (depends on 6.1.104)
Problem:    GCC 3.2 still seems to have an optimizer problem. (Zvi Har'El)
Solution:   Use the same configure check as used for GCC 3.1.
Files:	    src/auto/configure, src/configure.in

Patch 6.1.261
Problem:    When deleting a line in a buffer which is not the current buffer,
	    using the Perl interface Delete(), the cursor in the current
	    window may move. (Chris Houser)
Solution:   Don't adjust the cursor position when changing another buffer.
Files:	    src/if_perl.xs

Patch 6.1.262
Problem:    When jumping over folds with "z[", "zj" and "zk" the previous
	    position is not remembered. (Hari Krishna Dara)
Solution:   Set the previous context mark before jumping.
Files:	    src/fold.c

Patch 6.1.263
Problem:    When typing a multi-byte character that triggers an abbreviation
	    it is not inserted properly.
Solution:   Handle adding the typed multi-byte character. (Yasuhiro Matsumoto)
Files:	    src/getchar.c

Patch 6.1.264 (depends on patch 6.1.254)
Problem:    exists() does not work for built-in functions. (Steve Wall)
Solution:   Don't check for the function name to start with a capital.
Files:	    src/eval.c

Patch 6.1.265
Problem:    libcall() can be used in 'foldexpr' to call any system function.
	    rename(), delete() and remote_send() can also be used in
	    'foldexpr'.  These are security problems. (Georgi Guninski)
Solution:   Don't allow using libcall(), rename(), delete(), remote_send() and
	    similar functions in the sandbox.
Files:	    src/eval.c

Patch 6.1.266 (depends on 6.1.265)
Problem:    Win32: compile error in eval.c. (Bill McCarthy)
Solution:   Move a variable declaration.
Files:	    src/eval.c

Patch 6.1.267
Problem:    Using "p" to paste into a Visual selected area may cause a crash.
Solution:   Allocate enough memory for saving the register contents. (Muraoka
	    Taro)
Files:	    src/ops.c

Patch 6.1.268
Problem:    When triggering an abbreviation with a multi-byte character, this
	    character is not correctly inserted after expanding the
	    abbreviation. (Taro Muraoka)
Solution:   Add ABBR_OFF to all characters above 0xff.
Files:	    src/edit.c, src/ex_getln.c, src/getchar.c

Patch 6.1.269
Problem:    After using input() text written with ":redir" gets extra indent.
	    (David Fishburn)
Solution:   Restore msg_col after using input().
Files:	    src/ex_getln.c

Patch 6.1.270 (depends on 6.1.260)
Problem:    GCC 3.2.1 still seems to have an optimizer problem.
Solution:   Use the same configure check as used for GCC 3.1.
Files:	    src/auto/configure, src/configure.in

Patch 6.1.271
Problem:    When compiling without the +syntax feature there are errors.
Solution:   Don't use some code for syntax highlighting. (Roger Cornelius)
	    Make test 45 work without syntax highlighting.
	    Also fix an error in a pattern matching: "\%(" was not supported.
Files:	    src/ex_cmds2.c, src/regexp.c, src/testdir/test45.in

Patch 6.1.272
Problem:    After using ":set define<" a crash may happen. (Christian Robinson)
Solution:   Make a copy of the option value in allocated memory.
Files:	    src/option.c

Patch 6.1.273
Problem:    When the cursor doesn't blink, redrawing an exposed area may hide
	    the cursor.
Solution:   Always draw the cursor, also when it didn't move. (Muraoka Taro)
Files:	    src/gui.c

Patch 6.1.274 (depends on 6.1.210)
Problem:    Resetting the iconv() state after each error is wrong for an
	    incomplete sequence.
Solution:   Don't reset the iconv() state.
Files:	    src/fileio.c

Patch 6.1.275
Problem:    When using "v" in a startup script, get warning message that
	    terminal cannot highlight. (Charles Campbell)
Solution:   Only give the message after the terminal has been initialized.
Files:	    src/normal.c

Patch 6.1.276
Problem:    "gvim --remote file" doesn't prompt for an encryption key.
Solution:   The further characters the client sends to the server are used.
	    Added inputsave() and inputrestore() to allow prompting the
	    user directly and not using typeahead.
	    Also fix possible memory leak for ":normal".
Files:	    src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/getchar.c,
	    src/main.c, src/proto/getchar.pro, src/proto/ui.pro,
	    src/runtime/doc/eval.txt, src/structs.h, src/ui.c, src/vim.h

Patch 6.1.277 (depends on 6.1.276)
Problem:    Compilation error when building with small features.
Solution:   Define trash_input_buf() when needed. (Kelvin Lee)
Files:	    src/ui.c

Patch 6.1.278
Problem:    When using signs the line number of a closed fold doesn't line up
	    with the other line numbers. (Kamil Burzynski)
Solution:   Insert two spaces for the sign column.
Files:	    src/screen.c

Patch 6.1.279
Problem:    The prototype for smsg() and smsg_attr() do not match the function
	    definition.  This may cause trouble for some compilers. (Nix)
Solution:   Use va_list for systems that have stdarg.h.  Use "int" instead of
	    "void" for the return type.
Files:	    src/auto/configure, src/config.h.in, src/configure.in,
	    src/proto.h, src/message.c

Patch 6.1.280
Problem:    It's possible to use an argument "firstline" or "lastline" for a
	    function but using "a:firstline" or "a:lastline" in the function
	    won't work.  (Benji Fisher)
Solution:   Give an error message for these arguments.
	    Also avoid that the following function body causes a whole row of
	    errors, skip over it after an error in the first line.
Files:	    src/eval.c

Patch 6.1.281
Problem:    In Insert mode CTRL-X CTRL-G leaves the cursor after the ruler.
Solution:   Set the cursor position before waiting for the argument of CTRL-G.
	    (Yasuhiro Matsumoto)
Files:	    src/edit.c

Patch 6.1.282
Problem:    Elvis uses "se" in a modeline, Vim doesn't recognize this.
Solution:   Also accept "se " where "set " is accepted in a modeline.
	    (Yasuhiro Matsumoto)
Files:	    src/buffer.c

Patch 6.1.283
Problem:    For ":sign" the icon file name cannot contain a space.
Solution:   Handle backslashes in the file name.  (Yasuhiro Matsumoto)
Files:	    src/ex_cmds.c

Patch 6.1.284
Problem:    On Solaris there is a warning for "struct utimbuf".
Solution:   Move including "utime.h" to outside the function. (Derek Wyatt)
Files:	    src/fileio.c

Patch 6.1.285
Problem:    Can't wipe out a buffer with 'bufhide' option.
Solution:   Add "wipe" value to 'bufhide'. (Yegappan Lakshmanan)
Files:	    runtime/doc/options.txt, src/buffer.c, src/option.c,
	    src/quickfix.c

Patch 6.1.286
Problem:    'showbreak' cannot contain multi-byte characters.
Solution:   Allow using all printable characters for 'showbreak'.
Files:	    src/charset.c, src/move.c, src/option.c

Patch 6.1.287 (depends on 6.1.285)
Problem:    Effect of "delete" and "wipe" in 'bufhide' were mixed up.
Solution:   Wipe out when wiping out is asked for.
Files:	    src/buffer.c

Patch 6.1.288
Problem:    ":silent function F" hangs. (Hari Krishna Dara)
Solution:   Don't use msg_col, it is not incremented when using ":silent".
	    Also made the function output look a bit better.  Don't translate
	    "function".
Files:	    src/eval.c

Patch 6.1.289 (depends on 6.1.278)
Problem:    Compiler warning for pointer. (Axel Kielhorn)
Solution:   Add a typecast for "  ".
Files:	    src/screen.c

Patch 6.1.290 (extra)
Problem:    Truncating long text for message box may break multi-byte
	    character.
Solution:   Adjust to start of multi-byte character. (Yasuhiro Matsumoto)
Files:	    src/os_mswin.c

Patch 6.1.291 (extra)
Problem:    Win32: CTRL-@ doesn't work.  Don't even get a message for it.
Solution:   Recognize the keycode for CTRL-@. (Yasuhiro Matsumoto)
Files:	    src/gui_w48.c

Patch 6.1.292 (extra, depends on 6.1.253)
Problem:    Win32: Can't compile with new MingW compiler.
	    Borland 5 makefile doesn't generate pathdef.c.
Solution:   Remove -wwide-multiply argument. (Rene de Zwart)
	    Various fixes for other problems in Win32 makefiles. (Dan Sharp)
Files:	    src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak,
	    src/Make_mvc.mak

Patch 6.1.293
Problem:    byte2line() returns a wrong result for some values.
Solution:   Change ">=" to ">" in ml_find_line_or_offset(). (Bradford C Smith)
	    Add one to the line number when at the end of a block.
Files:	    src/memline.c

Patch 6.1.294
Problem:    Can't include a multi-byte character in a string by its hex value.
	    (Benji Fisher)
Solution:   Add "\u....": a character specified with up to four hex numbers
	    and stored according to the value of 'encoding'.
Files:	    src/eval.c

Patch 6.1.295 (extra)
Problem:    Processing the cs.po file generates an error. (Rahul Agrawal)
Solution:   Fix the printf format characters in the translation.
Files:	    src/po/cs.po

Patch 6.1.296
Problem:    Win32: When cancelling the font dialog 'guifont' remains set to
	    "*".
Solution:   Restore the old value of 'guifont' (Yasuhiro Matsumoto)
Files:	    src/option.c

Patch 6.1.297
Problem:    "make test" fails in test6 in an UTF-8 environment. (Benji Fisher)
Solution:   Before executing the BufReadPost autocommands save the current
	    fileencoding, so that the file isn't marked changed.
Files:	    src/fileio.c

Patch 6.1.298
Problem:    When using signs and the first line of a closed fold has a sign
	    it can be redrawn as if the fold was open.  (Kamil Burzynski)
Solution:   Don't redraw a sign inside a closed fold.
Files:	    src/screen.c

Patch 6.1.299
Problem:    ":edit +set\ ro file" doesn't work.
Solution:   Halve the number of backslashes in the "+cmd" argument.
Files:	    src/ex_docmd.c

Patch 6.1.300 (extra)
Problem:    Handling of ETO_IGNORELANGUAGE is confusing.
Solution:   Clean up the handling of ETO_IGNORELANGUAGE. (Glenn Maynard)
Files:	    src/gui_w32.c

Patch 6.1.301 (extra)
Problem:    French translation of file-save dialog doesn't show file name.
Solution:   Insert a star in the printf string. (Francois Terrot)
Files:	    src/po/fr.po

Patch 6.1.302
Problem:    Counting lines of the Visual area is incorrect for closed folds.
	    (Mikolaj Machowski)
Solution:   Correct the start and end for the closed fold.
Files:	    src/normal.c

Patch 6.1.303 (extra)
Problem:    The Top/Bottom/All text does not always fit in the ruler when
	    translated to Japanese.  Problem with a character being wider when
	    in a bold font.
Solution:   Use ETO_PDY to specify the width of each character. (Yasuhiro
	    Matsumoto)
Files:	    src/gui_w32.c

Patch 6.1.304 (extra, depends on 6.1.292)
Problem:    Win32: Postscript is always enabled in the MingW Makefile.
	    Pathdef.c isn't generated properly with Make_bc5.mak. (Yasuhiro
	    Matsumoto)
Solution:   Change an ifdef to an ifeq. (Madoka Machitani)
	    Use the Borland make redirection to generate pathdef.c. (Maurice
	    Barnum)
Files:	    src/Make_bc5.mak, src/Make_ming.mak

Patch 6.1.305
Problem:    When 'verbose' is 14 or higher, a function call may cause reading
	    uninitialized data. (Walter Briscoe)
Solution:   Check for end-of-string in trunc_string().
Files:	    src/message.c

Patch 6.1.306
Problem:    The AIX VisualAge cc compiler doesn't define __STDC__.
Solution:   Use __EXTENDED__ like __STDC__. (Jess Thrysoee)
Files:	    src/os_unix.h

Patch 6.1.307
Problem:    When a double-byte character has an illegal tail byte the display
	    is messed up. (Yasuhiro Matsumoto)
Solution:   Draw "XX" instead of the wrong character.
Files:	    src/screen.c

Patch 6.1.308
Problem:    Can't reset the Visual mode returned by visualmode().
Solution:   Use an optional argument to visualmode(). (Charles Campbell)
Files:	    runtime/doc/eval.txt, src/eval.c, src/normal.c,
	    src/structs.h

Patch 6.1.309
Problem:    The tutor doesn't select German if the locale name is
	    "German_Germany.1252". (Joachim Hofmann)
Solution:   Check for "German" in the locale name.  Also check for
	    ".ge".  And include the German and Greek tutors.
Files:	    runtime/tutor/tutor.de, runtime/tutor/tutor.vim,
	    runtime/tutor/tutor.gr, runtime/tutor/tutor.gr.cp737

Patch 6.1.310 (depends on 6.1.307)
Problem:    All double-byte characters are displayed as "XX".
Solution:   Use ">= 32" instead of "< 32".  (Yasuhiro Matsumoto)
Files:	    src/screen.c

Patch 6.1.311 (extra)
Problem:    VMS: path in window title doesn't include necessary separator.
	    file version doesn't always work properly with Unix.
	    Crashes because of memory overwrite in GUI.
	    Didn't always handle files with lowercase and correct path.
Solution:   Fix the problems.  Remove unnecessary file name translations.
	    (Zoltan Arpadffy)
Files:	    src/buffer.c, src/ex_cmds2.c, src/fileio.c, src/memline.c,
	    src/misc1.c, src/misc2.c, src/os_unix.c, src/os_vms.c, src/tag.c

Patch 6.1.312
Problem:    When using ":silent" debugging is also done silently.
Solution:   Disable silence while at the debug prompt.
Files:	    src/ex_cmds2.c

Patch 6.1.313
Problem:    When a ":drop fname" command is used and "fname" is open in
	    another window, it is also opened in the current window.
Solution:   Change to the window with "fname" instead.
	    Don't redefine the argument list when dropping only one file.
Files:	    runtime/doc/windows.txt, src/ex_cmds2.c, src/ex_cmds.c,
	    src/ex_docmd.c, src/proto/ex_cmds2.pro, src/proto/ex_docmd.pro

Patch 6.1.314 (depends on 6.1.126)
Problem:    Missing backslash in "Generic Config file" syntax menu.
Solution:   Insert the backslash. (Zak Beck)
Files:	    runtime/makemenu.vim, runtime/synmenu.vim

Patch 6.1.315 (extra)
Problem:    A very long hostname may lead to an unterminated string.  Failing
	    to obtain a hostname may result in garbage.  (Walter Briscoe)
Solution:   Add a NUL at the end of the hostname buffer.
Files:	    src/os_mac.c, src/os_msdos.c, src/os_unix.c, src/os_win16.c,
	    src/os_win32.c

Patch 6.1.316
Problem:    When exiting with "wq" and there is a hidden buffer, after the
	    "file changed" dialog there is a warning for a changed buffer.
	    (Ajit Thakkar)
Solution:   Do update the buffer timestamps when exiting.
Files:	    src/fileio.c

Patch 6.1.317
Problem:    Closing a window may cause some of the remaining windows to be
	    positioned wrong if there is a mix of horizontal and vertical
	    splits. (Stefan Ingi Valdimarsson)
Solution:   Update the frame sizes before updating the window positions.
Files:	    src/window.c

Patch 6.1.318
Problem:    auto/pathdef.c can include wrong quotes when a compiler flag
	    includes quotes.
Solution:   Put a backslash before the quotes in compiler flags. (Shinra Aida)
Files:	    src/Makefile

Patch 6.1.319 (depends on 6.1.276)
Problem:    Using "--remote +cmd file" does not execute "cmd".
Solution:   Call inputrestore() in the same command line as inputsave(),
	    otherwise it will never get executed.
Files:	    src/main.c

Patch 6.1.320 (depends on 6.1.313)
Problem:    When a ":drop one\ file" command is used the file "one\ file" is
	    opened, the backslash is not removed. (Taro Muraoka)
Solution:   Handle backslashes correctly.  Always set the argument list to
	    keep it simple.
Files:	    runtime/doc/windows.txt, src/ex_cmds.c

Patch 6.1.321
Problem:    When 'mouse' includes 'n' but not 'v', don't allow starting Visual
	    mode with the mouse.
Solution:   Don't use MOUSE_MAY_VIS when there is no 'v' in 'mouse'. (Flemming
	    Madsen)
Files:	    src/normal.c

Patch 6.1.322 (extra, depends on 6.1.315)
Problem:    Win32: The host name is always "PC " plus the real host name.
Solution:   Don't insert "PC " before the host name.
Files:	    src/os_win32.c

Patch 6.1.323
Problem:    ":registers" doesn't stop listing for a "q" at the more prompt.
	    (Hari Krishna Dara)
Solution:   Check for interrupt and got_int.
Files:	    src/ops.c, src/proto/ops.pro

Patch 6.1.324
Problem:    Crash when dragging a vertical separator when <LeftMouse> is
	    remapped to jump to another window.
Solution:   Pass the window pointer to the function doing the dragging instead
	    of always using the current window. (Daniel Elstner)
	    Also fix that starting a drag changes window focus.
Files:	    src/normal.c, src/proto/window.pro, src/ui.c, src/vim.h,
	    src/window.c

Patch 6.1.325
Problem:    Shift-Tab is not automatically recognized in an xterm.
Solution:   Add <Esc>[Z as the termcap code. (Andrew Pimlott)
Files:	    src/term.c

Patch 6.1.326
Problem:    Using a search pattern may read from uninitialized data (Yasuhiro
	    Matsumoto)
Solution:   Initialize pointers to NULL.
Files:	    src/regexp.c

Patch 6.1.327
Problem:    When opening the "mbyte.txt" help file the utf-8 characters are
	    unreadable, because the fileencoding is forced to be latin1.
Solution:   Check for utf-8 encoding first in help files. (Daniel Elstner)
Files:	    runtime/doc/mbyte.txt, src/fileio.c

Patch 6.1.328
Problem:    Prototype for enc_canon_search() is missing.
Solution:   Add the prototype. (Walter Briscoe)
Files:	    src/mbyte.c

Patch 6.1.329
Problem:    When editing a file "a b c" replacing "%" in ":Cmd %" or ":next %"
	    does not work properly.  (Hari Krishna Dara)
Solution:   Always escape spaces when expanding "%".  Don't split argument for
	    <f-args> in a user command when only one argument is used.
Files:	    src/ex_docmd.c

Patch 6.1.330
Problem:    GTK, Motif and Athena: Keypad keys produce the same code as
	    non-keypad keys, making it impossible to map them separately.
Solution:   Use different termcap codes for the keypad keys. (Neil Bird)
Files:	    src/gui_gtk_x11.c, src/gui_x11.c

Patch 6.1.331
Problem:    When translating the help files, "LOCAL ADDITIONS" no longer marks
	    the spot where help files from plugins are to be listed.
Solution:   Add a "local-additions" tag and use that to find the right spot.
Files:	    runtime/doc/help.txt, src/ex_cmds.c

Patch 6.1.332 (extra)
Problem:    Win32: Loading Perl dynamically doesn't work with Perl 5.8.
	    Perl 5.8 also does not work with Cygwin and Ming.
Solution:   Adjust the function calls. (Taro Muraoka)
	    Adjust the cyg and ming makefiles. (Dan Sharp)
Files:	    src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
	    src/if_perl.xs

Patch 6.1.333 (extra)
Problem:    Win32: Can't handle Unicode text on the clipboard.
	    Can't pass NUL byte, it becomes a line break.  (Bruce DeVisser)
Solution:   Support Unicode for the clipboard (Ron Aaron and Glenn Maynard)
	    Also support copy/paste of NUL bytes.
Files:	    src/os_mswin.c, src/os_win16.c src/os_win32.c

Patch 6.1.334 (extra, depends on 6.1.303)
Problem:    Problem with drawing Hebrew characters.
Solution:   Only use ETO_PDY for Windows NT and the like. (Yasuhiro Matsumoto)
Files:	    src/gui_w32.c

Patch 6.1.335 (extra)
Problem:    Failure of obtaining the cursor position and window size is
	    ignored.
Solution:   Remove a semicolon after an "if". (Walter Briscoe)
Files:	    src/gui_w32.c

Patch 6.1.336 (extra)
Problem:    Warning for use of function prototypes of smsg().
Solution:   Define HAVE_STDARG_H. (Walter Briscoe)
Files:	    src/os_win32.h

Patch 6.1.337
Problem:    When using "finish" in debug mode in function B() for ":call
	    A(B())" does not stop after B() is finished.
Solution:   Increase debug_level while evaluating a function.
Files:	    src/ex_docmd.c

Patch 6.1.338
Problem:    When using a menu that checks out the current file from Insert
	    mode, there is no warning for the changed file until exiting
	    Insert mode.  (Srikanth Sankaran)
Solution:   Add a check for need_check_timestamps in the Insert mode loop.
Files:	    src/edit.c

Patch 6.1.339
Problem:    Completion doesn't allow "g:" in ":let g:did_<Tab>". (Benji
	    Fisher)
Solution:   Return "g:var" for global variables when that is what is being
	    expanded. (Flemming Madsen)
Files:	    src/eval.c

Patch 6.1.340 (extra, depends on 6.1.332)
Problem:    Win32: Can't compile the Perl interface with nmake.
Solution:   Don't compare the version number as a string but as a number.
	    (Juergen Kraemer)
Files:	    src/Make_mvc.mak

Patch 6.1.341
Problem:    In Insert mode with 'rightleft' set the cursor is drawn halfway a
	    double-wide character.  For CTRL-R and CTRL-K in Insert mode the "
	    or ? is not displayed.
Solution:   Draw the cursor in the next character cell.  Display the " or ?
	    over the right half of the double-wide character. (Yasuhiro
	    Matsumoto)  Also fix that cancelling a digraph doesn't redraw
	    a double-byte character correctly.
Files:	    src/edit.c, src/gui.c, src/mbyte.c

Patch 6.1.342 (depends on 6.1.341)
Problem:    With 'rightleft' set typing "c" on a double-wide character causes
	    the cursor to be displayed one cell to the left.
Solution:   Draw the cursor in the next character cell.  (Yasuhiro Matsumoto)
Files:	    src/gui.c

Patch 6.1.343 (depends on 6.1.342)
Problem:    Cannot compile with the +multi_byte feature but without +rightleft.
	    Cannot compile without the GUI.
Solution:   Fix the #ifdefs.  (partly by Nam SungHyun)
Files:	    src/gui.c, src/mbyte.c, src/ui.c

Patch 6.1.344
Problem:    When using ":silent filetype" the output is still put in the
	    message history. (Hari Krishna Dara)
Solution:   Don't add messages in the history when ":silent" is used.
Files:	    src/message.c

Patch 6.1.345 (extra)
Problem:    Win32: 'imdisable' doesn't work.
Solution:   Make 'imdisable' work. (Yasuhiro Matsumoto)
Files:	    src/gui_w32.c

Patch 6.1.346
Problem:    The scroll wheel can only scroll the current window.
Solution:   Make the scroll wheel scroll the window that the mouse points to.
	    (Daniel Elstner)
Files:	    src/edit.c, src/gui.c, src/normal.c, src/term.c

Patch 6.1.347
Problem:    When using cscope to list matching tags, the listed number is
	    sometimes not equal to what cscope uses. (Vihren Milev)
Solution:   For cscope tags use only one table, don't give tags in the current
	    file a higher priority.
Files:	    src/tag.c

Patch 6.1.348
Problem:    Wildmode with wildmenu: ":set wildmode=list,full", ":colorscheme
	    <tab>" results in "zellner" instead of the first entry. (Anand
	    Hariharan)
Solution:   Don't call ExpandOne() from globpath(). (Flemming Madsen)
Files:	    src/ex_getln.c

Patch 6.1.349
Problem:    "vim --serverlist" when no server was ever started gives an error
	    message without "\n".
	    "vim --serverlist" doesn't exit when the X server can't be
	    contacted, it starts Vim unexpectedly. (Ricardo Signes)
Solution:   Don't give an error when no Vim server was ever started.
	    Treat failing of opening the display equal to errors inside the
	    remote*() functions. (Flemming Madsen)
Files:	    src/if_xcmdsrv.c, src/main.c

Patch 6.1.350
Problem:    When entering a buffer with ":bnext" for the first time, using an
	    autocommand to restore the last used cursor position doesn't work.
	    (Paolo Giarusso)
Solution:   Don't use the last known cursor position of the current Vim
	    invocation if an autocommand changed the position.
Files:	    src/buffer.c

Patch 6.1.351 (depends on 6.1.349)
Problem:    Crash when starting Vim the first time in an X server. (John
	    McGowan)
Solution:   Don't call xFree() with a fixed string.
Files:	    src/if_xcmdsrv.c

Patch 6.1.352 (extra, depends on 6.1.345)
Problem:    Win32: Crash when setting "imdisable" in _vimrc.
Solution:   Don't call IME functions when imm32.dll was not loaded (yet).
	    Also add typecasts to avoid Compiler warnings for
	    ImmAssociateContext() argument.
Files:	    src/gui_w32.c

Patch 6.1.353 (extra, depends on 6.1.334)
Problem:    Problem with drawing Arabic characters.
Solution:   Don't use ETO_PDY, do use padding.
Files:	    src/gui_w32.c

Patch 6.1.354 (extra, depends on 6.1.333)
Problem:    MS-Windows 98: Notepad can't paste text copied from Vim when
	    'encoding' is "utf-8".
Solution:   Also make CF_TEXT available on the clipboard. (Ron Aaron)
Files:	    src/os_mswin.c

Patch 6.1.355
Problem:    In a regexp '\n' will never match anything in a string.
Solution:   Make '\n' match a newline character.
Files:	    src/buffer.c, src/edit.c, src/eval.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/misc1.c,
	    src/option.c, src/os_mac.c, src/os_unix.c, src/quickfix.c,
	    src/regexp.c, src/search.c, src/syntax.c, src/tag.c, src/vim.h

Patch 6.1.356 (extra, depends on, well, eh, several others)
Problem:    Compiler warnings for using convert_setup() and a few other
	    things.
Solution:   Add typecasts.
Files:	    src/mbyte.c, src/os_mswin.c, src/proto/os_win32.pro, src/os_win32.c

Patch 6.1.357
Problem:    CR in the quickfix window jumps to the error under the cursor, but
	    this doesn't work in Insert mode. (Srikanth Sankaran)
Solution:   Handle CR in Insert mode in the quickfix window.
Files:	    src/edit.c

Patch 6.1.358
Problem:    The tutor doesn't select another locale version properly.
Solution:   Insert the "let" command. (Yasuhiro Matsumoto)
Files:	    runtime/tutor/tutor.vim

Patch 6.1.359 (extra)
Problem:    Mac Carbon: Vim doesn't get focus when started from the command
	    line.  Crash when using horizontal scroll bar.
Solution:   Set Vim as the frontprocess.  Fix scrolling.  (Peter Cucka)
Files:	    src/gui_mac.c

Patch 6.1.360 (depends on 6.1.341)
Problem:    In Insert mode CTRL-K ESC messes up a multi-byte character.
	    (Anders Helmersson)
Solution:   Save all bytes of a character when displaying a character
	    temporarily.
Files:	    src/edit.c, src/proto/screen.pro, src/screen.c

Patch 6.1.361
Problem:    Cannot jump to a file mark with ":'M".
Solution:   Allow jumping to another file for a mark in an Ex address when it
	    is the only thing in the command line.
Files:	    src/ex_docmd.c

Patch 6.1.362
Problem:    tgetent() may return zero for success. tgetflag() may return -1
	    for an error.
Solution:   Check tgetflag() for returning a positive value.  Add an autoconf
	    check for the value that tgetent() returns.
Files:	    src/auto/configure, src/config.h.in, src/configure.in, src/term.c

Patch 6.1.363
Problem:    byte2line() can return one more than the number of lines.
Solution:   Return -1 if the offset is one byte past the end.
Files:	    src/memline.c

Patch 6.1.364
Problem:    That the FileChangedShell autocommand event never nests makes it
	    difficult to reload a file in a normal way.
Solution:   Allow nesting for the FileChangedShell event but do not allow
	    triggering itself again.
	    Also avoid autocommands for the cmdline window in rare cases.
Files:	    src/ex_getln.c, src/fileio.c, src/window.c

Patch 6.1.365 (depends on 6.1.217)
Problem:    Setting a breakpoint in a sourced file with a relative path name
	    doesn't work. (Servatius Brandt)
Solution:   Expand the file name to a full path.
Files:	    src/ex_cmds2.c

Patch 6.1.366
Problem:    Can't use Vim with Netbeans.
Solution:   Add the Netbeans interface.  Includes support for sign icons and
	    "-fg" and "-bg" arguments for GTK.  Add the 'autochdir'
	    option.  (Gordon Prieur, George Hernandez, Dave Weatherford)
	    Make it possible to display both a sign with a text and one with
	    line highlighting in the same line.
	    Add support for Agide, interface version 2.1.
	    Also fix that when 'iskeyword' includes '?' the "*" command
	    doesn't work properly on a word that includes "?" (Bill McCarthy):
	    Don't escape "?" to "\?" when searching forward.
Files:	    runtime/doc/Makefile, runtime/doc/netbeans.txt,
	    runtime/doc/options.txt, runtime/doc/various.txt,
	    src/Makefile, src/auto/configure, src/buffer.c, src/config.h.in,
	    src/config.mk.in, src/configure.in, src/edit.c, src/ex_cmds.c,
	    src/ex_docmd.c, src/feature.h, src/fileio.c, src/globals.h,
	    src/gui.c, src/gui_beval.c, src/gui_gtk_x11.c, src/gui_x11.c,
	    src/main.c, src/memline.c, src/misc1.c, src/misc2.c, src/move.c,
	    src/nbdebug.c, src/nbdebug.h, src/netbeans.c, src/normal.c,
	    src/ops.c, src/option.c, src/option.h, src/proto/buffer.pro,
	    src/proto/gui_beval.pro, src/proto/gui_gtk_x11.pro,
	    src/proto/gui_x11.pro, src/proto/misc2.pro,
	    src/proto/netbeans.pro, src/proto/normal.pro, src/proto/ui.pro,
	    src/proto.h, src/screen.c, src/structs.h, src/ui.c, src/undo.c,
	    src/vim.h, src/window.c, src/workshop.c

Patch 6.1.367 (depends on 6.1.365)
Problem:    Setting a breakpoint in a function doesn't work.  For a sourced
	    file it doesn't work when symbolic links are involved.  (Servatius
	    Brandt)
Solution:   Expand the file name in the same way as do_source() does.  Don't
	    prepend the path to a function name.
Files:	    src/ex_cmds2.c

Patch 6.1.368
Problem:    Completion for ":map" does not include <silent> and <script>.
	    ":mkexrc" do not save the <silent> attribute of mappings.
Solution:   Add "<silent>" to the generated map commands when appropriate.
	    (David Elstner)
	    Add <silent> and <script> to command line completion.
Files:	    src/getchar.c

Patch 6.1.369 (extra)
Problem:    VMS: Vim hangs when attempting to edit a read-only file in the
	    terminal.  Problem with VMS filenames for quickfix.
Solution:   Rewrite low level input.  Remove version number from file name in
	    a couple more places.  Fix crash after patch 6.1.362.  Correct
	    return code for system().  (Zoltan Arpadffy, Tomas Stehlik)
Files:	    src/misc1.c, src/os_unix.c, src/os_vms.c, src/proto/os_vms.pro,
	    src/os_vms_conf.h, src/quickfix.c, src/ui.c

Patch 6.1.370
Problem:    #ifdef nesting is unclear.
Solution:   Insert spaces to indicate the nesting.
Files:	    src/os_unix.c

Patch 6.1.371
Problem:    "%V" in 'statusline' doesn't show "0-1" in an empty line.
Solution:   Add one to the column when comparing with virtual column (Andrew
	    Pimlott)
Files:	    src/buffer.c

Patch 6.1.372
Problem:    With 16 bit ints there are compiler warnings. (Walter Briscoe)
Solution:   Change int into long.
Files:	    src/structs.h, src/syntax.c

Patch 6.1.373
Problem:    The default page header for printing is not translated.
Solution:   Add _() around the two places where "Page" is used. (Mike
	    Williams)  Translate the default value of the 'titleold' and
	    'printheader' options.
Files:	    src/ex_cmds2.c, src/option.c

Patch 6.1.374 (extra)
Problem:    MS-Windows: Cannot build GvimExt with MingW or Cygwin.
Solution:   Add makefile and modified resource files. (Rene de Zwart)
	    Also support Cygwin. (Alejandro Lopez_Valencia)
Files:	    GvimExt/Make_cyg.mak, GvimExt/Make_ming.mak, GvimExt/Makefile,
	    GvimExt/gvimext_ming.def, GvimExt/gvimext_ming.rc

Patch 6.1.375
Problem:    MS-Windows: ':!dir "%"' does not work for a file name with spaces.
	    (Xiangjiang Ma)
Solution:   Don't insert backslashes for spaces in a shell command.
Files:	    src/ex_docmd.c

Patch 6.1.376
Problem:    "vim --version" and "vim --help" have a non-zero exit code.
	    That is unusual. (Petesea)
Solution:   Use a zero exit code.
Files:	    src/main.c

Patch 6.1.377
Problem:    Can't add words to 'lispwords' option.
Solution:   Add P_COMMA and P_NODUP flags. (Haakon Riiser)
Files:	    src/option.c

Patch 6.1.378
Problem:    When two buffer-local user commands are ambiguous, a full match
	    with a global user command isn't found. (Hari Krishna Dara)
Solution:   Detect this situation and accept the global command.
Files:	    src/ex_docmd.c

Patch 6.1.379
Problem:    Linux with kernel 2.2 can't use the alternate stack in combination
	    with threading, causes an infinite loop.
Solution:   Don't use the alternate stack in this situation.
Files:	    src/os_unix.c

Patch 6.1.380
Problem:    When 'winminheight' is zero and the quickfix window is zero lines,
	    entering the window doesn't make it higher. (Christian J.
	    Robinson)
Solution:   Make sure the current window is at least one line high.
Files:	    src/window.c

Patch 6.1.381
Problem:    When a BufWriteCmd is used and it leaves the buffer modified, the
	    window may still be closed. (Hari Krishna Dara)
Solution:   Return FAIL from buf_write() when the buffer is still modified
	    after a BufWriteCmd autocommand was used.
Files:	    src/fileio.c

Patch 6.1.382 (extra)
Problem:    Win32 GUI: When using two monitors, the code that checks/fixes the
	    window size and position (e.g. when a font changes) doesn't work
	    properly.  (George Reilly)
Solution:   Handle a double monitor situation. (Helmut Stiegler)
Files:	    src/gui_w32.c

Patch 6.1.383
Problem:    The filling of the status line doesn't work properly for
	    multi-byte characters. (Nam SungHyun)
	    There is no check for going past the end of the buffer.
Solution:   Properly distinguish characters and bytes.  Properly check for
	    running out of buffer space.
Files:	    src/buffer.c, src/ex_cmds2.c, src/proto/buffer.pro, src/screen.c

Patch 6.1.384
Problem:    It is not possible to find if a certain patch has been included.
	    (Lubomir Host)
Solution:   Support using has() to check if a patch was included.
Files:	    runtime/doc/eval.txt, src/eval.c, src/proto/version.pro,
	    src/version.c

Patch 6.1.385 (depends on 6.1.383)
Problem:    Can't compile without the multi-byte feature.
Solution:   Move an #ifdef.  (Christian J. Robinson)
Files:	    src/buffer.c

Patch 6.1.386
Problem:    Get duplicate tags when running ":helptags".
Solution:   Do the other halve of moving a section to another help file.
Files:	    runtime/tagsrch.txt

Patch 6.1.387 (depends on 6.1.373)
Problem:    Compiler warning for pointer cast.
Solution:   Add (char_u *).
Files:	    src/option.c

Patch 6.1.388 (depends on 6.1.384)
Problem:    Compiler warning for pointer cast.
Solution:   Add (char *).  Only include has_patch() when used.
Files:	    src/eval.c, src/version.c

Patch 6.1.389 (depends on 6.1.366)
Problem:    Balloon evaluation doesn't work for GTK.
	    has("balloon_eval") doesn't work.
Solution:   Add balloon evaluation for GTK.  Also improve displaying of signs.
	    (Daniel Elstner)
	    Also make ":gui" start the netbeans connection and avoid using
	    netbeans functions when the connection is not open.
Files:	    src/Makefile, src/feature.h, src/gui.c, src/gui.h,
	    src/gui_beval.c, src/gui_beval.h, src/gui_gtk.c,
	    src/gui_gtk_x11.c, src/eval.c, src/memline.c, src/menu.c,
	    src/netbeans.c, src/proto/gui_beval.pro, src/proto/gui_gtk.pro,
	    src/structs.h, src/syntax.c, src/ui.c, src/workshop.c

Patch 6.1.390 (depends on 6.1.389)
Problem:    It's not possible to tell Vim to save and exit through the
	    Netbeans interface.  Would still try to send balloon eval text
	    after the connection is closed.
	    Can't use Unicode characters for sign text.
Solution:   Add functions "saveAndExit" and "getModified".  Check for a
	    working connection before sending a balloonText event.
	    various other cleanups.
	    Support any character for sign text. (Daniel Elstner)
Files:	    runtime/doc/netbeans.txt, runtime/doc/sign.txt, src/ex_cmds.c,
	    src/netbeans.c, src/screen.c

Patch 6.1.391
Problem:    ml_get() error when using virtualedit. (Charles Campbell)
Solution:   Get a line from a specific window, not the current one.
Files:	    src/charset.c

Patch 6.1.392 (depends on 6.1.383)
Problem:    Highlighting in the 'statusline' is in the wrong position when an
	    item is truncated. (Zak Beck)
Solution:   Correct the start of 'statusline' items properly for a truncated
	    item.
Files:	    src/buffer.c

Patch 6.1.393
Problem:    When compiled with Python and threads, detaching the terminal may
	    cause Vim to loop forever.
Solution:   Add -pthread to $CFLAGS when using Python and gcc. (Daniel
	    Elstner)
Files:	    src/auto/configure,, src/configure.in

Patch 6.1.394 (depends on 6.1.390)
Problem:    The netbeans interface doesn't recognize multibyte glyph names.
Solution:   Check the number of cells rather than bytes to decide
	    whether a glyph name is not a filename. (Daniel Elstner)
Files:	    src/netbeans.c

Patch 6.1.395 (extra, depends on 6.1.369)
Problem:    VMS: OLD_VMS is never defined.  Missing function prototype.
Solution:   Define OLD_VMS in Make_vms.mms.  Add vms_sys_status() to
	    os_vms.pro. (Zoltan Arpadffy)
Files:	    src/Make_vms.mms, src/proto/os_vms.pro

Patch 6.1.396 (depends on 6.1.330)
Problem:    Compiler warnings for using enum.
Solution:   Add typecast to char_u.
Files:	    src/gui_gtk_x11.c, src/gui_x11.c

Patch 6.1.397 (extra)
Problem:    The install program may use a wrong path for the diff command if
	    there is a space in the install directory path.
Solution:   Use double quotes around the path if necessary. (Alejandro
	    Lopez-Valencia)  Also use double quotes around the file name
	    arguments.
Files:	    src/dosinst.c

Patch 6.1.398
Problem:    Saving the typeahead for debug mode causes trouble for a test
	    script. (Servatius Brandt)
Solution:   Add the ":debuggreedy" command to avoid saving the typeahead.
Files:	    runtime/doc/repeat.txt, src/ex_cmds.h, src/ex_cmds2.c,
	    src/ex_docmd.c, src/proto/ex_cmds2.pro

Patch 6.1.399
Problem:    Warning for unused variable.
Solution:   Remove the variable two_or_more.
Files:	    src/ex_cmds.c

Patch 6.1.400 (depends on 6.1.381)
Problem:    When a BufWriteCmd wipes out the buffer it may still be accessed.
Solution:   Don't try accessing a buffer that has been wiped out.
Files:	    src/fileio.c

Patch 6.1.401 (extra)
Problem:    Building the Win16 version with Borland 5.01 doesn't work.
	    "make test" doesn't work with Make_dos.mak. (Walter Briscoe)
Solution:   Various fixes to the w16 makefile. (Walter Briscoe)
	    Don't use deltree.  Use "mkdir \tmp" instead of "mkdir /tmp".
Files:	    src/Make_w16.mak, src/testdir/Make_dos.mak

Patch 6.1.402
Problem:    When evaluating a function name with curly braces, an error
	    is not handled consistently.
Solution:   Accept the result of an curly braces expression when an
	    error was encountered.  Skip evaluating an expression in curly
	    braces when skipping.  (Servatius Brandt)
Files:	    src/eval.c

Patch 6.1.403 (extra)
Problem:    MS-Windows 16 bit: compiler warnings.
Solution:   Add typecasts. (Walter Briscoe)
Files:	    src/ex_cmds2.c, src/gui_w48.c, src/os_mswin.c, src/os_win16.c,
	    src/syntax.c

Patch 6.1.404 (extra)
Problem:    Various small problems.
Solution:   Fix comments.  Various small additions, changes in indent, removal
	    of unused items and fixes.
Files:	    Makefile, README.txt, runtime/menu.vim, runtime/vimrc_example.vim,
	    src/INSTALL, src/INSTALLole.txt, src/Make_bc5.mak,
	    src/Make_cyg.mak, src/Make_ming.mak, src/Makefile,
	    src/config.h.in, src/edit.c, src/eval.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/getchar.c,
	    src/gui.c, src/gui_gtk.c, src/gui_photon.c, src/if_cscope.c,
	    src/if_python.c, src/keymap.h, src/mark.c, src/mbyte.c,
	    src/message.c, src/misc1.c, src/misc2.c, src/normal.c,
	    src/option.c, src/os_os2_cfg.h, src/os_win32.c,
	    src/proto/getchar.pro, src/proto/message.pro,
	    src/proto/regexp.pro, src/screen.c, src/structs.h, src/syntax.c,
	    src/term.c, src/testdir/test15.in, src/testdir/test15.ok,
	    src/vim.rc, src/xxd/Make_cyg.mak, src/xxd/Makefile

Patch 6.1.405
Problem:    A few files are missing from the toplevel Makefile.
Solution:   Add the missing files.
Files:	    Makefile

Patch 6.1.406 (depends on 6.1.392)
Problem:    When a statusline item doesn't fit arbitrary text appears.
	    (Christian J. Robinson)
Solution:   When there is just enough room but not for the "<" truncate the
	    statusline item like there is no room.
Files:	    src/buffer.c

Patch 6.1.407
Problem:    ":set scrollbind | help" scrollbinds the help window. (Andrew
	    Pimlott)
Solution:   Reset 'scrollbind' when opening a help window.
Files:	    src/ex_cmds.c

Patch 6.1.408
Problem:    When 'rightleft' is set unprintable character 0x0c is displayed as
	    ">c0<".
Solution:   Reverse the text of the hex character.
Files:	    src/screen.c

Patch 6.1.409
Problem:    Generating tags for the help doesn't work for some locales.
Solution:   Set LANG=C LC_ALL=C in the environment for "sort". (Daniel
	    Elstner)
Files:	    runtime/doc/Makefile

Patch 6.1.410 (depends on 6.1.390)
Problem:    Linking error when compiling with Netbeans but without sign icons.
	    (Malte Neumann)
Solution:   Don't define buf_signcount() when sign icons are unavailable.
Files:	    src/buffer.c

Patch 6.1.411
Problem:    When 'virtualedit' is set, highlighting a Visual block beyond the
	    end of a line may be wrong.
Solution:   Correct the virtual column when the end of the line is before the
	    displayed part of the line. (Muraoka Taro)
Files:	    src/screen.c

Patch 6.1.412
Problem:    When swapping terminal screens and using ":gui" to start the GUI,
	    the shell prompt may be after a hit-enter prompt.
Solution:   Output a newline in the terminal when starting the GUI and there
	    was a hit-enter prompt..
Files:	    src/gui.c

Patch 6.1.413
Problem:    When 'clipboard' contains "unnamed", "p" in Visual mode doesn't
	    work correctly.
Solution:   Save the register before overwriting it and put the resulting text
	    on the clipboard afterwards.  (Muraoka Taro)
Files:	    src/normal.c, src/ops.c

Patch 6.1.414 (extra, depends on 6.1.369)
Problem:    VMS: Vim busy waits when waiting for input.
Solution:   Delay for a short while before getting another character.  (Zoltan
	    Arpadffy)
Files:	    src/os_vms.c

Patch 6.1.415
Problem:    When there is a vertical split and a quickfix window, reducing the
	    size of the Vim window may result in a wrong window layout and a
	    crash.
Solution:   When reducing the window size and there is not enough space for
	    'winfixheight' set the frame height to the larger height, so that
	    there is a retry while ignoring 'winfixheight'. (Yasuhiro
	    Matsumoto)
Files:	    src/window.c

Patch 6.1.416 (depends on 6.1.366)
Problem:    When using the Netbeans interface, a line with a sign cannot be
	    changed.
Solution:   Respect the GUARDEDOFFSET for sign IDs when checking for a guarded
	    area.
Files:	    src/netbeans.c

Patch 6.1.417
Problem:    Unprintable multi-byte characters are not handled correctly.
	    Multi-byte characters above 0xffff are displayed as another
	    character.
Solution:   Handle unprintable multi-byte characters.  Display multi-byte
	    characters above 0xffff with a marker.  Recognize UTF-16 words and
	    BOM words as unprintable.  (Daniel Elstner)
Files:	    src/charset.c, src/mbyte.c, src/screen.c

Patch 6.1.418
Problem:    The result of strftime() is in the current locals.  Need to
	    convert it to 'encoding'.
Solution:   Obtain the current locale and convert the argument for strftime()
	    to it and the result back to 'encoding'.  (Daniel Elstner)
Files:	    src/eval.c, src/ex_cmds.c, src/ex_cmds2.c, src/mbyte.c,
	    src/proto/mbyte.pro, src/option.c, src/os_mswin.c

Patch 6.1.419
Problem:    Vim doesn't compile on AIX 5.1.
Solution:   Don't define _NO_PROTO on this system. (Uribarri)
Files:	    src/auto/configure, src/configure.in

Patch 6.1.420 (extra)
Problem:    convert_input() has an unnecessary STRLEN().
	    Conversion from UCS-2 to a codepage uses word count instead of
	    byte count.
Solution:   Remove the STRLEN() call. (Daniel Elstner)
	    Always use byte count for string_convert().
Files:	    src/gui_w32.c, src/mbyte.c

Patch 6.1.421 (extra, depends on 6.1.354)
Problem:    MS-Windows 9x: When putting text on the clipboard it can be in
	    the wrong encoding.
Solution:   Convert text to the active codepage for CF_TEXT. (Glenn Maynard)
Files:	    src/os_mswin.c

Patch 6.1.422
Problem:    Error in .vimrc doesn't cause hit-enter prompt when swapping
	    screens. (Neil Bird)
Solution:   Set msg_didany also when sending a message to the terminal
	    directly.
Files:	    src/message.c

Patch 6.1.423
Problem:    Can't find arbitrary text in help files.
Solution:   Added the ":helpgrep" command.
Files:	    runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
	    src/proto/quickfix.pro, src/quickfix.c

Patch 6.1.424 (extra)
Problem:    Win32: Gvim compiled with VC++ 7.0 run on Windows 95 does not show
	    menu items.
Solution:   Define $WINVER to avoid an extra item is added to MENUITEMINFO.
	    (Muraoka Taro)
Files:	    src/Make_mvc.mak

Patch 6.1.425
Problem:    ":helptags $VIMRUNTIME/doc" does not add the "help-tags" tag.
Solution:   Do add the "help-tags" tag for that specific directory.
Files:	    src/ex_cmds.c

Patch 6.1.426
Problem:    "--remote-wait +cmd file" waits forever. (Valery Kondakoff)
Solution:   Don't wait for the "+cmd" argument to have been edited.
Files:	    src/main.c

Patch 6.1.427
Problem:    Several error messages for regexp patterns are not translated.
Solution:   Use _() properly. (Muraoka Taro)
Files:	    src/regexp.c

Patch 6.1.428
Problem:    FreeBSD: wait() may hang when compiled with Python support and
	    doing a system() call in a startup script.
Solution:   Use waitpid() instead of wait() and poll every 10 msec, just like
	    what is done in the GUI.
Files:	    src/os_unix.c

Patch 6.1.429 (depends on 6.1.390)
Problem:    Crash when using showmarks.vim plugin. (Charles Campbell)
Solution:   Check for sign_get_text() returning a NULL pointer.
Files:	    src/screen.c

Patch 6.1.430
Problem:    In Lisp code backslashed parens should be ignored for "%". (Dorai)
Solution:   Skip over backslashed parens.
Files:	    src/search.c

Patch 6.1.431
Problem:    Debug commands end up in redirected text.
Solution:   Disable redirection while handling debug commands.
Files:	    src/ex_cmds2.c

Patch 6.1.432 (depends on 6.1.375)
Problem:    MS-Windows: ":make %:p" inserts extra backslashes. (David Rennalls)
Solution:   Don't add backslashes, handle it like ":!cmd".
Files:	    src/ex_docmd.c

Patch 6.1.433
Problem:    ":popup" only works for Win32.
Solution:   Add ":popup" support for GTK.  (Daniel Elstner)
Files:	    runtime/doc/gui.txt, src/ex_docmd.c, src/gui_gtk.c, src/menu.c,
	    src/proto/gui_gtk.pro

Patch 6.1.434 (extra)
Problem:    Win32: When there are more than 32767 lines, the scrollbar has a
	    roundoff error.
Solution:   Make a click on an arrow move one line.  Also move the code to
	    gui_w48.c, there is hardly any difference between the 16 bit and
	    32 bit versions. (Walter Briscoe)
Files:	    src/gui_w16.c, src/gui_w32.c, src/gui_w48.c

Patch 6.1.435
Problem:    ":winsize x" resizes the Vim window to the minimal size. (Andrew
	    Pimlott)
Solution:   Give an error message for wrong arguments of ":winsize" and
	    ":winpos".
Files:	    src/ex_docmd.c

Patch 6.1.436
Problem:    When a long UTF-8 file contains an illegal byte it's hard to find
	    out where it is. (Ron Aaron)
Solution:   Add the line number to the error message.
Files:	    src/fileio.c

Patch 6.1.437 (extra, depends on 6.1.421)
Problem:    Using multi-byte functions when they are not available.
Solution:   Put the clipboard conversion inside an #ifdef. (Vince Negri)
	    Also fix a pointer type mistake. (Walter Briscoe)
Files:	    src/os_mswin.c

Patch 6.1.438
Problem:    When Perl has thread support Vim cannot use the Perl interface.
Solution:   Add a configure check and disable Perl when it will not work.
	    (Aron Griffis)
Files:	    src/auto/configure, src/configure.in

Patch 6.1.439
Problem:    Netbeans: A "create" function doesn't actually create a buffer,
	    following functions may fail.
Solution:   Create a Vim buffer without a name when "create" is called.
	    (Gordon Prieur)
Files:	    runtime/doc/netbeans.txt, src/netbeans.c

Patch 6.1.440
Problem:    The "@*" command doesn't obtain the actual contents of the
	    clipboard. (Hari Krishna Dara)
Solution:   Obtain the clipboard text before executing the command.
Files:	    src/ops.c

Patch 6.1.441
Problem:    "zj" and "zk" cannot be used as a motion command after an
	    operator. (Ralf Hetzel)
Solution:   Accept these commands as motion commands.
Files:	    src/normal.c

Patch 6.1.442
Problem:    Unicode 3.2 defines more space and punctuation characters.
Solution:   Add the new characters to the Unicode tables. (Raphael Finkel)
Files:	    src/mbyte.c

Patch 6.1.443 (extra)
Problem:    Win32: The gvimext.dll build with Borland 5.5 requires another
	    DLL.
Solution:   Build a statically linked version by default. (Dan Sharp)
Files:	    GvimExt/Make_bc5.mak

Patch 6.1.444 (extra)
Problem:    Win32: Enabling a build with gettext support is not consistent.
Solution:   Use "GETTEXT" for Borland and msvc makefiles. (Dan Sharp)
Files:	    src/Make_bc5.mak, src/Make_mvc.mak

Patch 6.1.445 (extra)
Problem:    DJGPP: get warning for argument of putenv()
Solution:   Define HAVE_PUTENV to use DJGPP's putenv(). (Walter Briscoe)
Files:	    src/os_msdos.h

Patch 6.1.446 (extra)
Problem:    Win32: The MingW makefile uses a different style of arguments than
	    other makefiles.
	    Dynamic IME is not supported for Cygwin.
Solution:   Use "no" and "yes" style arguments.  Remove the use of the
	    dyn-ming.h include file. (Dan Sharp)
	    Do not include the ime.h file and adjust the makefile. (Alejandro
	    Lopez-Valencia)
Files:	    src/Make_cyg.mak, src/Make_ming.mak, src/gui_w32.c,
	    src/if_perl.xs, src/if_python.c, src/if_ruby.c, src/os_win32.c

Patch 6.1.447
Problem:    "make install" uses "make" directly for generating help tags.
Solution:   Use $(MAKE) instead of "make". (Tim Mooney)
Files:	    src/Makefile

Patch 6.1.448
Problem:    'titlestring' has a default maximum width of 50 chars per item.
Solution:   Remove the default maximum (also for 'statusline').
Files:	    src/buffer.c

Patch 6.1.449
Problem:    When "1" and "a" are in 'formatoptions', auto-formatting always
	    moves a newly added character to the next line. (Servatius Brandt)
Solution:   Don't move a single character to the next line when it was just
	    typed.
Files:	    src/edit.c

Patch 6.1.450
Problem:    Termcap entry "kB" for back-tab is not recognized.
Solution:   Use back-tab as the shift-tab code.
Files:	    src/keymap.h, src/misc2.c, src/term.c

Patch 6.1.451
Problem:    GUI: When text in the find dialog contains a slash, a backslash is
	    inserted the next time it is opened. (Mezz)
Solution:   Remove escaped backslashes and question marks. (Daniel Elstner)
Files:	    src/gui.c

Patch 6.1.452 (extra, after 6.1.446)
Problem:    Win32: IME support doesn't work for MSVC.
Solution:   Use _MSC_VER instead of __MSVC. (Alejandro Lopez-Valencia)
Files:	    src/gui_w32.c

Patch 6.1.453 (after 6.1.429)
Problem:    When compiled without sign icons but with sign support, adding a
	    sign may cause a crash.
Solution:   Check for the text sign to exist before using it. (Kamil
	    Burzynski)
Files:	    src/screen.c

Patch 6.1.454 (extra)
Problem:    Win32: pasting Russian text in Vim with 'enc' set to cp1251
	    results in utf-8 bytes.  (Perelyubskiy)
	    Conversion from DBCS to UCS2 does not work when 'encoding' is not
	    the active codepage.
Solution:   Introduce enc_codepage and use it for conversion to 'encoding'
	    (Glenn Maynard)
	    Use MultiByteToWideChar() and WideCharToMultiByte() instead of
	    iconv().  Should do most needed conversions without iconv.dll.
Files:	    src/globals.h, src/gui_w32.c, src/mbyte.c, src/os_mswin.c,
	    src/proto/mbyte.pro, src/proto/os_mswin.pro, src/structs.h

Patch 6.1.455
Problem:    Some Unicode characters can be one or two character cells wide.
Solution:   Add the 'ambiwidth' option to tell Vim how to display these
	    characters. (Jungshik Shin)
	    Also reset the script ID when setting an option to its default
	    value, so that ":verbose set" won't give wrong info.
Files:	    runtime/doc/options.txt, src/mbyte.c, src/option.c, src/option.h

Patch 6.1.456 (extra, after 6.1.454)
Problem:    Win32: IME doesn't work.
Solution:   ImmGetCompositionStringW() returns the size in bytes, not words.
	    (Yasuhiro Matsumoto)  Also fix typecast problem.
Files:	    src/gui_w32.c, src/os_mswin.c

Patch 6.1.457
Problem:    An empty register in viminfo causes conversion to fail.
Solution:   Don't convert an empty string. (Yasuhiro Matsumoto)
Files:	    src/ex_cmds.c, src/mbyte.c

Patch 6.1.458
Problem:    Compiler warning for pointer.
Solution:   Add a typecast.
Files:	    src/ex_cmds.c

Patch 6.1.459 (extra)
Problem:    Win32: libcall() may return an invalid pointer and cause Vim to
	    crash.
Solution:   Add a strict check for the returned pointer. (Bruce Mellows)
Files:	    src/os_mswin.c

Patch 6.1.460
Problem:    GTK: after scrolling the text one line with a key, clicking the
	    arrow of the scrollbar does not always work. (Nam SungHyun)
Solution:   Always update the scrollbar thumb when the value changed, even
	    when it would not move, like for RISCOS.  (Daniel Elstner)
Files:	    src/gui.c, src/gui.h

Patch 6.1.461
Problem:    When a keymap is active, typing a character in Select mode does
	    not use it. (Benji Fisher)
Solution:   Apply Insert mode mapping to the character typed in Select mode.
Files:	    src/normal.c

Patch 6.1.462
Problem:    When autocommands wipe out a buffer, a crash may happen. (Hari
	    Krishna Dara)
Solution:   Don't decrement the window count of a buffer before calling the
	    autocommands for it.  When re-using the current buffer, watch out
	    for autocommands changing the current buffer.
Files:	    src/buffer.c, src/ex_cmds.c, src/proto/buffer.pro

Patch 6.1.463
Problem:    When writing a compressed file, the file name that gzip stores in
	    the file is the weird temporary file name. (David Rennalls)
Solution:   Use the real file name when possible.
Files:	    runtime/plugin/gzip.vim

Patch 6.1.464
Problem:    Crash when using C++ syntax highlighting. (Gerhard Hochholzer)
Solution:   Check for a negative index.
Files:	    src/syntax.c

Patch 6.1.465 (after 6.1.454)
Problem:    Compile error when using cygwin.
Solution:   Change #ifdef WIN32 to #ifdef WIN3264. (Alejandro Lopez-Valencia)
	    Undefine WIN32 after including windows.h
Files:	    src/mbyte.c

Patch 6.1.466
Problem:    The "-f" argument is a bit obscure.
Solution:   Add the "--nofork" argument.  Improve the help text a bit.
Files:	    runtime/doc/starting.txt, src/main.c

Patch 6.1.467
Problem:    Setting the window title doesn't work for Chinese.
Solution:   Use an X11 function to convert text to a text property. (Kentaro
	    Nakazawa)
Files:	    src/os_unix.c

Patch 6.1.468
Problem:    ":mksession" also stores folds for buffers which will not be
	    restored.
Solution:   Only store folds for a buffer with 'buftype' empty and help files.
Files:	    src/ex_docmd.c

Patch 6.1.469
Problem:    'listchars' cannot contain multi-byte characters.
Solution:   Handle multi-byte UTF-8 list characters. (Matthew Samsonoff)
Files:	    src/message.c, src/option.c, src/screen.c

Patch 6.1.470 (lang)
Problem:    Polish messages don't show up correctly on MS-Windows.
Solution:   Convert messages to cp1250. (Mikolaj Machowski)
	    Also add English message translations, because it got in the way
	    of the patch.
Files:	    Makefile, src/po/Makefile, src/po/en_gb.po, src/po/pl.po

Patch 6.1.471
Problem:    ":jumps" output continues after pressing "q" at the more-prompt.
	    (Hari Krishna Dara)
Solution:   Check for "got_int" being set.
Files:	    src/mark.c

Patch 6.1.472
Problem:    When there is an authentication error when connecting to the X
	    server Vim exits.
Solution:   Use XSetIOErrorHandler() to catch the error and longjmp() to avoid
	    the exit.  Also do this in the main loop, so that when the X
	    server exits a Vim running in a console isn't killed.
Files:	    src/globals.h, src/main.c, src/os_unix.c

Patch 6.1.473
Problem:    Referring to $curwin or $curbuf in Perl 5.6 causes a crash.
Solution:   Add "pTHX_" to cur_val(). (Yasuhiro Matsumoto)
Files:	    src/if_perl.xs

Patch 6.1.474
Problem:    When opening the command-line window in Ex mode it's impossible to
	    go back. (Pavol Juhas)
Solution:   Reset "exmode_active" and restore it when the command-line window
	    is closed.
Files:	    src/ex_getln.c


Patch 6.2f.001
Problem:    The configure check for Ruby didn't work properly for Ruby 1.8.0.
Solution:   Change the way the Ruby check is done. (Aron Griffis)
Files:	    src/auto/configure, src/configure.in

Patch 6.2f.002
Problem:    The output of ":ls" doesn't show whether a buffer had read errors.
Solution:   Add the "x" flag in the ":ls" output.
Files:	    runtime/doc/windows.txt, src/buffer.c

Patch 6.2f.003
Problem:    Test49 doesn't properly test the behavior of ":catch" without an
	    argument.
Solution:   Update test49. (Servatius Brandt)
Files:	    src/testdir/test49.ok, src/testdir/test49.vim

Patch 6.2f.004
Problem:    "vim --version" always uses CR/LF in the output.
Solution:   Omit the CR.
Files:	    src/message.c, src/os_unix.c

Patch 6.2f.005
Problem:    Two error messages without a colon after the number.
Solution:   Add the colon. (Taro Muraoka)
Files:	    src/if_cscope.c

Patch 6.2f.006
Problem:    When saving a file takes a while and Vim regains focus this can
	    result in a "file changed outside of Vim" warning and ml_get()
	    errors. (Mike Williams)
Solution:   Add the "b_saving" flag to avoid checking the timestamp while the
	    buffer is being saved. (Michael Schaap)
Files:	    src/fileio.c, src/structs.h

Patch 6.2f.007
Problem:    Irix compiler complains about multiple defined symbols.
	    vsnprintf() is not available.  (Charles Campbell)
Solution:   Insert EXTERN for variables in globals.h.  Change the configure
	    check for vsnprintf() from compiling to linking.
Files:	    src/auto/configure, src/configure.in, src/globals.h

Patch 6.2f.008
Problem:    The Aap recipe doesn't work with Aap 0.149.
Solution:   Change targetarg to TARGETARG.  Update the mysign file.
Files:	    src/main.aap, src/mysign

Patch 6.2f.009 (extra)
Problem:    Small problem when building with Borland 5.01.
Solution:   Use mkdir() instead of _mkdir(). (Walter Briscoe)
Files:	    src/dosinst.h

Patch 6.2f.010
Problem:    Warning for missing prototypes.
Solution:   Add missing prototypes. (Walter Briscoe)
Files:	    src/if_cscope.c

Patch 6.2f.011
Problem:    The configure script doesn't work with autoconf 2.5x.
Solution:   Add square brackets around a header check. (Aron Griffis)
	    Note: touch src/auto/configure after applying this patch.
Files:	    src/configure.in

Patch 6.2f.012
Problem:    ":echoerr" doesn't work correctly inside try/endtry.
Solution:   Don't reset did_emsg inside a try/endtry. (Servatius Brandt)
Files:	    src/eval.c

Patch 6.2f.013 (extra)
Problem:    Macintosh: Compiler warning for a trigraph.
Solution:   Insert a backslash before each question mark. (Peter Cucka)
Files:	    src/os_mac.h

Patch 6.2f.014 (extra)
Problem:    Macintosh: ex_eval is not included in the project file.
Solution:   Add ex_eval. (Dany St-Amant)
Files:	    src/os_mac.pbproj/project.pbxproj

Patch 6.2f.015 (extra)
Problem:    Win32: When changing header files not all source files involved
	    are recompiled.
Solution:   Improve the dependency rules. (Dan Sharp)
Files:	    src/Make_cyg.mak, src/Make_ming.mak

Patch 6.2f.016
Problem:    "vim --version > ff" on non-Unix systems results in a file with a
	    missing line break at the end. (Bill McCArthy)
Solution:   Add a line break.
Files:	    src/main.c

Patch 6.2f.017
Problem:    Unix: starting Vim in the background and then bringing it to the
	    foreground may cause the terminal settings to be wrong.
Solution:   Check for tcsetattr() to return an error, retry when it does.
	    (Paul Tapper)
Files:	    src/os_unix.c

Patch 6.2f.018
Problem:    Mac OS X 10.2: OK is defined to zero in cursus.h while Vim uses
	    one.  Redefining it causes a warning message.
Solution:   Undefine OK before defining it to one. (Taro Muraoka)
Files:	    src/vim.h

Patch 6.2f.019
Problem:    Mac OS X 10.2: COLOR_BLACK and COLOR_WHITE are defined in
	    curses.h.
Solution:   Rename them to PRCOLOR_BLACK and PRCOLOR_WHITE.
Files:	    src/ex_cmds2.c

Patch 6.2f.020
Problem:    Win32: test50 produces beeps and fails with some versions of diff.
Solution:   Remove empty lines and convert the output to dos fileformat.
Files:	    src/testdir/test50.in

Patch 6.2f.021
Problem:    Running configure with "--enable-netbeans" disables Netbeans.
	    (Gordon Prieur)
Solution:   Fix the tests in configure.in where the default is to enable a
	    feature.  Fix that "--enable-acl" reported "yes" confusingly.
Files:	    src/auto/configure, src/configure.in, src/mysign

Patch 6.2f.022
Problem:    A bogus value for 'foldmarker' is not rejected, possibly causing a
	    hang. (Derek Wyatt)
Solution:   Check for a non-empty string before and after the comma.
Files:	    src/option.c

Patch 6.2f.023
Problem:    When the help files are not in $VIMRUNTIME but 'helpfile' is
	    correct Vim still can't find the help files.
Solution:   Also look for a tags file in the directory of 'helpfile'.
Files:	    src/tag.c

Patch 6.2f.024
Problem:    When 'delcombine' is set and a character has more than two
	    composing characters "x" deletes them all.
Solution:   Always delete only the last composing character.
Files:	    src/misc1.c

Patch 6.2f.025
Problem:    When reading a file from stdin that has DOS line endings but a
	    missing end-of-line for the last line 'fileformat' becomes "unix".
	    (Bill McCarthy)
Solution:   Don't add the missing line break when re-reading the text from the
	    buffer.
Files:	    src/fileio.c

Patch 6.2f.026
Problem:    When typing new text at the command line, old composing characters
	    may be displayed.
Solution:   Don't read composing characters from after the end of the
	    text to be displayed.
Files:	    src/ex_getln.c, src/mbyte.c, src/message.c, src/proto/mbyte.pro,
	    src/screen.c

Patch 6.2f.027
Problem:    Compiler warnings for unsigned char pointers. (Tony Leneis)
Solution:   Add typecasts to char pointer.
Files:	    src/quickfix.c

Patch 6.2f.028
Problem:    GTK: When 'imactivatekey' is empty and XIM is inactive it can't be
	    made active again.  Cursor isn't updated immediately when changing
	    XIM activation.  Japanese XIM may hang when using 'imactivatekey'.
	    Can't activate XIM after typing fFtT command or ":sh".
Solution:   Properly set the flag that indicates the IM is active.  Update the
	    cursor right away.  Do not send a key-release event.  Handle
	    Normal mode and running an external command differently.
	    (Yasuhiro Matsumoto)
Files:	    src/mbyte.c

Patch 6.2f.029
Problem:    Mixing use of int and enum.
Solution:   Adjust argument type of cs_usage_msg().  Fix wrong typedef.
Files:	    src/if_cscope.c, src/if_cscope.h

Patch 6.2f.030 (after 6.2f.028)
Problem:    Cursor moves up when using XIM.
Solution:   Reset im_preedit_cursor.  (Yasuhiro Matsumoto)
Files:	    src/mbyte.c

Patch 6.2f.031
Problem:    Crash when listing a function argument in the debugger. (Ron Aaron)
Solution:   Init the name field of an argument to NULL.
Files:	    src/eval.c

Patch 6.2f.032
Problem:    When a write fails for a ":silent!" while inside try/endtry the
	    BufWritePost autocommands are not triggered.
Solution:   Check the emsg_silent flag in should_abort(). (Servatius Brandt)
Files:	    src/ex_eval.c, src/testdir/test49.ok, src/testdir/test49.vim

Patch 6.2f.033
Problem:    Cscope: re-entrance problem for ":cscope" command.  Checking for
	    duplicate database didn't work well for Win95.  Didn't check for
	    duplicate databases after an empty entry.
Solution:   Don't set postponed_split too early.  Remember first empty
	    database entry. (Sergey Khorev)
Files:	    src/if_cscope.c

Patch 6.2f.034
Problem:    The netbeans interface cannot be used on systems without
	    vsnprintf(). (Tony Leneis)
Solution:   Use EMSG(), EMSGN() and EMSG2() instead.
Files:	    src/auto/configure, src/configure.in, src/netbeans.c

Patch 6.2f.035
Problem:    The configure check for the netbeans interface doesn't work if the
	    socket and nsl libraries are required.
Solution:   Check for the socket and nsl libraries before the netbeans check.
Files:	    src/auto/configure, src/configure.in

Patch 6.2f.036
Problem:    Moving leftwards over text with an illegal UTF-8 byte moves one
	    byte instead of one character.
Solution:   Ignore an illegal byte after the cursor position.
Files:	    src/mbyte.c

Patch 6.2f.037
Problem:    When receiving a Netbeans command at the hit-enter or more prompt
	    the screen is redrawn but Vim is still waiting at the prompt.
Solution:   Quit the prompt like a CTRL-C was typed.
Files:	    src/netbeans.c

Patch 6.2f.038
Problem:    The dependency to run autoconf causes a patch for configure.in
	    to run autoconf, even though the configure script was updated as
	    well.
Solution:   Only run autoconf with "make autoconf".
Files:	    src/Makefile

Patch 6.2f.039
Problem:    CTRL-W K makes the new top window very high.
Solution:   When 'equalalways' is set equalize the window heights.
Files:	    src/window.c


==============================================================================
VERSION 6.3						*version-6.3*

This section is about improvements made between version 6.2 and 6.3.

This is mainly a bug-fix release.  There are also a few new features.
The major number of new items is in the runtime files and translations.


Changed							*changed-6.3*
-------

The intro message also displays a note about sponsoring Vim, mixed randomly
with the message about helping children in Uganda.

Included the translated menus, keymaps and tutors with the normal runtime
files.  The separate "lang" archive now only contains translated messages.

Made the translated menu file names a bit more consistent.  Use "latin1" for
"iso_8859-1" and "iso_8859-15".

Removed the "file_select.vim" script from the distribution.  It's not more
useful than other scripts that can be downloaded from www.vim.org.

The "runtime/doc/tags" file is now always in unix fileformat.  On MS-Windows
it used to be dos fileformat, but ":helptags" generates a unix format file.


Added							*added-6.3*
-----

New commands:
	:cNfile		go to last error in previous file
	:cpfile		idem
	:changes	print the change list
	:keepmarks	following command keeps marks where they are
	:keepjumps	following command keeps jumplist and marks
	:lockmarks	following command keeps marks where they are
	:redrawstatus	force a redraw of the status line(s)

New options:
	'antialias'	Mac OS X: use smooth, antialiased fonts
	'helplang'	preferred help languages

Syntax files:
	Arch inventory (Nikolai Weibull)
	Calendar (Nikolai Weibull)
	Ch (Wayne Cheng)
	Controllable Regex Mutilator (Nikolai Weibull)
	D (Jason Mills)
	Desktop (Mikolaj Machowski)
	Dircolors (Nikolai Weibull)
	Elinks configuration (Nikolai Weibull)
	FASM (Ron Aaron)
	GrADS scripts (Stefan Fronzek)
	Icewm menu (James Mahler)
	LDIF (Zak Johnson)
	Locale input, fdcc. (Dwayne Bailey)
	Pinfo config (Nikolai Weibull)
	Pyrex (Marco Barisione)
	Relax NG Compact (Nikolai Weibull)
	Slice (Morel Bodin)
	VAX Macro Assembly (Tom Uijldert)
	grads (Stefan Fronzek)
	libao (Nikolai Weibull)
	mplayer (Nikolai Weibull)
	rst (Nikolai Weibull)
	tcsh (Gautam Iyer)
	yaml (Nikolai Weibull)

Compiler plugins:
	ATT dot (Marcos Macedo)
	Apple Project Builder (Alexander von Below)
	Intel (David Harrison)
	bdf (Nikolai Weibull)
	icc (Peter Puck)
	javac (Doug Kearns)
	neato (Marcos Macedo)
	onsgmls (Robert B. Rowsome)
	perl (Christian J. Robinson)
	rst (Nikolai Weibull)
	se (SmartEiffel) (Doug Kearns)
	tcl (Doug Kearns)
	xmlwf (Robert B. Rowsome)

Filetype plugins:
	Aap (Bram Moolenaar)
	Ch (Wayne Cheng)
	Css (Nikolai Weibull)
	Pyrex (Marco Barisione)
	Rst (Nikolai Weibull)

Indent scripts:
	Aap (Bram Moolenaar)
	Ch (Wayne Cheng)
	DocBook (Nikolai Weibull)
	MetaPost (Eugene Minkovskii)
	Objective-C (Kazunobu Kuriyama)
	Pyrex (Marco Barisione)
	Rst (Nikolai Weibull)
	Tcsh (Gautam Iyer)
	XFree86 configuration file (Nikolai Weibull)
	Zsh (Nikolai Weibull)

Keymaps:
	Greek for cp1253 (Panagiotis Louridas)
	Hungarian (Magyar) (Laszlo Zavaleta)
	Persian-Iranian (Behnam Esfahbod)

Message translations:
	Catalan (Ernest Adrogue)
	Russian (Vassily Ragosin)
	Swedish (Johan Svedberg)

Menu translations:
	Catalan (Ernest Adrogue)
	Russian (Tim Alexeevsky)
	Swedish (Johan Svedberg)

Tutor translations:
	Catalan (Ernest Adrogue)
	Russian in cp1251 (Alexey Froloff)
	Slovak in cp1250 and iso8859-2 (Lubos Celko)
	Swedish (Johan Svedberg)
	Korean (Kee-Won Seo)
	UTF-8 version of the Japanese tutor (Yasuhiro Matsumoto) Use this as
		the original, create the other Japanese tutor by conversion.

Included "russian.txt" help file. (Vassily Ragosin)

Include Encapsulated PostScript and PDF versions of the Vim logo in the extra
archive.

The help highlighting finds the highlight groups and shows them in the color
that is actually being used. (idea from Yakov Lerner)

The big Win32 version is now compiled with Ruby interface, version 1.8.  For
Python version 2.3 is used.  For Perl version 5.8 is used.

The "ftdetect" directory is mentioned in the documentation.  The DOS install
program creates it.


Fixed							*fixed-6.3*
-----

Test 42 failed on MS-Windows.  Set and reset 'fileformat' and 'binary' options
here and there.  (Walter Briscoe)

The explorer plugin didn't work for double-byte 'encoding's.

Use "copy /y" in Make_bc5.mak to avoid a prompt for overwriting.

Patch 6.2.001
Problem:    The ":stopinsert" command doesn't have a help tag.
Solution:   Add the tag. (Antoine J.  Mechelynck)
Files:	    runtime/doc/insert.txt, runtime/doc/tags

Patch 6.2.002
Problem:    When compiled with the +multi_byte feature but without +eval,
	    displaying UTF-8 characters may cause a crash. (Karsten Hopp)
Solution:   Also set the default for 'ambiwidth' when compiled without the
	    +eval feature.
Files:	    src/option.c

Patch 6.2.003
Problem:    GTK 2: double-wide characters below 256 are not displayed
	    correctly.
Solution:   Check the cell width for characters above 127. (Yasuhiro
	    Matsumoto)
Files:	    src/gui_gtk_x11.c

Patch 6.2.004
Problem:    With a line-Visual selection at the end of the file a "p" command
	    puts the text one line upwards.
Solution:   Detect that the last line was deleted and put forward. (Taro
	    Muraoka)
Files:	    src/normal.c

Patch 6.2.005
Problem:    GTK: the "Find" and "Find and Replace" tools don't work. (Aschwin
	    Marsman)
Solution:   Show the dialog after creating it.  (David Necas)
Files:	    src/gui_gtk.c

Patch 6.2.006
Problem:    The Netbeans code contains an obsolete function that uses "vim61"
	    and sets the fall-back value for $VIMRUNTIME.
Solution:   Delete the obsolete function.
Files:	    src/main.c, src/netbeans.c, src/proto/netbeans.pro

Patch 6.2.007
Problem:    Listing tags for Cscope doesn't always work.
Solution:   Avoid using smgs_attr(). (Sergey Khorev)
Files:	    src/if_cscope.c

Patch 6.2.008
Problem:    XIM with GTK 2: After backspacing preedit characters are wrong.
Solution:   Reset the cursor position. (Yasuhiro Matsumoto)
Files:	    src/mbyte.c

Patch 6.2.009
Problem:    Win32: The self-installing executable "Full" selection only
	    selects some of the items to install. (Salman Mohsin)
Solution:   Change commas to spaces in between section numbers.
Files:	    nsis/gvim.nsi

Patch 6.2.010
Problem:    When 'virtualedit' is effective and a line starts with a
	    multi-byte character, moving the cursor right doesn't work.
Solution:   Obtain the right character to compute the column offset. (Taro
	    Muraoka)
Files:	    src/charset.c

Patch 6.2.011
Problem:    Alpha OSF1: stat() is a macro and doesn't allow an #ifdef halfway.
	    (Moshe Kaminsky)
Solution:   Move the #ifdef outside of stat().
Files:	    src/os_unix.c

Patch 6.2.012
Problem:    May hang when polling for a character.
Solution:   Break the wait loop when not waiting for a character.
Files:	    src/os_unix.c

Patch 6.2.013 (extra)
Problem:    Win32: The registry key for uninstalling GvimExt still uses "6.1".
Solution:   Change the version number to "6.2". (Ajit Thakkar)
Files:	    src/GvimExt/GvimExt.reg

Patch 6.2.014 (after 6.2.012)
Problem:    XSMP doesn't work when using poll().
Solution:   Use xsmp_idx instead of gpm_idx. (Neil Bird)
Files:	    src/os_unix.c

Patch 6.2.015
Problem:    The +xsmp feature is never enabled.
Solution:   Move the #define for USE_XSMP to below where WANT_X11 is defined.
	    (Alexey Froloff)
Files:	    src/feature.h

Patch 6.2.016
Problem:    Using ":scscope find" with 'cscopequickfix' does not always split
	    the window. (Gary Johnson)
	    Win32: ":cscope add" could make the script that contains it
	    read-only until the corresponding ":cscope kill".
	    Errors during ":cscope add" may not be handled properly.
Solution:   When using the quickfix window may need to split the window.
	    Avoid file handle inheritance for the script.
	    Check for a failed connection and/or process.  (Sergey Khorev)
Files:	    src/ex_cmds2.c, src/if_cscope.c

Patch 6.2.017
Problem:    Test11 sometimes prompts the user, because a file would have been
	    changed outside of Vim. (Antonio Colombo)
Solution:   Add a FileChangedShell autocommand to avoid the prompt.
Files:	    src/testdir/test11.in

Patch 6.2.018
Problem:    When using the XSMP protocol and reading from stdin Vim may wait
	    for a key to be pressed.
Solution:   Avoid that RealWaitForChar() is used recursively.
Files:	    src/os_unix.c

Patch 6.2.019 (lang)
Problem:    Loading the Portuguese menu causes an error message.
Solution:   Join two lines.  (Jose Pedro Oliveira, José de Paula)
Files:	    runtime/lang/menu_pt_br.vim

Patch 6.2.020
Problem:    The "Syntax/Set syntax only" menu item causes an error message.
	    (Oyvind Holm)
Solution:   Set the script-local variable in a function. (Benji Fisher)
Files:	    runtime/synmenu.vim

Patch 6.2.021
Problem:    The user manual section on exceptions contains small mistakes.
Solution:   Give a good example of an error that could be missed and other
	    improvements. (Servatius Brandt)
Files:	    runtime/doc/usr_41.txt

Patch 6.2.022 (extra)
Problem:    Win32: After deleting a menu item it still appears in a tear-off
	    window.
Solution:   Set the mode to zero for the deleted item. (Yasuhiro Matsumoto)
Files:	    src/gui_w32.c

Patch 6.2.023 (extra)
Problem:    Win32: Make_ivc.mak does not clean everything.
Solution:   Delete more files in the clean rule. (Walter Briscoe)
Files:	    src/Make_ivc.mak

Patch 6.2.024 (extra)
Problem:    Win32: Compiler warnings for typecasts.
Solution:   Use DWORD instead of WORD. (Walter Briscoe)
Files:	    src/gui_w32.c

Patch 6.2.025
Problem:    Missing prototype for sigaltstack().
Solution:   Add the prototype when it is not found in a header file.
Files:	    src/os_unix.c

Patch 6.2.026
Problem:    Warning for utimes() argument.
Solution:   Add a typecast.
Files:	    src/fileio.c

Patch 6.2.027
Problem:    Warning for uninitialized variable.
Solution:   Set mb_l to one when not using multi-byte characters.
Files:	    src/message.c

Patch 6.2.028
Problem:    Cscope connection may kill Vim process and others.
Solution:   Check for pid being larger than one. (Khorev Sergey)
Files:	    src/if_cscope.c

Patch 6.2.029
Problem:    When using the remote server functionality Vim may leak memory.
	    (Srikanth Sankaran)
Solution:   Free the result of XListProperties().
Files:	    src/if_xcmdsrv.c

Patch 6.2.030
Problem:    Mac: Warning for not being able to use precompiled header files.
Solution:   Don't redefine select.  Use -no-cpp-precomp for compiling, so that
	    function prototypes are still found.
Files:	    src/os_unix.c, src/osdef.sh

Patch 6.2.031
Problem:    The langmenu entry in the options window doesn't work. (Rodolfo
	    Lima)
	    With GTK 1 the ":options" command causes an error message.
	    (Michael Naumann)
Solution:   Change "lmenu" to "langmenu".  Only display the 'tbis' option for
	    GTK 2.
Files:	    runtime/optwin.vim

Patch 6.2.032
Problem:    The lpc filetype is never recognized. (Shizhu Pan)
Solution:   Check for g:lpc_syntax_for_c instead of the local variable
	    lpc_syntax_for_c. (Benji Fisher)
Files:	    runtime/filetype.vim

Patch 6.2.033 (extra)
Problem:    Mac: Various compiler warnings.
Solution:   Don't include Classic-only headers in Unix version.
	    Remove references to several unused variables. (Ben Fowler)
	    Fix double definition of DEFAULT_TERM.
	    Use int instead of unsigned short for pixel values, so that the
	    negative error values are recognized.
Files:	    src/gui_mac.c, src/term.c

Patch 6.2.034
Problem:    Mac: Compiler warning for redefining DEFAULT_TERM.
Solution:   Fix double definition of DEFAULT_TERM.
Files:	    src/term.c

Patch 6.2.035
Problem:    Mac: Compiler warnings in Python interface.
Solution:   Make a difference between pure Mac and Unix-Mac. (Peter Cucka)
Files:	    src/if_python.c

Patch 6.2.036 (extra)
Problem:    Mac Unix version: If foo is a directory, then ":e f<Tab>" should
	    expand to ":e foo/" instead of ":e foo" .  (Vadim Zeitlin)
Solution:   Define DONT_ADD_PATHSEP_TO_DIR only for pure Mac. (Benji Fisher)
Files:	    src/os_mac.h

Patch 6.2.037
Problem:    Win32: converting an encoding name to a codepage could result in
	    an arbitrary number.
Solution:   make encname2codepage() return zero if the encoding name doesn't
	    contain a codepage number.
Files:	    src/mbyte.c

Patch 6.2.038 (extra)
Problem:    Warning messages when using the MingW compiler. (Bill McCarthy)
	    Can't compile console version without +mouse feature.
Solution:   Initialize variables, add parenthesis.
	    Add an #ifdef around g_nMouseClick. (Ajit Thakkar)
Files:	    src/eval.c, src/os_win32.c, src/gui_w32.c, src/dosinst.c

Patch 6.2.039 (extra)
Problem:    More warning messages when using the MingW compiler.
Solution:   Initialize variables. (Bill McCarthy)
Files:	    src/os_mswin.c

Patch 6.2.040
Problem:    FreeBSD: Crash while starting up when compiled with +xsmp feature.
Solution:   Pass a non-NULL argument to IceAddConnectionWatch().
Files:	    src/os_unix.c

Patch 6.2.041 (extra, after 6.2.033)
Problem:    Mac: Compiler warnings for conversion types, missing prototype,
	    missing return type.
Solution:   Change sscanf "%hd" to "%d", the argument is an int now.  Add
	    gui_mch_init_check() prototype.  Add "int" to termlib functions.
Files:	    src/gui_mac.c, src/proto/gui_mac.pro, src/termlib.c.

Patch 6.2.042 (extra)
Problem:    Cygwin: gcc 3.2 has an optimizer problem, sometimes causing a
	    crash.
Solution:   Add -fno-strength-reduce to the compiler arguments. (Dan Sharp)
Files:	    src/Make_cyg.mak

Patch 6.2.043
Problem:    Compiling with both netbeans and workshop doesn't work.
Solution:   Move the shellRectangle() function to gui_x11.c. (Gordon Prieur)
Files:	    src/gui_x11.c, src/integration.c, src/netbeans.c,
	    src/proto/netbeans.pro

Patch 6.2.044
Problem:    ":au filetypedetect" gives an error for a non-existing event name,
	    but it's actually a non-existing group name. (Antoine Mechelynck)
Solution:   Make the error message clearer.
Files:	    src/fileio.c

Patch 6.2.045
Problem:    Obtaining the '( mark changes the '' mark. (Gary Holloway)
Solution:   Don't set the '' mark when searching for the start/end of the
	    current sentence/paragraph.
Files:	    src/mark.c

Patch 6.2.046
Problem:    When evaluating an argument of a function throws an exception the
	    function is still called. (Hari Krishna Dara)
Solution:   Don't call the function when an exception was thrown.
Files:	    src/eval.c

Patch 6.2.047 (extra)
Problem:    Compiler warnings when using MingW. (Bill McCarthy)
Solution:   Give the s_dwLastClickTime variable a type.  Initialize dwEndTime.
Files:	    src/os_win32.c

Patch 6.2.048
Problem:    The Python interface doesn't compile with Python 2.3 when
	    dynamically loaded.
Solution:   Use dll_PyObject_Malloc and dll_PyObject_Free. (Paul Moore)
Files:	    src/if_python.c

Patch 6.2.049
Problem:    Using a "-range=" argument with ":command" doesn't work and
	    doesn't generate an error message.
Solution:   Generate an error message.
Files:	    src/ex_docmd.c

Patch 6.2.050
Problem:    Test 32 didn't work on MS-Windows.
Solution:   Write the temp file in Unix fileformat. (Walter Briscoe)
Files:	    src/testdir/test32.in

Patch 6.2.051
Problem:    When using "\=submatch(0)" in a ":s" command, line breaks become
	    NUL characters.
Solution:   Change NL to CR characters, so that they become line breaks.
Files:	    src/regexp.c

Patch 6.2.052
Problem:    A few messages are not translated.
Solution:   Add _() to the messages. (Muraoka Taro)
Files:	    src/ex_cmds.c

Patch 6.2.053
Problem:    Prototype for bzero() doesn't match most systems.
Solution:   Use "void *" instead of "char *" and "size_t" instead of "int".
Files:	    src/osdef1.h.in

Patch 6.2.054
Problem:    A double-byte character with a second byte that is a backslash
	    causes problems inside a string.
Solution:   Skip over multi-byte characters in a string properly. (Yasuhiro
	    Matsumoto)
Files:	    src/eval.c

Patch 6.2.055
Problem:    Using col('.') from CTRL-O in Insert mode does not return the
	    correct value for multi-byte characters.
Solution:   Correct the cursor position when it is necessary, move to the
	    first byte of a multi-byte character. (Yasuhiro Matsumoto)
Files:	    src/edit.c

Patch 6.2.056 (extra)
Problem:    Building with Sniff++ doesn't work.
Solution:   Use the multi-threaded libc when needed. (Holger Ditting)
Files:	    src/Make_mvc.mak

Patch 6.2.057 (extra)
Problem:    Mac: With -DMACOS_X putenv() is defined twice, it is in a system
	    library.  Get a warning for redefining OK.  Unused variables in
	    os_mac.c
Solution:   Define HAVE_PUTENV.  Undefine OK after including curses.h.
	    Remove declarations for unused variables.
Files:	    src/os_mac.c, src/os_mac.h, src/vim.h

Patch 6.2.058
Problem:    When 'autochdir' is set ":bnext" to a buffer without a name causes
	    a crash.
Solution:   Don't call vim_chdirfile() when the file name is NULL. (Taro
	    Muraoka)
Files:	    src/buffer.c

Patch 6.2.059
Problem:    When 'scrolloff' is a large number and listing completion results
	    on the command line, then executing a command that jumps close to
	    where the cursor was before, part of the screen is not updated.
	    (Yakov Lerner)
Solution:   Don't skip redrawing part of the window when it was scrolled.
Files:	    src/screen.c

Patch 6.2.060 (extra)
Problem:    Win32: When 'encoding' is set to "iso-8859-7" copy/paste to/from
	    the clipboard gives a lalloc(0) error. (Kriton Kyrimis)
Solution:   When the string length is zero allocate one byte.  Also fix that
	    when the length of the Unicode text is zero (conversion from
	    'encoding' to UCS-2 was not possible) the normal text is used.
Files:	    src/os_mswin.c

Patch 6.2.061
Problem:    GUI: Using the left mouse button with the shift key should work
	    like "*" but it scrolls instead. (Martin Beller)
Solution:   Don't recognize an rxvt scroll wheel event when using the GUI.
Files:	    src/term.c

Patch 6.2.062
Problem:    When one buffer uses a syntax with "containedin" and another
	    buffer does not, redrawing depends on what the current buffer is.
	    (Brett Pershing Stahlman)
Solution:   Use "syn_buf" instead of "curbuf" to get the b_syn_containedin
	    flag.
Files:	    src/syntax.c

Patch 6.2.063
Problem:    When using custom completion end up with no matches.
Solution:   Make cmd_numfiles and cmd_files local to completion to avoid that
	    they are overwritten when ExpandOne() is called recursively by
	    f_glob().
Files:	    src/eval.c, src/ex_docmd.c, src/ex_getln.c, src/proto/ex_getln.pro,
	    src/misc1.c, src/structs.h, src/tag.c

Patch 6.2.064
Problem:    resolve() only handles one symbolic link, need to repeat it to
	    resolve all of them.  Then need to simplify the file name.
Solution:   Make resolve() resolve all symbolic links and simplify the result.
	    Add simplify() to just simplify a file name.  Fix that test49
	    doesn't work if /tmp is a symbolic link.  (Servatius Brandt)
Files:	    runtime/doc/eval.txt, src/eval.c, src/tag.c,
	    src/testdir/test49.vim

Patch 6.2.065
Problem:    ":windo 123" only updates other windows when entering them.
	    (Walter Briscoe)
Solution:   Update the topline before going to the next window.
Files:	    src/ex_cmds2.c

Patch 6.2.066 (extra)
Problem:    Ruby interface doesn't work with Ruby 1.8.0.
Solution:   Change "defout" to "stdout". (Aron Griffis)
	    Change dynamic loading. (Taro Muraoka)
Files:	    src/if_ruby.c, src/Make_mvc.mak

Patch 6.2.067
Problem:    When searching for a string that starts with a composing character
	    the command line isn't drawn properly.
Solution:   Don't count the space to draw the composing character on and
	    adjust the cursor column after drawing the string.
Files:	    src/message.c

Patch 6.2.068
Problem:    Events for the netbeans interface that include a file name with
	    special characters don't work properly.
Solution:   Use nb_quote() on the file name. (Sergey Khorev)
Files:	    src/netbeans.c

Patch 6.2.069 (after 6.2.064)
Problem:    Unused variables "limit" and "new_st" and unused label "fail" in
	    some situation. (Bill McCarthy)
Solution:   Put the declarations inside an #ifdef. (Servatius Brandt)
Files:	    src/eval.c, src/tag.c

Patch 6.2.070 (after 6.2.069)
Problem:    Still unused variable "new_st". (Bill McCarthy)
Solution:   Move the declaration to the right block this time.
Files:	    src/tag.c

Patch 6.2.071
Problem:    'statusline' can only contain 50 % items. (Antony Scriven)
Solution:   Allow 80 items and mention it in the docs.
Files:	    runtime/doc/option.txt, src/vim.h

Patch 6.2.072
Problem:    When using expression folding, foldexpr() mostly returns -1 for
	    the previous line, which makes it difficult to write a fold
	    expression.
Solution:   Make the level of the previous line available while still looking
	    for the end of a fold.
Files:	    src/fold.c

Patch 6.2.073
Problem:    When adding detection of a specific filetype for a plugin you need
	    to edit "filetype.vim".
Solution:   Source files from the "ftdetect" directory, so that a filetype
	    detection plugin only needs to be dropped in a directory.
Files:	    runtime/doc/filetype.txt, runtime/doc/usr_05.txt,
	    runtime/doc/usr_41.txt, runtime/filetype.vim

Patch 6.2.074
Problem:    Warnings when compiling the Python interface. (Ajit Thakkar)
Solution:   Use ANSI function declarations.
Files:	    src/if_python.c

Patch 6.2.075
Problem:    When the temp file for writing viminfo can't be used "NULL"
	    appears in the error message. (Ben Lavender)
Solution:   Print the original file name when there is no temp file name.
Files:	    src/ex_cmds.c

Patch 6.2.076
Problem:    The tags listed for cscope are in the wrong order. (Johannes
	    Stezenbach)
Solution:   Remove the reordering of tags for the current file. (Sergey
	    Khorev)
Files:	    src/if_cscope.c

Patch 6.2.077
Problem:    When a user function specifies custom completion, the function
	    gets a zero argument instead of an empty string when there is no
	    word before the cursor. (Preben Guldberg)
Solution:   Don't convert an empty string to a zero.
Files:	    src/eval.c

Patch 6.2.078
Problem:    "make test" doesn't work if Vim wasn't compiled yet. (Ed Avis)
Solution:   Build Vim before running the tests.
Files:	    src/Makefile

Patch 6.2.079
Problem:    ":w ++enc=utf-8 !cmd" doesn't work.
Solution:   Check for the "++" argument before the "!".
Files:	    src/ex_docmd.c

Patch 6.2.080
Problem:    When 't_ti' is not empty but doesn't swap screens, using "ZZ" in
	    an unmodified file doesn't clear the last line.
Solution:   Call msg_clr_eos() when needed. (Michael Schroeder)
Files:	    src/os_unix.c

Patch 6.2.081
Problem:    Problem when using a long multibyte string for the statusline.
Solution:   Use the right pointer to get the cell size. (Taro Muraoka)
Files:	    src/buffer.c

Patch 6.2.082
Problem:    Can't compile with Perl 5.8.1.
Solution:   Rename "e_number" to "e_number_exp". (Sascha Blank)
Files:	    src/digraph.c, src/globals.h

Patch 6.2.083
Problem:    When a compiler uses ^^^^ to mark a word the information is not
	    visible in the quickfix window. (Srikanth Sankaran)
Solution:   Don't remove the indent for a line that is not recognized as an
	    error message.
Files:	    src/quickfix.c

Patch 6.2.084
Problem:    "g_" in Visual mode always goes to the character after the line.
	    (Jean-Rene David)
Solution:   Ignore the NUL at the end of the line.
Files:	    src/normal.c

Patch 6.2.085
Problem:    ":verbose set ts" doesn't say an option was set with a "-c" or
	    "--cmd" argument.
Solution:   Remember the option was set from a Vim argument.
Files:	    src/main.c, src/ex_cmds2.c, src/vim.h

Patch 6.2.086
Problem:    "{" and "}" stop inside a closed fold.
Solution:   Only stop once inside a closed fold. (Stephen Riehm)
Files:	    src/search.c

Patch 6.2.087
Problem:    CTRL-^ doesn't use the 'confirm' option.  Same problem with
	    ":bnext". (Yakov Lerner)
Solution:   Put up a dialog for a changed file when 'confirm' is set in more
	    situations.
Files:	    src/buffer.c, src/ex_cmds.c

Patch 6.2.088
Problem:    When 'sidescrolloff' is set 'showmatch' doesn't work correctly if
	    the match is less than 'sidescrolloff' off from the side of the
	    window.  (Roland Stahn)
Solution:   Set 'sidescrolloff' to zero while displaying the match.
Files:	    src/search.c

Patch 6.2.089
Problem:    ":set isk+=" adds a comma. (Mark Waggoner)
Solution:   Don't add a comma when the added value is empty.
Files:	    src/option.c

Patch 6.2.090 (extra)
Problem:    Win32: MingW compiler complains about #pragmas. (Bill McCarthy)
Solution:   Put an #ifdef around the #pragmas.
Files:	    src/os_win32.c

Patch 6.2.091
Problem:    When an autocommand is triggered when a file is dropped on Vim and
	    it produces output, messages from a following command may be
	    scrolled unexpectedly. (David Rennalls)
Solution:   Save and restore msg_scroll in handle_drop().
Files:	    src/ex_docmd.c

Patch 6.2.092
Problem:    Invalid items appear in the help file tags. (Antonio Colombo)
Solution:   Only accept tags with white space before the first "*".
Files:	    runtime/doc/doctags.c, src/ex_cmds.c

Patch 6.2.093
Problem:    ":nnoremenu" also defines menu for Visual mode. (Klaus Bosau)
Solution:   Check the second command character for an "o", not the third.
Files:	    src/menu.c

Patch 6.2.094
Problem:    Can't compile with GTK and tiny features.
Solution:   Include handle_drop() and vim_chdirfile() when FEAT_DND is defined.
	    Do not try to split the window.
Files:	    src/ex_docmd.c, src/misc2.c

Patch 6.2.095
Problem:    The message "Cannot go to buffer x" is confusing for ":buf 6".
	    (Frans Englich)
Solution:   Make it "Buffer x does not exist".
Files:	    src/buffer.c

Patch 6.2.096
Problem:    Win32: ":let @* = ''" put a newline on the clipboard. (Klaus
	    Bosau)
Solution:   Put zero bytes on the clipboard for an empty string.
Files:	    src/ops.c

Patch 6.2.097
Problem:    Setting or resetting 'insertmode' in a BufEnter autocommand
	    doesn't always have immediate effect. (Nagger)
Solution:   When 'insertmode' is set, set need_start_insertmode, when it's
	    reset set stop_insert_mode.
Files:	    src/option.c

Patch 6.2.098 (after 6.2.097)
Problem:    Can't build Vim with tiny features. (Christian J. Robinson)
Solution:   Declare stop_insert_mode always.
Files:	    src/edit.c, src/globals.h

Patch 6.2.099 (extra)
Problem:    Test 49 fails. (Mikolaj Machowski)
Solution:   The Polish translation must not change "E116" to "R116".
Files:	    src/po/pl.po

Patch 6.2.100
Problem:    "make proto" fails when compiled with the Perl interface.
Solution:   Remove "-fno.*" from PERL_CFLAGS, cproto sees it as its option.
Files:	    src/auto/configure, src/configure.in

Patch 6.2.101
Problem:    When using syntax folding, opening a file slows down a lot when
	    it's size increases by only 20%. (Gary Johnson)
Solution:   The array with cached syntax states is leaking entries.  After
	    cleaning up the list obtain the current entry again.
Files:	    src/syntax.c

Patch 6.2.102
Problem:    The macros equal() and CR conflict with a Carbon header file.
Solution:   Rename equal() to equalpos().  Rename CR to CAR.
	    Do this in the non-extra files only.
Files:	    src/ascii.h, src/buffer.c, src/charset.c, src/edit.c, src/eval.c,
	    src/ex_cmds.c, src/ex_cmds2.c, src/ex_getln.c, src/fileio.c,
	    src/getchar.c, src/gui.c, src/gui_athena.c, src/gui_gtk_x11.c,
	    src/gui_motif.c, src/macros.h, src/mark.c, src/message.c,
	    src/misc1.c, src/misc2.c, src/normal.c, src/ops.c, src/os_unix.c,
	    src/regexp.c, src/search.c, src/ui.c, src/workshop.c

Patch 6.2.103 (extra)
Problem:    The macros equal() and CR conflict with a Carbon header file.
Solution:   Rename equal() to equalpos().  Rename CR to CAR.
	    Do this in the extra files only.
Files:	    src/gui_photon.c, src/gui_w48.c

Patch 6.2.104
Problem:    Unmatched braces in the table with options.
Solution:   Move the "}," outside of the #ifdef. (Yakov Lerner)
Files:	    src/option.c

Patch 6.2.105
Problem:    When the cursor is past the end of the line when calling
	    get_c_indent() a crash might occur.
Solution:   Don't look past the end of the line. (NJ Verenini)
Files:	    src/misc1.c

Patch 6.2.106
Problem:    Tag searching gets stuck on a very long line in the tags file.
Solution:   When skipping back to search the first matching tag remember the
	    offset where searching started looking for a line break.
Files:	    src/tag.c

Patch 6.2.107 (extra)
Problem:    The NetBeans interface cannot be used on Win32.
Solution:   Add support for the NetBeans for Win32.  Add support for reading
	    XPM files on Win32.  Also fixes that a sign icon with a space in
	    the file name did not work through the NetBeans interface.
	    (Sergey Khorev)
	    Also: avoid repeating error messages when the connection is lost.
Files:	    Makefile, runtime/doc/netbeans.txt, src/Make_bc5.mak,
	    src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak,
	    src/bigvim.bat, src/feature.h, src/gui_beval.c, src/gui_beval.h,
	    src/gui_w32.c, src/gui_w48.c, src/menu.c, src/nbdebug.c,
	    src/nbdebug.h, src/netbeans.c, src/os_mswin.c, src/os_win32.h,
	    src/proto/gui_beval.pro, src/proto/gui_w32.pro,
	    src/proto/netbeans.pro, src/proto.h, src/version.c, src/vim.h,
	    src/xpm_w32.c, src/xpm_w32.h

Patch 6.2.108
Problem:    Crash when giving a message about ignoring case in a tag. (Manfred
	    Kuehn)
Solution:   Use a longer buffer for the message.
Files:	    src/tag.c

Patch 6.2.109
Problem:    Compiler warnings with various Amiga compilers.
Solution:   Add typecast, prototypes, et al. that are also useful for other
	    systems.  (Flavio Stanchina)
Files:	    src/eval.c, src/ops.c

Patch 6.2.110
Problem:    When $LANG includes the encoding, a menu without an encoding name
	    is not found.
Solution:   Also look for a menu file without any encoding.
Files:	    runtime/menu.vim

Patch 6.2.111
Problem:    Encoding "cp1251" is not recognized.
Solution:   Add "cp1251" to the table of encodings. (Alexey Froloff)
Files:	    src/mbyte.c

Patch 6.2.112
Problem:    After applying patches test32 fails. (Antonio Colombo)
Solution:   Have "make clean" in the testdir delete *.rej and *.orig files.
	    Use this when doing "make clean" in the src directory.
Files:	    src/Makefile, src/testdir/Makefile

Patch 6.2.113
Problem:    Using ":startinsert" after "$" works like "a" instead of "i".
	    (Ajit Thakkar)
Solution:   Reset "w_curswant" for ":startinsert" and reset o_eol in edit().
Files:	    src/edit.c, src/ex_docmd.c

Patch 6.2.114
Problem:    When stdout is piped through "tee", the size of the screen may not
	    be correct.
Solution:   Use stdin instead of stdout for ioctl() when stdin is a tty and
	    stdout isn't.
Files:	    src/os_unix.c

Patch 6.2.115 (extra)
Problem:    Compiler warnings with various Amiga compilers.
Solution:   Add typecast, prototypes, et al.  Those changes that are
	    Amiga-specific. (Flavio Stanchina)
Files:	    src/fileio.c, src/memfile.c, src/os_amiga.c, src/os_amiga.h,
	    src/vim.h

Patch 6.2.116 (extra)
Problem:    German keyboard with Numlock set different from system startup
	    causes problems.
Solution:   Ignore keys with code 0xff. (Helmut Stiegler)
Files:	    src/gui_w48.c

Patch 6.2.117
Problem:    Breakpoints in loops of sourced files and functions are not
	    detected. (Hari Krishna Dara)
Solution:   Check for breakpoints when using lines that were previously read.
	    (Servatius Brandt)
Files:	    src/eval.c, src/ex_cmds2.c, src/ex_docmd.c, src/proto/eval.pro,
	    src/proto/ex_cmds2.pro

Patch 6.2.118 (extra)
Problem:    Mac: Compiling is done in a non-standard way.
Solution:   Use the Unix method for Mac OS X, with autoconf.  Add "CARBONGUI"
	    to Makefile and configure. (Eric Kow)
	    Move a few prototypes from os_mac.pro to gui_mac.pro.
Files:	    src/Makefile, src/auto/configure, src/configure.in,
	    src/config.mk.in, src/gui_mac.c, src/os_mac.h, src/os_macosx.c,
	    src/proto/gui_mac.pro, src/proto/os_mac.pro,
	    src/infplist.xml, src/vim.h

Patch 6.2.119 (after 6.2.107)
Problem:    When packing the MS-Windows archives a few files are missing.
	    (Guopeng Wen)
Solution:   Add gui_beval.* to the list of generic source files.
Files:	    Makefile

Patch 6.2.120
Problem:    Win32 GUI: The console dialogs are not supported on MS-Windows,
	    disabling the 'c' flag of 'guioptions'. (Servatius Brandt)
Solution:   Define FEAT_CON_DIALOG also for GUI-only builds.
Files:	    src/feature.h

Patch 6.2.121 (after 6.2.118)
Problem:    Not all make programs support "+=". (Charles Campbell)
Solution:   Use a normal assignment.
Files:	    src/Makefile

Patch 6.2.122 (after 6.2.119)
Problem:    Not all shells can expand [^~].  File missing.  (Guopeng Wen)
Solution:   Use a simpler pattern.  Add the Aap recipe for the maze program
	    and a clean version of the source code.
Files:	    Makefile, runtime/macros/maze/Makefile,
	    runtime/macros/maze/README.txt, runtime/macros/maze/main.aap,
	    runtime/macros/maze/mazeclean.c

Patch 6.2.123 (after 6.2.118)
Problem:    Running configure fails. (Tony Leneis)
Solution:   Change "==" to "=" for a test.
Files:	    src/auto/configure, src/configure.in

Patch 6.2.124 (after 6.2.121)(extra)
Problem:    Mac: Recursive use of M4FLAGS causes problems.  When running Vim
	    directly it can't find the runtime files.  (Emily Jackson)
	    Using GNU constructs causes warnings with other make programs.
	    (Ronald Schild)
Solution:   Use another name for the M4FLAGS variable.
	    Don't remove "Vim.app" from the path.
	    Update the explanation for compiling on the Mac. (Eric Kow)
	    Don't use $(shell ) and $(addprefix ).
Files:	    src/INSTALLmac.txt, src/Makefile, src/misc1.c

Patch 6.2.125 (after 6.2.107)
Problem:    The "winsock2.h" file isn't always available.
Solution:   Don't include this header file.
Files:	    src/netbeans.c

Patch 6.2.126
Problem:    Typing CTRL-C at a confirm() prompt doesn't throw an exception.
Solution:   Reset "mapped_ctrl_c" in get_keystroke(), so that "got_int" is set
	    in _OnChar().
Files:	    src/misc1.c

Patch 6.2.127 (extra)
Problem:    Win32 console: Typing CTRL-C doesn't throw an exception.
Solution:   Set got_int immediately when CTRL-C is typed, don't wait for
	    mch_breakcheck() being called.
Files:	    src/os_win32.c

Patch 6.2.128 (after 6.2.118)
Problem:    src/auto/configure is not consistent with src/configure.in.
Solution:   Use the newly generated configure script.
Files:	    src/auto/configure

Patch 6.2.129
Problem:    When 'number' is set 'wrapmargin' does not work Vi-compatible.
	    (Yasuhiro Matsumoto)
Solution:   Reduce the textwidth when 'number' is set.  Also for 'foldcolumn'
	    and similar things.
Files:	    src/edit.c

Patch 6.2.130 (extra)
Problem:    Win32 console: When 'restorescreen' is not set exiting Vim causes
	    the screen to be cleared. (Michael A. Mangino)
Solution:   Don't clear the screen when exiting and 'restorescreen' isn't set.
Files:	    src/os_win32.c

Patch 6.2.131 (extra)
Problem:    Win32: Font handles are leaked.
Solution:   Free italic, bold and bold-italic handles before overwriting them.
	    (Michael Wookey)
Files:	    src/gui_w48.c

Patch 6.2.132 (extra)
Problem:    Win32: console version doesn't work on latest Windows Server 2003.
Solution:   Copy 12000 instead of 15000 cells at a time to avoid running out
	    of memory.
Files:	    src/os_win32.c

Patch 6.2.133
Problem:    When starting the GUI a bogus error message about 'imactivatekey'
	    may be given.
Solution:   Only check the value of 'imactivatekey' when the GUI is running.
Files:	    src/gui.c, src/option.c

Patch 6.2.134 (extra)
Problem:    Win32: When scrolling parts of the window are redrawn when this
	    isn't necessary.
Solution:   Only invalidate parts of the window when they are obscured by
	    other windows. (Michael Wookey)
Files:	    src/gui_w48.c

Patch 6.2.135
Problem:    An item <> in the ":command" argument is interpreted as <args>.
Solution:   Avoid that <> is recognized as <args>.
Files:	    src/ex_docmd.c

Patch 6.2.136
Problem:    ":e ++enc=latin1 newfile" doesn't set 'fenc' when the file doesn't
	    exist.  (Miroslaw Dobrzanski-Neumann)
Solution:   Set 'fileencoding' to the specified encoding when editing a file
	    that does not exist.
Files:	    src/fileio.c

Patch 6.2.137
Problem:    "d:cmd<CR>" cannot be repeated with ".".  Breaks repeating "d%"
	    when using the matchit plugin.
Solution:   Store the command to be repeated.  This is restricted to
	    single-line commands.
Files:	    src/ex_docmd.c, src/globals.h, src/normal.c, src/vim.h

Patch 6.2.138 (extra)
Problem:    Compilation problem on VMS with dynamic buffer on the stack.
Solution:   Read one byte less than the size of the buffer, so that we can
	    check for the string length without an extra buffer.
Files:	    src/os_vms.c

Patch 6.2.139
Problem:    Code is repeated in the two Perl files.
Solution:   Move common code from if_perl.xs and if_perlsfio.c to vim.h.
	    Also fix a problem with generating prototypes.
Files:	    src/if_perl.xs, src/if_perlsfio.c, src/vim.h

Patch 6.2.140 (after 6.2.121)
Problem:    Mac: Compiling with Python and Perl doesn't work.
Solution:   Adjust the configure check for Python to use "-framework Python"
	    for Python 2.3 on Mac OS/X.
	    Move "-ldl" after "DynaLoader.a" in the link command.
	    Change "perllibs" to "PERL_LIBS".
Files:	    src/auto/configure, src/configure.in, src/config.mk.in

Patch 6.2.141 (extra)
Problem:    Mac: The b_FSSpec field is sometimes unused.
Solution:   Change the #ifdef to FEAT_CW_EDITOR and defined it in feature.h
Files:	    src/fileio.c, src/gui_mac.c, src/structs.h, src/feature.h

Patch 6.2.142 (after 6.2.124)
Problem:    Mac: building without GUI through configure doesn't work.
	    When the system is slow, unpacking the resource file takes too
	    long.
Solution:   Don't always define FEAT_GUI_MAC when MACOS is defined, define it
	    in the Makefile.
	    Add a configure option to skip Darwin detection.
	    Use a Python script to unpack the resources to avoid a race
	    condition. (Taro Muraoka)
Files:	    Makefile, src/Makefile, src/auto/configure, src/configure.in,
	    src/dehqx.py, src/vim.h

Patch 6.2.143
Problem:    Using "K" on Visually selected text doesn't work if it ends in
	    a multi-byte character.
Solution:   Include all the bytes of the last character. (Taro Muraoka)
Files:	    src/normal.c

Patch 6.2.144
Problem:    When "g:html_use_css" is set the HTML header generated by the
	    2html script is wrong.
Solution:   Add the header after adding HREF for links.
	    Also use ":normal!" instead of ":normal" to avoid mappings
	    getting in the way.
Files:	    runtime/syntax/2html.vim

Patch 6.2.145 (after 6.2.139)
Problem:    Undefining "bool" doesn't work for older systems. (Wojtek Pilorz)
Solution:   Only undefine "bool" on Mac OS.
Files:	    src/vim.h

Patch 6.2.146
Problem:    On some systems the prototype for iconv() is wrong, causing a
	    warning message.
Solution:   Use a cast (void *) to avoid the warning. (Charles Campbell)
Files:	    src/fileio.c, src/mbyte.c

Patch 6.2.147
Problem:    ":s/pat/\=col('.')" always replaces with "1".
Solution:   Set the cursor to the start of the match before substituting.
	    (Helmut Stiegler)
Files:	    src/ex_cmds.c

Patch 6.2.148
Problem:    Can't break an Insert into several undoable parts.
Solution:   Add the CTRL-G u command.
Files:	    runtime/doc/insert.txt, src/edit.c

Patch 6.2.149
Problem:    When the cursor is on a line past 21,474,748 the indicated
	    percentage of the position is invalid.  With that many lines
	    "100%" causes a negative cursor line number, resulting in a crash.
	    (Daniel Goujot)
Solution:   Divide by 100 instead of multiplying.  Avoid overflow when
	    computing the line number for "100%".
Files:	    src/buffer.c, src/ex_cmds2.c, src/normal.c

Patch 6.2.150
Problem:    When doing "vim - < file" lines are broken at NUL chars.
	    (Daniel Goujot)
Solution:   Change NL characters back to NUL when reading from the temp
	    buffer.
Files:	    src/fileio.c

Patch 6.2.151
Problem:    When doing "vim --remote +startinsert file" some commands are
	    inserted as text. (Klaus Bosau)
Solution:   Put all the init commands in one Ex line, not using a <CR>, so
	    that Insert mode isn't started too early.
Files:	    src/main.c

Patch 6.2.152
Problem:    The cursor() function doesn't reset the column offset for
	    'virtualedit'.
Solution:   Reset the offset to zero. (Helmut Stiegler)
Files:	    src/eval.c

Patch 6.2.153
Problem:    Win32: ":lang german" doesn't use German messages.
Solution:   Add a table to translate the Win32 language names to two-letter
	    language codes.
Files:	    src/ex_cmds2.c

Patch 6.2.154
Problem:    Python bails out when giving a warning message. (Eugene
	    Minkovskii)
Solution:   Set sys.argv[] to an empty string.
Files:	    src/if_python.c

Patch 6.2.155
Problem:    Win32: Using ":tjump www" in a help file gives two results.
	    (Dave Roberts)
Solution:   Ignore differences between slashes and backslashes when checking
	    for identical tag matches.
Files:	    src/tag.c

Patch 6.2.156 (after 6.2.125)
Problem:    Win32: Netbeans fails to build, EINTR is not defined.
Solution:   Redefine EINTR to WSAEINTR. (Mike Williams)
Files:	    src/netbeans.c

Patch 6.2.157
Problem:    Using "%p" in 'errorformat' gives a column number that is too
	    high.
Solution:   Set the flag to use the number as a virtual column.  (Lefteris
	    Koutsoloukas)
Files:	    src/quickfix.c

Patch 6.2.158
Problem:    The sed command on Solaris and HPUX doesn't work for a line that
	    doesn't end in a newline.
Solution:   Add a newline when feeding text to sed. (Mark Waggoner)
Files:	    src/configure.in, src/auto/configure

Patch 6.2.159
Problem:    When using expression folding and 'foldopen' is "undo" an undo
	    command doesn't always open the fold.
Solution:   Save and restore the KeyTyped variable when evaluating 'foldexpr'.
	    (Taro Muraoka)
Files:	    src/fold.c

Patch 6.2.160
Problem:    When 'virtualedit' is "all" and 'selection is "exclusive",
	    selecting a double-width character below a single-width character
	    may cause a crash.
Solution:   Avoid overflow on unsigned integer decrement. (Taro Muraoka)
Files:	    src/normal.c

Patch 6.2.161 (extra)
Problem:    VMS: Missing header file.  Reading input busy loops.
Solution:   Include termdef.h.  Avoid the use of a wait function in
	    vms_read().  (Frank Ries)
Files:	    src/os_unix.h, src/os_vms.c

Patch 6.2.162
Problem:    ":redraw" doesn't always display the text that includes the cursor
	    position, e.g. after ":call cursor(1, 0)". (Eugene Minkovskii)
Solution:   Call update_topline() before redrawing.
Files:	    src/ex_docmd.c

Patch 6.2.163
Problem:    "make install" may also copy AAPDIR directories.
Solution:   Delete AAPDIR directories, just like CVS directories.
Files:	    src/Makefile

Patch 6.2.164 (after 6.2.144)
Problem:    When "g:html_use_css" is set the HTML header generated by the
	    2html script is still wrong.
Solution:   Search for a string instead of jumping to a fixed line number.
	    Go to the start of the line before inserting the header.
	    (Jess Thrysoee)
Files:	    runtime/syntax/2html.vim

Patch 6.2.165
Problem:    The configure checks hang when using autoconf 2.57.
Solution:   Invoke AC_PROGRAM_EGREP to set $EGREP. (Aron Griffis)
Files:	    src/auto/configure, src/configure.in

Patch 6.2.166
Problem:    When $GZIP contains "-N" editing compressed files doesn't work
	    properly.
Solution:   Add "-n" to "gzip -d" to avoid restoring the file name. (Oyvind
	    Holm)
Files:	    runtime/plugin/gzip.vim

Patch 6.2.167
Problem:    The Python interface leaks memory when assigning lines to a
	    buffer. (Sergey Khorev)
Solution:   Do not copy the line when calling ml_replace().
Files:	    src/if_python.c

Patch 6.2.168
Problem:    Python interface: There is no way to get the indices from a range
	    object.
Solution:   Add the "start" and "end" attributes. (Maurice S. Barnum)
Files:	    src/if_python.c, runtime/doc/if_pyth.txt

Patch 6.2.169
Problem:    The prototype for _Xmblen() appears in a recent XFree86 header
	    file, causing a warning for our prototype. (Hisashi T Fujinaka)
Solution:   Move the prototype to an osdef file, so that it's filtered out.
Files:	    src/mbyte.c, src/osdef2.h.in

Patch 6.2.170
Problem:    When using Sun WorkShop the current directory isn't changed to
	    where the file is.
Solution:   Set the 'autochdir' option when using WorkShop.  And avoid using
	    the basename when 'autochdir' is not set.
Files:	    src/gui_x11.c, src/ex_cmds.c

Patch 6.2.171 (after 6.2.163)
Problem:    The "-or" argument of "find" doesn't work for SysV systems.
Solution:   Use "-o" instead. (Gordon Prieur)
Files:	    src/Makefile

Patch 6.2.172 (after 6.2.169)
Problem:    The prototype for _Xmblen() still causes trouble.
Solution:   Include the X11 header file that defines the prototype.
Files:	    src/osdef2.h.in, src/osdef.sh

Patch 6.2.173 (extra)
Problem:    Win32: Ruby interface doesn't work with Ruby 1.8.0 for other
	    compilers than MSVC.
Solution:   Fix the BC5, Cygwin and Mingw makefiles. (Dan Sharp)
Files:	    src/Make_bc5.mak, src/Make_cyg.mak, src/Make_ming.mak

Patch 6.2.174
Problem:    After the ":intro" message only a mouse click in the last line
	    gets past the hit-return prompt.
Solution:   Accept a click at or below the hit-return prompt.
Files:	    src/gui.c, src/message.c

Patch 6.2.175
Problem:    Changing 'backupext' in a *WritePre autocommand doesn't work.
	    (William Natter)
Solution:   Move the use of p_bex to after executing the *WritePre
	    autocommands.  Also avoids reading allocated memory after freeing.
Files:	    src/fileio.c

Patch 6.2.176
Problem:    Accented characters in translated help files are not handled
	    correctly. (Fabien Vayssiere)
Solution:   Include "192-255" in 'iskeyword' for the help window.
Files:	    src/ex_cmds.c

Patch 6.2.177 (extra)
Problem:    VisVim: Opening a file with a space in the name doesn't work. (Rob
	    Retter)  Arbitrary commands are being executed. (Neil Bird)
Solution:   Put a backslash in front of every space in the file name.
	    (Gerard Blais)  Terminate the CTRL-\ CTRL-N command with a NUL.
Files:	    src/VisVim/Commands.cpp, src/VisVim/VisVim.rc

Patch 6.2.178
Problem:    People who don't know how to exit Vim try pressing CTRL-C.
Solution:   Give a message how to exit Vim when CTRL-C is pressed and it
	    doesn't cancel anything.
Files:	    src/normal.c

Patch 6.2.179 (extra)
Problem:    The en_gb messages file isn't found on case sensitive systems.
Solution:   Rename en_gb to en_GB. (Mike Williams)
Files:	    src/po/en_gb.po, src/po/en_GB.po, src/po/Make_ming.mak,
	    src/po/Make_mvc.mak, src/po/Makefile, src/po/README_mvc.txt

Patch 6.2.180
Problem:    Compiling with GTK2 on Win32 doesn't work.
Solution:   Include gdkwin32.h instead of gdkx.h. (Srinath Avadhanula)
Files:	    src/gui_gtk.c, src/gui_gtk_f.c, src/gui_gtk_x11.c, src/mbyte.c

Patch 6.2.181 (after 6.2.171)
Problem:    The "-o" argument of "find" has lower priority than the implied
	    "and" with "-print".
Solution:   Add parenthesis around the "-o" expression. (Gordon Prieur)
Files:	    src/Makefile

Patch 6.2.182 (after 6.2.094)
Problem:    Compilation with tiny features fails because of missing
	    get_past_head() function.
Solution:   Adjust the #ifdef for get_past_head().
Files:	    src/misc1.c

Patch 6.2.183 (after 6.2.178)
Problem:    Warning for char/unsigned char mixup.
Solution:   Use MSG() instead of msg(). (Tony Leneis)
Files:	    src/normal.c

Patch 6.2.184
Problem:    With 'formatoptions' set to "1aw" inserting text may cause the
	    paragraph to be ended. (Alan Schmitt)
Solution:   Temporarily add an extra space to make the paragraph continue
	    after moving the word after the cursor to the next line.
	    Also format when pressing Esc.
Files:	    src/edit.c, src/normal.c, src/proto/edit.pro

Patch 6.2.185
Problem:    Restoring a session with zero-height windows does not work
	    properly. (Charles Campbell)
Solution:   Accept a zero argument to ":resize" as intended.  Add a window
	    number argument to ":resize" to be able to set the size of other
	    windows, because the current window cannot be zero-height.
	    Fix the explorer plugin to avoid changing the window sizes.  Add
	    the winrestcmd() function for this.
Files:	    runtime/doc/eval.txt, runtime/plugin/explorer.vim, src/eval.c,
	    src/ex_cmds.h, src/ex_docmd.c, src/proto/window.pro, src/window.c

Patch 6.2.186 (after 6.2.185)
Problem:    Documentation file eval.txt contains examples without indent.
Solution:   Insert the indent.  Also fix other mistakes.
Files:	    runtime/doc/eval.txt

Patch 6.2.187
Problem:    Using Insure++ reveals a number of bugs.  (Dominique Pelle)
Solution:   Initialize variables where needed.  Free allocated memory to avoid
	    leaks.  Fix comparing tags to avoid reading past allocated memory.
Files:	    src/buffer.c, src/diff.c, src/fileio.c, src/mark.c, src/misc1.c,
	    src/misc2.c, src/ops.c, src/option.c, src/tag.c, src/ui.c

Patch 6.2.188 (extra)
Problem:    MS-Windows: Multi-byte characters in a filename cause trouble for
	    the window title.
Solution:   Return when the wide function for setting the title did its work.
Files:	    src/gui_w48.c

Patch 6.2.189
Problem:    When setting 'viminfo' after editing a new buffer its marks are
	    not stored. (Keith Roberts)
Solution:   Set the "b_marks_read" flag when skipping to read marks from the
	    viminfo file.
Files:	    src/fileio.c

Patch 6.2.190
Problem:    When editing a compressed files, marks are lost.
Solution:   Add the ":lockmarks" modifier and use it in the gzip plugin.
	    Make exists() also check for command modifiers, so that the
	    existence of ":lockmarks" can be checked for.
	    Also add ":keepmarks" to avoid that marks are deleted when
	    filtering text.
	    When deleting lines put marks 'A - 'Z and '0 - '9 at the first
	    deleted line instead of clearing the mark.  They were kept in the
	    viminfo file anyway.
	    Avoid that the gzip plugin puts deleted text in registers.
Files:	    runtime/doc/motion.txt, runtime/plugin/gzip.vim, src/ex_cmds.c,
	    src/ex_docmd.c, src/mark.c, src/structs.h

Patch 6.2.191
Problem:    The intro message is outdated.  Information about sponsoring and
	    registering is missing.
Solution:   Show info about sponsoring and registering Vim in the intro
	    message now and then.  Add help file about sponsoring.
Files:	    runtime/doc/help.txt, runtime/doc/sponsor.txt, runtime/doc/tags,
	    runtime/menu.vim, src/version.c

Patch 6.2.192
Problem:    Using CTRL-T and CTRL-D with "gR" messes up the text.  (Jonathan
	    Hankins)
Solution:   Avoid calling change_indent() recursively.
Files:	    src/edit.c

Patch 6.2.193
Problem:    When recalling a search pattern from the history from a ":s,a/c,"
	    command the '/' ends the search string. (JC van Winkel)
Solution:   Store the separator character with the history entries.  Escape
	    characters when needed, replace the old separator with the new one.
	    Also fixes that recalling a "/" search for a "?" command messes up
	    trailing flags.
Files:	    src/eval.c, src/ex_getln.c, src/normal.c, src/proto/ex_getln.pro,
	    src/search.c, src/tag.c

Patch 6.2.194 (after 6.2.068)
Problem:    For NetBeans, instead of writing the file and sending an event
	    about it, tell NetBeans to write the file.
Solution:   Add the "save" command, "netbeansBuffer" command and
	    "buttonRelease" event to the netbeans protocol.  Updated the
	    interface to version 2.2.  (Gordon Prieur)
	    Also: open a fold when the cursor has been positioned.
	    Also: fix memory leak, free result of nb_quote().
Files:	    runtime/doc/netbeans.txt, src/fileio.c, src/netbeans.c,
	    src/normal.c, src/proto/netbeans.pro, src/structs.h

Patch 6.2.195 (after 6.2.190)
Problem:    Compiling fails for missing CPO_REMMARK symbol.
Solution:   Add the patch I forgot to include...
Files:	    src/option.h

Patch 6.2.196 (after 6.2.191)
Problem:    Rebuilding the documentation doesn't use the sponsor.txt file.
Solution:   Add sponsor.txt to the Makefile. (Christian J. Robinson)
Files:	    runtime/doc/Makefile

Patch 6.2.197
Problem:    It is not possible to force a redraw of status lines. (Gary
	    Johnson)
Solution:   Add the ":redrawstatus" command.
Files:	    runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c,
	    src/screen.c

Patch 6.2.198
Problem:    A few messages are not translated. (Ernest Adrogue)
Solution:   Mark the messages to be translated.
Files:	    src/ex_cmds.c

Patch 6.2.199 (after 6.2.194)
Problem:    Vim doesn't work perfectly well with NetBeans.
Solution:   When NetBeans saves the file, reset the timestamp to avoid "file
	    changed" warnings.  Close a buffer in a proper way.  Don't try
	    giving a debug message with an invalid pointer.  Send a
	    newDotAndMark message when needed.  Report a change by the "r"
	    command to NetBeans.  (Gordon Prieur)
Files:	    src/netbeans.c, src/normal.c

Patch 6.2.200
Problem:    When recovering a file, 'fileformat' is always the default, thus
	    writing the file may result in differences. (Penelope Fudd)
Solution:   Before recovering the file try reading the original file to obtain
	    the values of 'fileformat', 'fileencoding', etc.
Files:	    src/memline.c

Patch 6.2.201
Problem:    When 'autowriteall' is set ":qall" still refuses to exit if there
	    is a modified buffer. (Antoine Mechelynck)
Solution:   Attempt writing modified buffers as intended.
Files:	    src/ex_cmds2.c

Patch 6.2.202
Problem:    Filetype names of CHILL and ch script are confusing.
Solution:   Rename "ch" to "chill" and "chscript" to "ch".
Files:	    runtime/filetype.vim, runtime/makemenu.vim, runtime/synmenu.vim
	    runtime/syntax/ch.vim, runtime/syntax/chill.vim

Patch 6.2.203
Problem:    With characterwise text that has more than one line, "3P" works
	    wrong.  "3p" has the same problem.  There also is a display
	    problem. (Daniel Goujot)
Solution:   Perform characterwise puts with a count in the right position.
Files:	    src/ops.c

Patch 6.2.204 (after 6.2.086)
Problem:    "]]" in a file with closed folds moves to the end of the file.
	    (Nam SungHyun)
Solution:   Find one position in each closed fold, then move to after the fold.
Files:	    src/search.c

Patch 6.2.205 (extra)
Problem:    MS-Windows: When the taskbar is at the left or top of the screen,
	    the Vim window placement is wrong.
Solution:   Compute the size and position of the window correctly. (Taro
	    Muraoka)
Files:	    src/gui_w32.c, src/gui_w48.c

Patch 6.2.206
Problem:    Multi-byte characters cannot be used as hotkeys in a console
	    dialog.  (Mattias Erkisson)
Solution:   Handle multi-byte characters properly.  Also put () or [] around
	    default hotkeys.
Files:	    src/message.c, src/macros.h

Patch 6.2.207
Problem:    When 'encoding' is a multi-byte encoding, expanding an
	    abbreviation that starts where insertion started results in
	    characters before the insertion to be deleted.  (Xiangjiang Ma)
Solution:   Stop searching leftwards for the start of the word at the position
	    where insertion started.
Files:	    src/getchar.c

Patch 6.2.208
Problem:    When using fold markers, three lines in a row have the start
	    marker and deleting the first one with "dd", a nested fold is not
	    deleted.  (Kamil Burzynski)
	    Using marker folding, a level 1 fold doesn't stop when it is
	    followed by "{{{2", starting a level 2 fold.
Solution:   Don't stop updating folds at the end of a change when the nesting
	    level of folds is larger than the fold level.
	    Correctly compute the number of folds that start at "{{{2".
	    Also avoid a crash for a NULL pointer.
Files:	    src/fold.c

Patch 6.2.209
Problem:    A bogus fold is created when using "P" while the cursor is in the
	    middle of a closed fold. (Kamil Burzynski)
Solution:   Correct the line number where marks are modified for closed folds.
Files:	    src/ops.c

Patch 6.2.210 (extra)
Problem:    Mac OSX: antialiased fonts are not supported.
Solution:   Add the 'antialias' option to switch on antialiasing on Mac OSX
	    10.2 and later. (Peter Cucka)
Files:	    runtime/doc/options.txt, src/gui_mac.c, src/option.h, src/option.c

Patch 6.2.211 (extra)
Problem:    Code for handling file dropped on Vim is duplicated.
Solution:   Move the common code to gui_handle_drop().
	    Add code to drop the files in the window under the cursor.
	    Support drag&drop on the Macintosh.  (Taro Muraoka)
	    When dropping a directory name edit that directory (using the
	    explorer plugin)
	    Fix that changing directory with Shift pressed didn't work for
	    relative path names.
Files:	    src/fileio.c, src/gui.c, src/gui_gtk_x11.c, src/gui_mac.c,
	    src/gui_w48.c, src/proto/fileio.pro, src/proto/gui.pro

Patch 6.2.212 (after 6.2.199)
Problem:    NetBeans: Replacing with a count is not handled correctly.
Solution:   Move reporting the change outside of the loop for the count.
	    (Gordon Prieur)
Files:	    src/normal.c

Patch 6.2.213 (after 6.2.208)
Problem:    Using marker folding, "{{{1" doesn't start a new fold when already
	    at fold level 1. (Servatius Brandt)
Solution:   Correctly compute the number of folds that start at "{{{1".
Files:	    src/fold.c

Patch 6.2.214 (after 6.2.211) (extra)
Problem:    Warning for an unused variable.
Solution:   Delete the declaration. (Bill McCarthy)
Files:	    src/gui_w48.c

Patch 6.2.215
Problem:    NetBeans: problems saving an unmodified file.
Solution:   Add isNetbeansModified() function.  Disable netbeans_unmodified().
	    (Gordon Prieur)
Files:	    src/fileio.c, src/netbeans.c, src/proto/netbeans.pro,
	    runtime/doc/netbeans.txt, runtime/doc/tags

Patch 6.2.216 (after 6.2.206)
Problem:    Multi-byte characters still cannot be used as hotkeys in a console
	    dialog.  (Mattias Erkisson)
Solution:   Make get_keystroke() handle multi-byte characters.
Files:	    src/misc1.c

Patch 6.2.217
Problem:    GTK: setting the title doesn't always work correctly.
Solution:   Invoke gui_mch_settitle(). (Tomas Stehlik)
Files:	    src/os_unix.c

Patch 6.2.218
Problem:    Warning for function without prototype.
Solution:   Add argument types to the msgCB field of the BalloonEval struct.
Files:	    src/gui_beval.h

Patch 6.2.219
Problem:    Syntax highlighting hangs on an empty match of an item with a
	    nextgroup.  (Charles Campbell)
Solution:   Remember that the item has already matched and don't match it
	    again at the same position.
Files:	    src/syntax.c

Patch 6.2.220
Problem:    When a Vim server runs in a console a remote command isn't handled
	    before a key is typed.  (Joshua Neuheisel)
Solution:   Don't try reading more input when a client-server command has been
	    received.
Files:	    src/os_unix.c

Patch 6.2.221
Problem:    No file name completion for ":cscope add".
Solution:   Add the XFILE flag to ":cscope". (Gary Johnson)
Files:	    src/ex_cmds.h

Patch 6.2.222
Problem:    Using "--remote" several times on a row only opens some of the
	    files. (Dany St-Amant)
Solution:   Don't delete all typeahead when the server receives a command from
	    a client, only delete typed characters.
Files:	    src/main.c

Patch 6.2.223
Problem:    Cscope: Avoid a hang when cscope waits for a response while Vim
	    waits for a prompt.
	    Error messages from Cscope mess up the display.
Solution:   Detect the hit-enter message and respond by sending a return
	    character to cscope. (Gary Johnson)
	    Use EMSG() and strerror() when possible.  Replace perror() with
	    PERROR() everywhere, add emsg3().
Files:	    src/diff.c, src/if_cscope.c, src/integration.c, src/message.c,
	    src/proto/message.pro, src/misc2.c, src/netbeans.c, src/vim.h

Patch 6.2.224
Problem:    Mac: Can't compile with small features. (Axel Kielhorn)
Solution:   Also include vim_chdirfile() when compiling for the Mac.
Files:	    src/misc2.c

Patch 6.2.225
Problem:    NetBeans: Reported modified state isn't exactly right.
Solution:   Report a file being modified in the NetBeans way.
Files:	    src/netbeans.c

Patch 6.2.226 (after 6.2.107) (extra)
Problem:    The "ws2-32.lib" file isn't always available.
Solution:   Use "WSock32.lib" instead. (Taro Muraoka, Dan Sharp)
Files:	    src/Make_cyg.mak, src/Make_ming.mak, src/Make_mvc.mak

Patch 6.2.227 (extra)
Problem:    The "PC" symbol is defined but not used anywhere.
Solution:   Remove "-DPC" from the makefiles.
Files:	    src/Make_bc3.mak, src/Make_bc5.mak, src/Make_cyg.mak,
	    src/Make_ming.mak

Patch 6.2.228
Problem:    Receiving CTRL-\ CTRL-N after typing "f" or "m" doesn't switch Vim
	    back to Normal mode.  Same for CTRL-\ CTRL-G.
Solution:   Check if the character typed after a command is CTRL-\ and obtain
	    another character to check for CTRL-N or CTRL-G, waiting up to
	    'ttimeoutlen' msec.
Files:	    src/normal.c

Patch 6.2.229
Problem:    ":function" with a name that uses magic curlies does not work
	    inside a function.  (Servatius Brandt)
Solution:   Skip over the function name properly.
Files:	    src/eval.c

Patch 6.2.230 (extra)
Problem:    Win32: a complex pattern may cause a crash.
Solution:   Use __try and __except to catch the exception and handle it
	    gracefully, when possible.  Add myresetstkoflw() to reset the
	    stack overflow. (Benjamin Peterson)
Files:	    src/Make_bc5.mak, src/os_mswin.c src/os_win32.c, src/os_win32.h,
	    src/proto/os_win32.pro, src/regexp.c

Patch 6.2.231 (after 6.2.046)
Problem:    Various problems when an error exception is raised from within a
	    builtin function.  When it is invoked while evaluating arguments
	    to a function following arguments are still evaluated.  When
	    invoked with a line range it will be called for remaining lines.
Solution:   Update "force_abort" also after calling a builtin function, so
	    that aborting() always returns the correct value. (Servatius
	    Brandt)
Files:	    src/eval.c, src/ex_eval.c, src/proto/ex_eval.pro,
	    src/testdir/test49.ok, src/testdir/test49.vim

Patch 6.2.232
Problem:    ":python vim.command('python print 2*2')" crashes Vim.  (Eugene
	    Minkovskii)
Solution:   Disallow executing a Python command recursively and give an error
	    message.
Files:	    src/if_python.c

Patch 6.2.233
Problem:    On Mac OSX adding -pthread for Python only generates a warning.
	    The test for Perl threads rejects Perl while it's OK.
	    Tcl doesn't work at all.
	    The test for Ruby fails if ruby exists but there are no header
	    files.  The Ruby library isn't detected properly
Solution:   Avoid adding -pthread on Mac OSX.  Accept Perl threads when it's
	    not the 5.5 threads.
	    Use the Tcl framework for header files.  For Ruby rename cWindow
	    to cVimWindow to avoid a name clash. (Ken Scott)
	    Only enable Ruby when the header files can be found.  Use "-lruby"
	    instead of "libruby.a" when it can't be found.
Files:	    src/auto/configure, src/configure.in, src/if_ruby.c

Patch 6.2.234
Problem:    GTK 2 GUI: ":sp" and the ":q" leaves the cursor on the command
	    line.
Solution:   Flush output before removing scrollbars.  Also do this in other
	    places where gui_mch_*() functions are invoked.
Files:	    src/ex_cmds.c, src/option.c, src/window.c

Patch 6.2.235 (extra)
Problem:    Win32: Cursor isn't removed with a 25x80 window and doing:
	    "1830ia<Esc>400a-<Esc>0w0". (Yasuhiro Matsumoto)
Solution:   Remove the call to gui_undraw_cursor() from gui_mch_insert_lines().
Files:	    src/gui_w48.c

Patch 6.2.236
Problem:    Using gvim with Agide gives "connection lost" error messages.
Solution:   Only give the "connection lost" message when the buffer was once
	    owned by NetBeans.
Files:	    src/netbeans.c, src/structs.h

Patch 6.2.237
Problem:    GTK 2: Thai text is drawn wrong.  It changes when moving the
	    cursor over it.
Solution:   Disable the shaping engine, it moves combining characters to a
	    wrong position and combines characters, while drawing the cursor
	    doesn't combine characters.
Files:	    src/gui_gtk_x11.c

Patch 6.2.238 (after 6.2.231)
Problem:    ":function" does not work inside a while loop. (Servatius Brandt)
Solution:   Add get_while_line() and pass it to do_one_cmd() when in a while
	    loop, so that all lines are stored and can be used again when
	    repeating the loop.
	    Adjust test 49 so that it checks for the fixed problems.
	    (Servatius Brandt)
Files:	    src/digraph.c, src/ex_cmds2.c, src/ex_docmd.c, src/ex_eval.c,
	    src/proto/ex_cmds2.pro, src/proto/ex_docmd.pro,
	    src/testdir/test49.in, src/testdir/test49.ok,
	    src/testdir/test49.vim

Patch 6.2.239
Problem:    GTK 2: With closed folds the arrow buttons of a vertical scrollbar
	    often doesn't scroll. (Moshe Kaminsky)
Solution:   Hackish solution: Detect that the button was pressed from the
	    mouse pointer position.
Files:	    src/gui_gtk.c, src/gui.c

Patch 6.2.240
Problem:    GTK 2: Searching for bitmaps for the toolbar doesn't work as with
	    other systems.  Need to explicitly use "icon=name".  (Ned Konz,
	    Christian J.  Robinson)
Solution:   Search for icons like done for Motif.
Files:	    src/gui_gtk.c

Patch 6.2.241
Problem:    GTK 2: Search and Search/Replace dialogs are synced, that makes no
	    sense.  Buttons are sometimes greyed-out. (Jeremy Messenger)
Solution:   Remove the code to sync the two dialogs.  Adjust the code to react
	    to an empty search string to also work for GTK2. (David Necas)
Files:	    src/gui_gtk.c

Patch 6.2.242
Problem:    Gnome: "vim --help" only shows the Gnome arguments, not the Vim
	    arguments.
Solution:   Don't let the Gnome code remove the "--help" argument and don't
	    exit at the end of usage().
Files:	    src/gui_gtk_x11.c, src/main.c

Patch 6.2.243 (extra)
Problem:    Mac: Dropping a file on a Vim icon causes a hit-enter prompt.
Solution:   Move the dropped files to the global argument list, instead of the
	    usual drop handling. (Eckehard Berns)
Files:	    src/main.c, src/gui_mac.c

Patch 6.2.244
Problem:    ':echo "\xf7"' displays the illegal byte as if it was a character
	    and leaves "cho" after it.
Solution:   When checking the length of a UTF-8 byte sequence and it's shorter
	    than the number of bytes available, assume it's an illegal byte.
Files:	    src/mbyte.c

Patch 6.2.245
Problem:    Completion doesn't work for ":keepmarks" and ":lockmarks".
Solution:   Add the command modifiers to the table of commands. (Madoka
	    Machitani)
Files:	    src/ex_cmds.h, src/ex_docmd.c

Patch 6.2.246
Problem:    Mac: Starting Vim from Finder doesn't show error messages.
Solution:   Recognize that output is being displayed by stderr being
	    "/dev/console".  (Eckehard Berns)
Files:	    src/main.c, src/message.c

Patch 6.2.247 (after 6.2.193)
Problem:    When using a search pattern from the viminfo file the last
	    character is replaced with a '/'.
Solution:   Store the separator character in the right place. (Kelvin Lee)
Files:	    src/ex_getln.c

Patch 6.2.248
Problem:    GTK: When XIM is enabled normal "2" and keypad "2" cannot be
	    distinguished.
Solution:   Detect that XIM changes the keypad key to the expected ASCII
	    character and fall back to the non-XIM code. (Neil Bird)
Files:	    src/gui_gtk_x11.c, src/mbyte.c, src/proto/mbyte.pro

Patch 6.2.249
Problem:    ":cnext" moves to the error in the next file, but there is no
	    method to go back.
Solution:   Add ":cpfile" and ":cNfile".
Files:	    src/ex_cmds.h, src/quickfix.c, src/vim.h, runtime/doc/quickfix.txt

Patch 6.2.250
Problem:    Memory leaks when using signs. (Xavier de Gaye)
Solution:   Delete the list of signs when unloading a buffer.
Files:	    src/buffer.c

Patch 6.2.251
Problem:    GTK: The 'v' flag in 'guioptions' doesn't work. (Steve Hall)
	    Order of buttons is reversed for GTK 2.2.4.  Don't always get
	    focus back after handling a dialog.
Solution:   Make buttons appear vertically when desired.  Reverse the order in
	    which buttons are added to a dialog.  Move mouse pointer around
	    when the dialog is done and we don't have focus.
Files:	    src/gui_gtk.c

Patch 6.2.252 (extra, after 6.2.243)
Problem:    Mac: Dropping a file on a Vim icon causes a hit-enter prompt for
	    Mac OS classic.
Solution:   Remove the #ifdef from the code that fixes it for Mac OSX.
Files:	    src/gui_mac.c

Patch 6.2.253
Problem:    When 'tagstack' is not set a ":tag id" command does not work after
	    a ":tjump" command.
Solution:   Set "new_tag" when 'tagstack' isn't set. (G. Narendran)
Files:	    src/tag.c

Patch 6.2.254
Problem:    May run out of space for error messages.
Solution:   Keep room for two more bytes.
Files:	    src/quickfix.c

Patch 6.2.255
Problem:    GTK: A new item in the popup menu is put just after instead of
	    just before the right item. (Gabriel Zachmann)
Solution:   Don't increment the menu item index.
Files:	    src/gui_gtk.c

Patch 6.2.256
Problem:    Mac: "macroman" encoding isn't recognized, need to use
	    "8bit-macroman.
Solution:   Recognize "macroman" with an alias "mac". (Eckehard Berns)
Files:	    src/mbyte.c

Patch 6.2.257 (after 6.2.250)
Problem:    Signs are deleted for ":bdel", but they could still be useful.
Solution:   Delete signs only for ":bwipe".
Files:	    src/buffer.c

Patch 6.2.258
Problem:    GUI: can't disable (grey-out) a popup menu item.  (Ajit Thakkar)
Solution:   Loop over the popup menus for all modes.
Files:	    src/menu.c

Patch 6.2.259
Problem:    If there are messages when exiting, on the console there is a
	    hit-enter prompt while the message can be read; in the GUI the
	    message may not be visible.
Solution:   Use the hit-enter prompt when there is an error message from
	    writing the viminfo file or autocommands, or when there is any
	    output in the GUI and 'verbose' is set.  Don't use a hit-enter
	    prompt for the non-GUI version unless there is an error message.
Files:	    src/main.c

Patch 6.2.260
Problem:    GTK 2: Can't quit a dialog with <Esc>.
	    GTK 1 and 2: <Enter> always gives a result, even when the default
	    button has been disabled.
Solution:   Handle these keys explicitly.  When no default button is specified
	    use the first one (works mostly like it was before).
Files:	    src/gui_gtk.c

Patch 6.2.261
Problem:    When 'autoindent' and 'cindent' are set and a line is recognized
	    as a comment, starting a new line won't do 'cindent' formatting.
Solution:   Also use 'cindent' formatting for lines that are used as a
	    comment. (Servatius Brandt)
Files:	    src/misc1.c

Patch 6.2.262
Problem:    1 CTRL-W w beeps, even though going to the first window is
	    possible. (Charles Campbell)
Solution:   Don't beep.
Files:	    src/window.c

Patch 6.2.263
Problem:    Lint warnings: Duplicate function prototypes, duplicate macros,
	    use of a zero character instead of a zero pointer, unused
	    variable.  Clearing allocated memory in a complicated way.
Solution:   Remove the function prototypes from farsi.h.  Remove the
	    duplicated lines in keymap.h.  Change getvcol() argument from NUL
	    to NULL.  Remove the "col" variable in regmatch().  Use
	    lalloc_clear() instead of lalloc(). (Walter Briscoe)
Files:	    src/farsi.h, src/keymap.h, src/ops.c, src/regexp.c, src/search.c

Patch 6.2.264 (after 6.2.247)
Problem:    Writing past allocated memory when using a command line from the
	    viminfo file.
Solution:   Store the NUL in the right place.
Files:	    src/ex_getln.c

Patch 6.2.265
Problem:    Although ":set" is not allowed in the sandbox, ":let &opt = val"
	    works.
Solution:   Do allow changing options in the sandbox, but not the ones that
	    can't be changed from a modeline.
Files:	    src/ex_cmds.h, src/options.c

Patch 6.2.266
Problem:    When redirecting output and using ":silent", line breaks are
	    missing from output of ":map" and ":tselect".  Alignment of
	    columns is wrong.
Solution:   Insert a line break where "msg_didout" was tested.  Update msg_col
	    when redirecting and using ":silent".
Files:	    src/getchar.c, src/message.c

Patch 6.2.267 (extra)
Problem:    Win32: "&&" in a tearoff menu is not shown. (Luc Hermitte)
Solution:   Use the "name" item from the menu instead of the "dname" item.
Files:	    src/gui_w32.c, src/menu.c

Patch 6.2.268
Problem:    GUI: When changing 'guioptions' part of the window may be off
	    screen. (Randall Morris)
Solution:   Adjust the size of the window when changing 'guioptions', but only
	    when adding something.
Files:	    src/gui.c

Patch 6.2.269
Problem:    Diff mode does not highlight a change in a combining character.
	    (Raphael Finkel)
Solution:   Make diff_find_change() multi-byte aware: find the start byte of
	    a character that contains a change.
Files:	    src/diff.c

Patch 6.2.270
Problem:    Completion in Insert mode, then repeating with ".", doesn't handle
	    composing characters in the completed text. (Raphael Finkel)
Solution:   Don't skip over composing chars when adding completed text to the
	    redo buffer.
Files:	    src/getchar.c

Patch 6.2.271
Problem:    NetBeans: Can't do "tail -f" on the log.  Passing socket info with
	    an argument or environment variable is not secure.
Solution:   Wait after initializing the log.  Allow passing the socket info
	    through a file. (Gordon Prieur)
Files:	    runtime/doc/netbeans.txt, src/main.c, src/netbeans.c

Patch 6.2.272
Problem:    When the "po" directory exists, but "po/Makefile" doesn't,
	    building fails.  Make loops when the "po" directory has been
	    deleted after running configure.
Solution:   Check for the "po/Makefile" instead of just the "po" directory.
	    Check this again before trying to run make with that Makefile.
Files:	    src/auto/configure, src/configure.in, src/Makefile

Patch 6.2.273
Problem:    Changing the sort order in an explorer window for an empty
	    directory produces error messages. (Doug Kearns)
Solution:   When an invalid range is used for a function that is not going to
	    be executed, skip over the arguments anyway.
Files:	    src/eval.c

Patch 6.2.274
Problem:    ":print" skips empty lines when 'list' is set and there is no
	    "eol" in 'listchars'. (Yakov Lerner)
Solution:   Skip outputting a space for an empty line only when 'list' is set
	    and the end-of-line character is not empty.
Files:	    src/message.c

Patch 6.2.275 (extra, after 6.2.267)
Problem:    Warning for uninitialized variable when using gcc.
Solution:   Initialize "acLen" to zero. (Bill McCarthy)
Files:	    src/gui_w32.c

Patch 6.2.276
Problem:    ":echo X()" does not put a line break between the message that X()
	    displays and the text that X() returns. (Yakov Lerner)
Solution:   Invoke msg_start() after evaluating the argument.
Files:	    src/eval.c

Patch 6.2.277
Problem:    Vim crashes when a ":runtime ftplugin/ada.vim" causes a recursive
	    loop. (Robert Nowotniak)
Solution:   Restore "msg_list" before returning from do_cmdline().
Files:	    src/ex_docmd.c

Patch 6.2.278
Problem:    Using "much" instead of "many".
Solution:   Correct the error message.
Files:	    src/eval.c

Patch 6.2.279
Problem:    There is no default choice for a confirm() dialog, now that it is
	    possible not to have a default choice.
Solution:   Make the first choice the default choice.
Files:	    runtime/doc/eval.txt, src/eval.c

Patch 6.2.280
Problem:    "do" and ":diffget" don't work in the first line and the last line
	    of a buffer. (Aron Griffis)
Solution:   Find a difference above the first line and below the last line.
	    Also fix a few display updating bugs.
Files:	    src/diff.c, src/fold.c, src/move.c

Patch 6.2.281
Problem:    PostScript printing doesn't work on Mac OS X 10.3.2.
Solution:   Adjust the header file. (Mike Williams)
Files:	    runtime/print/prolog.ps

Patch 6.2.282
Problem:    When using CTRL-O to go back to a help file, it becomes listed.
	    (Andrew Nesbit)
	    Using ":tag" or ":tjump" in a help file doesn't keep the help file
	    settings (e.g. for 'iskeyword').
Solution:   Don't mark a buffer as listed when its help flag is set.  Put all
	    the option settings for a help buffer together in do_ecmd().
Files:	    src/ex_cmds.c

Patch 6.2.283
Problem:    The "local additions" in help.txt are used without conversion,
	    causing latin1 characters showing up wrong when 'enc' is utf-8.
	    (Antoine J. Mechelynck)
Solution:   Convert the text to 'encoding'.
Files:	    src/ex_cmds.c

Patch 6.2.284
Problem:    Listing a function puts "endfunction" in the message history.
	    Typing "q" at the more prompt isn't handled correctly when listing
	    variables and functions.  (Hara Krishna Dara)
Solution:   Don't use msg() for "endfunction".  Check "got_int" regularly.
Files:	    src/eval.c

Patch 6.2.285
Problem:    GUI: In a single wrapped line that fills the window, "gj" in the
	    last screen line leaves the cursor behind. (Ivan Tarasov)
Solution:   Undraw the cursor before scrolling the text up.
Files:	    src/gui.c

Patch 6.2.286
Problem:    When trying to rename a file and it doesn't exist, the destination
	    file is deleted anyway. (Luc Deux)
Solution:   Don't delete the destination when the source doesn't exist. (Taro
	    Muraoka)
Files:	    src/fileio.c

Patch 6.2.287 (after 6.2.264)
Problem:    Duplicate lines are added to the viminfo file.
Solution:   Compare with existing entries without an offset.  Also fixes
	    reading very long history lines from viminfo.
Files:	    src/ex_getln.c

Patch 6.2.288 (extra)
Problem:    Mac: An external program can't be interrupted.
Solution:   Don't use the 'c' key for backspace. (Eckehard Berns)
Files:	    src/gui_mac.c

Patch 6.2.289
Problem:    Compiling the Tcl interface with thread support causes ":make" to
	    fail.  (Juergen Salk)
Solution:   Use $TCL_DEFS from the Tcl config script to obtain the required
	    compile flags for using the thread library.
Files:	    src/auto/configure, src/configure.in

Patch 6.2.290 (extra)
Problem:    Mac: The mousewheel doesn't work.
Solution:   Add mousewheel support.  Also fix updating the thumb after a drag
	    and then using another way to scroll.  (Eckehard Berns)
Files:	    src/gui_mac.c

Patch 6.2.291 (extra)
Problem:    Mac: the plus button and close button don't do anything.
Solution:   Make the plus button maximize the window and the close button
	    close Vim. (Eckehard Berns)
Files:	    src/gui.c, src/gui_mac.c

Patch 6.2.292
Problem:    Motif: When removing GUI arguments from argv[] a "ps -ef" shows
	    the last argument repeated.
Solution:   Set argv[argc] to NULL. (Michael Jarvis)
Files:	    src/gui_x11.c

Patch 6.2.293 (after 6.2.255)
Problem:    GTK: A new item in a menu is put before the tearoff item.
Solution:   Do increment the menu item index for non-popup menu items.
Files:	    src/gui_gtk.c

Patch 6.2.294 (extra)
Problem:    Mac: Cannot use modifiers with Space, Tab, Enter and Escape.
Solution:   Handle all modifiers for these keys.  (Eckehard Berns)
Files:	    src/gui_mac.c

Patch 6.2.295
Problem:    When in debug mode, receiving a message from a remote client
	    causes a crash.  Evaluating an expression causes Vim to wait for
	    "cont" to be typed, without a prompt.  (Hari Krishna Dara)
Solution:   Disable debugging when evaluating an expression for a client.
	    (Michael Geddes)  Don't try reading into the typeahead buffer when
	    it may have been filled in another way.
Files:	    src/ex_getln.c, src/getchar.c, src/if_xcmdsrv.c, src/main.c,
	    src/misc1.c, src/proto/getchar.pro, src/proto/main.pro,
	    src/proto/os_unix.pro, src/proto/ui.pro, src/structs.h,
	    src/os_unix.c, src/ui.c

Patch 6.2.296 (extra)
Problem:    Same as 6.2.295.
Solution:   Extra files for patch 6.2.295.
Files:	    src/os_amiga.c, src/os_msdos.c, src/os_riscos.c, src/os_win32.c,
	    src/proto/os_amiga.pro, src/proto/os_msdos.pro,
	    src/proto/os_riscos.pro, src/proto/os_win32.pro

Patch 6.2.297 (after 6.2.232)
Problem:    Cannot invoke Python commands recursively.
Solution:   With Python 2.3 and later use the available mechanisms to invoke
	    Python recursively. (Matthew Mueller)
Files:	    src/if_python.c

Patch 6.2.298
Problem:    A change always sets the '. mark and an insert always sets the '^
	    mark, even when this is not wanted.
	    Cannot go back to the position of older changes without undoing
	    those changes.
Solution:   Add the ":keepjumps" command modifier.
	    Add the "g," and "g;" commands.
Files:	    runtime/doc/motion.txt, src/ex_cmds.h, src/ex_docmd.c, src/edit.c,
	    src/mark.c, src/misc1.c, src/normal.c, src/proto/mark.pro,
	    src/structs.h, src/undo.c

Patch 6.2.299
Problem:    Can only use one language for help files.
Solution:   Add the 'helplang' option to select the preferred language(s).
	    Make ":helptags" generate tags files for all languages.
Files:	    runtime/doc/options.txt, runtime/doc/various.txt, src/Makefile,
	    src/ex_cmds.c, src/ex_cmds2.c, src/ex_cmds.h, src/ex_getln.c,
	    src/normal.c, src/option.c, src/option.h, src/proto/ex_cmds.pro,
	    src/proto/ex_cmds2.pro, src/proto/option.pro, src/structs.h,
	    src/tag.c, src/vim.h

Patch 6.2.300 (after 6.2.297)
Problem:    Cannot build Python interface with Python 2.2 or earlier.
Solution:   Add a semicolon.
Files:	    src/if_python.c

Patch 6.2.301
Problem:    The "select all" item from the popup menu doesn't work for Select
	    mode.
Solution:   Use the same commands as for the "Edit.select all" menu.
	    (Benji Fisher)
Files:	    runtime/menu.vim

Patch 6.2.302
Problem:    Using "CTRL-O ." in Insert mode doesn't work properly. (Benji
	    Fisher)
Solution:   Restore "restart_edit" after an insert command that was not typed.
	    Avoid waiting with displaying the mode when there is no text to be
	    overwritten.
	    Fix that "CTRL-O ." sometimes doesn't put the cursor back after
	    the end-of-line.  Only reset the flag that CTRL-O was used past
	    the end of the line when restarting editing.  Update "o_lnum"
	    number when inserting text and "o_eol" is set.
Files:	    src/edit.c, src/normal.c

Patch 6.2.303
Problem:    Cannot use Unicode digraphs while 'encoding' is not Unicode.
Solution:   Convert the character from Unicode to 'encoding' when needed.
	    Use the Unicode digraphs for the Macintosh. (Eckehard Berns)
Files:	    src/digraph.c

Patch 6.2.304 (extra, after 6.2.256)
Problem:    Mac: No proper support for 'encoding'.  Conversion without iconv()
	    is not possible.
Solution:   Convert input from 'termencoding' to 'encoding'.  Add
	    mac_string_convert().  Convert text for the clipboard when needed.
	    (Eckehard Berns)
Files:	    src/gui_mac.c, src/mbyte.c, src/structs.h, src/vim.h

Patch 6.2.305 (after 6.2.300)
Problem:    Win32: Cannot build Python interface with Python 2.3. (Ajit
	    Thakkar)
Solution:   Add two functions to the dynamic loading feature.
Files:	    src/if_python.c

Patch 6.2.306 (extra)
Problem:    Win32: Building console version with BCC 5.5 gives a warning for
	    get_cmd_args() prototype missing.  (Ajit Thakkar)
Solution:   Don't build os_w32exe.c for the console version.
Files:	    src/Make_bc5.mak

Patch 6.2.307 (after 6.2.299)
Problem:    Installing help files fails.
Solution:   Expand wildcards for translated help files separately.
Files:	    src/Makefile

Patch 6.2.308
Problem:    Not all systems have "whoami", resulting in an empty user name.
Solution:   Use "logname" when possible, "whoami" otherwise.  (David Boyce)
Files:	    src/Makefile

Patch 6.2.309
Problem:    "3grx" waits for two ESC to be typed.  (Jens Paulus)
Solution:   Append the ESC to the stuff buffer when redoing the "gr" insert.
Files:	    src/edit.c

Patch 6.2.310
Problem:    When setting 'undolevels' to -1, making a change and setting
	    'undolevels' to a positive value an "undo list corrupt" error
	    occurs. (Madoka Machitani)
Solution:   Sync undo before changing 'undolevels'.
Files:	    src/option.c

Patch 6.2.311 (after 6.2.298)
Problem:    When making several changes in one line the changelist grows
	    quickly.  There is no error message for reaching the end of the
	    changelist.  Reading changelist marks from viminfo doesn't work
	    properly.
Solution:   Only make a new entry in the changelist when making a change in
	    another line or 'textwidth' columns away.  Add E662, E663 and E664
	    error messages.  Put a changelist mark from viminfo one position
	    before the end.
Files:	    runtime/doc/motion.txt, src/mark.c, src/misc1.c, src/normal.c

Patch 6.2.312 (after 6.2.299)
Problem:    "make install" clears the screen when installing the docs.
Solution:   Execute ":helptags" in silent mode.
Files:	    runtime/doc/Makefile

Patch 6.2.313
Problem:    When opening folds in a diff window, other diff windows no longer
	    show the same text.
Solution:   Sync the folds in diff windows.
Files:	    src/diff.c, src/fold.c, src/move.c, src/proto/diff.pro,
	    src/proto/move.pro

Patch 6.2.314
Problem:    When 'virtualedit' is set "rx" may cause a crash with a blockwise
	    selection and using "$". (Moritz Orbach)
Solution:   Don't try replacing chars in a line that has no characters in the
	    block.
Files:	    src/ops.c

Patch 6.2.315
Problem:    Using CTRL-C in a Visual mode mapping while 'insertmode' is set
	    stops Vim from returning to Insert mode.
Solution:   Don't reset "restart_edit" when a CTRL-C is found and 'insertmode'
	    is set.
Files:	    src/normal.c

Patch 6.2.316 (after 6.2.312)
Problem:    "make install" tries connecting to the X server when installing
	    the docs. (Stephen Thomas)
Solution:   Add the "-X" argument.
Files:	    runtime/doc/Makefile

Patch 6.2.317 (after 6.2.313)
Problem:    When using "zi" in a diff window, other diff windows are not
	    adjusted. (Richard Curnow)
Solution:   Distribute a change in 'foldenable' to other diff windows.
Files:	    src/normal.c

Patch 6.2.318
Problem:    When compiling with _THREAD_SAFE external commands don't echo
	    typed characters.
Solution:   Don't set the terminal mode to TMODE_SLEEP when it's already at
	    TMODE_COOK.
Files:	    src/os_unix.c

Patch 6.2.319 (extra)
Problem:    Building gvimext.dll with Mingw doesn't work properly.
Solution:   Use gcc instead of dllwrap.  Use long option names. (Alejandro
	    Lopez-Valencia)
Files:	    src/GvimExt/Make_ming.mak

Patch 6.2.320
Problem:    Win32: Adding and removing the menubar resizes the Vim window.
	    (Jonathon Merz)
Solution:   Don't let a resize event change 'lines' unexpectedly.
Files:	    src/gui.c

Patch 6.2.321
Problem:    When using modeless selection, wrapping lines are not recognized,
	    a line break is always inserted.
Solution:   Add LineWraps[] to remember whether a line wrapped or not.
Files:	    src/globals.h, src/screen.c, src/ui.c

Patch 6.2.322
Problem:    With 'showcmd' set, after typing "dd" the next "d" may not be
	    displayed. (Jens Paulus)
Solution:   Redraw the command line after updating the screen, scrolling may
	    have set "clear_cmdline".
Files:	    src/screen.c

Patch 6.2.323
Problem:    Win32: expanding "~/file" in an autocommand pattern results in
	    backslashes, while this pattern should only have forward slashes.
Solution:   Make expanding environment variables respect 'shellslash' and set
	    p_ssl when expanding the autocommand pattern.
Files:	    src/fileio.c, src/misc1.c, src/proto/fileio.pro

Patch 6.2.324 (extra)
Problem:    Win32: when "vimrun.exe" has a path with white space, such as
	    "Program Files", executing external commands may fail.
Solution:   Put double quotes around the path to "vimrun".
Files:	    src/os_win32.c

Patch 6.2.325
Problem:    When $HOME includes a space, doing ":set tags=~/tags" doesn't
	    work, the space is used to separate file names.  (Brett Stahlman)
Solution:   Escape the space with a backslash.
Files:	    src/option.c

Patch 6.2.326
Problem:    ":windo set syntax=foo" doesn't work.  (Tim Chase)
Solution:   Don't change 'eventignore' for ":windo".
Files:	    src/ex_cmds2.c

Patch 6.2.327
Problem:    When formatting text all marks in the formatted lines are lost.
	    A word is not joined to a previous line when this would be
	    possible.  (Mikolaj Machowski)
Solution:   Try to keep marks in the same position as much as possible.
	    Also keep mark positions when joining lines.
	    Start auto-formatting in the previous line when appropriate.
	    Add the "gw" operator: Like "gq" but keep the cursor where it is.
Files:	    runtime/doc/change.txt, src/edit.c, src/globals.h, src/mark.c,
	    src/misc1.c, src/normal.c, src/ops.c, src/proto/edit.pro,
	    src/proto/mark.pro, src/proto/ops.pro, src/structs.h, src/vim.h

Patch 6.2.328
Problem:    XIM with GTK: It is hard to understand what XIM is doing.
Solution:   Add xim_log() to log XIM events and help with debugging.
Files:	    src/mbyte.c

Patch 6.2.329
Problem:    ":=" does not work Vi compatible. (Antony Scriven)
Solution:   Print the last line number instead of the current line.  Don't
	    print "line".
Files:	    src/ex_cmds.h, src/ex_docmd.c

Patch 6.2.330 (extra, after 6.2.267)
Problem:    Win32: Crash when tearing off a menu.
Solution:   Terminate a string with a NUL. (Yasuhiro Matsumoto)
Files:	    src/gui_w32.c

Patch 6.2.331 (after 6.2.327)
Problem:    "gwap" leaves cursor in the wrong line.
Solution:   Remember the cursor position before finding the ends of the
	    paragraph.
Files:	    src/normal.c, src/ops.c, src/structs.h

Patch 6.2.332 (extra)
Problem:    Amiga: Compile error for string array. Compiling the Amiga GUI
	    doesn't work.
Solution:   Use a char pointer instead.  Move including "gui_amiga.h" to after
	    including "vim.h".  Add a semicolon. (Ali Akcaagac)
Files:	    src/gui_amiga.c, src/os_amiga.c

Patch 6.2.333 (extra)
Problem:    Win32: printing doesn't work with specified font charset.
Solution:   Use the specified font charset. (Mike Williams)
Files:	    src/os_mswin.c

Patch 6.2.334 (extra, after 6.2.296)
Problem:    Win32: evaluating client expression in debug mode requires typing
	    "cont".
Solution:   Use eval_client_expr_to_string().
Files:	    src/os_mswin.c

Patch 6.2.335
Problem:    The ":sign" command cannot be followed by another command.
Solution:   Add TRLBAR to the command flags.
Files:	    src/ex_cmds.h

Patch 6.2.336 (after 6.2.327)
Problem:    Mixup of items in an expression.
Solution:   Move "== NUL" to the right spot.
Files:	    src/edit.c

Patch 6.2.337 (extra, after 6.2.319)
Problem:    Building gvimext.dll with Mingw doesn't work properly.
Solution:   Fix white space and other details. (Alejandro Lopez-Valencia)
Files:	    src/GvimExt/Make_ming.mak

Patch 6.2.338 (after 6.2.331)
Problem:    When undoing "gwap" the cursor is always put at the start of the
	    paragraph.  When undoing auto-formatting the cursor may be above
	    the change.
Solution:   Try to move the cursor back to where it was or to the first line
	    that actually changed.
Files:	    src/normal.c, src/ops.c, src/undo.c

Patch 6.2.339
Problem:    Crash when using many different highlight groups and a User
	    highlight group.  (Juergen Kraemer)
Solution:   Do not use the sg_name_u pointer when it is NULL.  Also simplify
	    use of the highlight group table.
Files:	    src/syntax.c

Patch 6.2.340
Problem:    ":reg" doesn't show the actual contents of the clipboard if it was
	    filled outside of Vim. (Stuart MacDonald)
Solution:   Obtain the clipboard contents before displaying it.
Files:	    src/ops.c

Patch 6.2.341 (extra)
Problem:    Win32: When the path to diff.exe contains a space and using the
	    vimrc generated by the install program, diff mode does not work.
Solution:   Put the first double quote just before the space instead of before
	    the path.
Files:	    src/dosinst.c

Patch 6.2.342 (extra)
Problem:    Win32: macros are not always used as expected.
Solution:   Define WINVER to 0x0400 instead of 0x400. (Alejandro
	    Lopez-Valencia)
Files:	    src/Make_bc5.mak, src/Make_cyg.mak, src/Make_mvc.mak

Patch 6.2.343
Problem:    Title doesn't work with some window managers.  X11: Setting the
	    text property for the window title is hard coded.
Solution:   Use STRING format when possible.  Use the UTF-8 function when
	    it's available and 'encoding' is utf-8. Use
	    XStringListToTextProperty().  Do the same for the icon name.
	    (David Harrison)
Files:	    src/os_unix.c

Patch 6.2.344 (extra, after 6.2.337)
Problem:    Cannot build gvimext.dll with MingW on Linux.
Solution:   Add support for cross compiling. (Ronald Hoellwarth)
Files:	    src/GvimExt/Make_ming.mak

Patch 6.2.345 (extra)
Problem:    Win32: Copy/paste between two Vims fails if 'encoding' is not set
	    properly or there are illegal bytes.
Solution:   Use a raw byte format.  Always set it when copying.  When pasting
	    use the raw format if 'encoding' is the same.
Files:	    src/os_mswin.c, src/os_win16.c, src/os_win32.c, src/vim.h

Patch 6.2.346
Problem:    Win32 console: After using "chcp" Vim does not detect the
	    different codepage.
Solution:   Use GetConsoleCP() and when it is different from GetACP() set
	    'termencoding'.
Files:	    src/option.c

Patch 6.2.347 (extra)
Problem:    Win32: XP theme support is missing.
Solution:   Add a manifest and refer to it from the resource file.  (Michael
	    Wookey)
Files:	    Makefile, src/gvim.exe.mnf, src/vim.rc

Patch 6.2.348
Problem:    Win32: "vim c:\dir\(test)" doesn't work, because the 'isfname'
	    default value doesn't contain parenthesis.
Solution:   Temporarily add '(' and ')' to 'isfname' when expanding file name
	    arguments.
Files:	    src/main.c

Patch 6.2.349
Problem:    Finding a match using 'matchpairs' may cause a crash.
	    'matchpairs' is not used for 'showmatch'.
Solution:   Don't look past the NUL in 'matchpairs'.  Use 'matchpairs' for
	    'showmatch'. (Dave Olszewkski)
Files:	    src/misc1.c, src/normal.c, src/proto/search.pro, src/search.c

Patch 6.2.350
Problem:    Not enough info about startup timing.
Solution:   Add a few more TIME_MSG() calls.
Files:	    src/main.c

Patch 6.2.351
Problem:    Win32: $HOME may be set to %USERPROFILE%.
Solution:   Expand %VAR% at the start of $HOME.
Files:	    src/misc1.c

Patch 6.2.352 (after 6.2.335)
Problem:    ":sign texthl=||" does not work.
Solution:   Remove the check for a following command.  Give an error for extra
	    arguments after "buff=1".
Files:	    src/ex_cmds.c, src/ex_cmds.h

Patch 6.2.353 (extra)
Problem:    Win32: Supported server name length is limited. (Paul Bossi)
Solution:   Use MAX_PATH instead of 25.
Files:	    src/os_mswin.c

Patch 6.2.354 (extra)
Problem:    Win32: When the mouse pointer is on a tear-off menu it is hidden
	    when typing but is not redisplayed when moved. (Markx Hackmann)
Solution:   Handle the pointer move event for the tear-off menu window.
Files:	    src/gui_w32.c

Patch 6.2.355 (after 6.2.303)
Problem:    When 'encoding' is a double-byte encoding different from the
	    current locale, the width of characters is not correct.
	    Possible failure and memory leak when using iconv, Unicode
	    digraphs and 'encoding' is not "utf-8".
Solution:   Use iconv() to discover the actual width of characters.
	    Add the "vc_fail" field to vimconv_T.
	    When converting a digraph, init the conversion type to NONE and
	    cleanup afterwards.
Files:	    src/digraph.c, src/mbyte.c, src/structs.h

Patch 6.2.356
Problem:    When using a double-byte 'encoding' and 'selection' is
	    "exclusive", "vy" only yanks the first byte of a double-byte
	    character.  (Xiangjiang Ma)
Solution:   Correct the column in unadjust_for_sel() to position on the first
	    byte, always include the trailing byte of the selected text.
Files:	    src/normal.c

Patch 6.2.357 (after 6.2.321)
Problem:    Memory leak when resizing the Vim window.
Solution:   Free the LineWraps array.
Files:	    src/screen.c

Patch 6.2.358 (after 6.2.299)
Problem:    Memory leak when using ":help" and the language doesn't match.
Solution:   Free the array with matching tags.
Files:	    src/ex_cmds.c

Patch 6.2.359 (after 6.2.352)
Problem:    Compiler warning for long to int type cast.
Solution:   Add explicit type cast.
Files:	    src/ex_cmds.c

Patch 6.2.360
Problem:    "100|" in an empty line results in a ruler "1,0-100". (Pavol
	    Juhas)
Solution:   Recompute w_virtcol if the target column was not reached.
Files:	    src/misc2.c

Patch 6.2.361 (extra)
Problem:    Win32: Run gvim, ":set go-=m", use Alt-Tab, keep Alt pressed while
	    pressing Esc, then release Alt: Cursor disappears and typing a key
	    causes a beep. (Hari Krishna Dara)
Solution:   Don't ignore the WM_SYSKEYUP event when the menu is disabled.
Files:	    src/gui_w32.c

Patch 6.2.362 (extra, after 6.2.347)
Problem:    Win32: The manifest causes Gvim not to work. (Dave Roberts)
Solution:   Change "x86" to "X86". (Serge Pirotte)
Files:	    src/gvim.exe.mnf

Patch 6.2.363
Problem:    In an empty file with 'showmode' off, "i" doesn't change the ruler
	    from "0-1" to "1".  Typing "x<BS>" does show "1", but then <Esc>
	    doesn't make it "0-1" again.  Same problem for ruler in
	    statusline.  (Andrew Pimlott)
Solution:   Remember the "empty line" flag with Insert mode and'ed to it.
Files:	    src/screen.c

Patch 6.2.364
Problem:    HTML version of the documentation doesn't mention the encoding,
	    which is a problem for mbyte.txt.
Solution:   Adjust the awk script. (Ilya Sher)
Files:	    runtime/doc/makehtml.awk

Patch 6.2.365
Problem:    The configure checks for Perl and Python may add compile and link
	    arguments that break building Vim.
Solution:   Do a sanity check: try building with the arguments.
Files:	    src/auto/configure, src/configure.in

Patch 6.2.366
Problem:    When the GUI can't start because no valid font is found, there is
	    no error message. (Ugen)
Solution:   Add an error message.
Files:	    src/gui.c

Patch 6.2.367
Problem:    Building the help tags file while installing may fail if there is
	    another Vim in $PATH.
Solution:   Specify the just installed Vim executable. (Gordon Prieur)
Files:	    src/Makefile

Patch 6.2.368
Problem:    When 'autochdir' is set, closing a window doesn't change to the
	    directory of the new current window. (Salman Halim)
Solution:   Handle 'autochdir' always when a window becomes the current one.
Files:	    src/window.c

Patch 6.2.369
Problem:    Various memory leaks: when using globpath(), when searching for
	    help tags files, when defining a function inside a function, when
	    giving an error message through an exception, for the final "."
	    line in ":append", in expression "cond ? a : b" that fails and for
	    missing ")" in an expression.  Using NULL pointer when adding
	    first user command and for pointer computations with regexp.
	    (tests by Dominique Pelle)
Solution:   Fix the leaks by freeing the allocated memory.  Don't use the
	    array of user commands when there are no entries.  Use a macro
	    instead of a function call for saving and restoring regexp states.
Files:	    src/eval.c, src/ex_cmds.c, src/ex_docmd.c, src/ex_getln.c,
	    src/misc2.c, src/regexp.c, src/screen.c, src/tag.c

Patch 6.2.370 (extra, after6.2.341)
Problem:    Win32: When the path to diff.exe contains a space and using the
	    vimrc generated by the install program, diff mode may not work.
	    (Alejandro Lopez-Valencia)
Solution:   Do not use double quotes for arguments that do not have a space.
Files:	    src/dosinst.c

Patch 6.2.371
Problem:    When 'virtualedit' is set and there is a Tab before the next "x",
	    "dtx" does not delete the whole Tab. (Ken Hashishi)
Solution:   Move the cursor to the last position of the Tab.  Also for
	    "df<Tab>".
Files:	    src/normal.c

Patch 6.2.372
Problem:    When using balloon evaluation, no value is displayed for members
	    of structures and items of an array.
Solution:   Include "->", "." and "[*]" in the expression.
Files:	    src/gui_beval.c, src/normal.c, src/vim.h

Patch 6.2.373
Problem:    When 'winminheight' is zero and a window is reduced to zero
	    height, the ruler always says "Top" instead of the cursor
	    position. (Antoine J. Mechelynck)
Solution:   Don't recompute w_topline for a zero-height window.
Files:	    src/window.c

Patch 6.2.374
Problem:    ":echo "hello" | silent normal n" removes the "hello" message.
	    (Servatius Brandt)
Solution:   Don't echo the search string when ":silent" was used.  Also don't
	    show the mode.  In general: don't clear to the end of the screen.
Files:	    src/gui.c, src/message.c, src/os_unix.c, src/proto/message.pro,
	    src/screen.c, src/search.c, src/window.c

Patch 6.2.375
Problem:    When changing 'guioptions' the hit-enter prompt may be below the
	    end of the Vim window.
Solution:   Call screen_alloc() before showing the prompt.
Files:	    src/message.c

Patch 6.2.376
Problem:    Win32: Ruby interface cannot be dynamically linked with Ruby 1.6.
Solution:   Add #ifdefs around use of rb_w32_snprintf().  (Benoît Cerrina)
Files:	    src/if_ruby.c

Patch 6.2.377 (after 6.2.372)
Problem:    Compiler warnings for signed/unsigned compare. (Michael Wookey)
Solution:   Add type cast.
Files:	    src/normal.c

Patch 6.2.378 (extra, after 6.2.118)
Problem:    Mac: cannot build with Project Builder.
Solution:   Add remove_tail_with_ext() to locate and remove the "build"
	    directory from the runtime path.  Include os_unix.c when needed.
	    (Dany St Amant)
Files:	    src/misc1.c, src/os_macosx.c, src/vim.h

Patch 6.2.379
Problem:    Using ":mkvimrc" in the ":options" window sets 'bufhidden' to
	    "delete". (Michael Naumann)
Solution:   Do not add buffer-specific option values to a global vimrc file.
Files:	    src/option.c

Patch 6.2.380 (extra)
Problem:    DOS: "make test" fails when running it again.  Can't "make test"
	    with Borland C.
Solution:   Make sure ".out" files are deleted when they get in the way.  Add
	    a "test" target to the Borland C Makefile.
Files:	    src/Make_bc5.mak, src/testdir/Make_dos.mak

Patch 6.2.381
Problem:    Setting 'fileencoding' to a comma separated list (confusing it
	    with 'fileencodings') does not result in an error message.
	    Setting 'fileencoding' in an empty file marks it as modified.
	    There is no "+" in the title after setting 'fileencoding'.
Solution:   Check for a comma in 'fileencoding'.  Only consider a non-empty
	    file modified by changing 'fileencoding'.  Update the title after
	    changing 'fileencoding'.
Files:	    src/option.c

Patch 6.2.382
Problem:    Running "make test" puts marks from test files in viminfo.
Solution:   Specify a different viminfo file to use.
Files:	    src/testdir/test15.in, src/testdir/test49.in

Patch 6.2.383
Problem:    ":hi foo term='bla" crashes Vim. (Antony Scriven)
Solution:   Check that the closing ' is there.
Files:	    src/syntax.c

Patch 6.2.384
Problem:    ":menu a.&b" ":unmenu a.b" only works if "&b" isn't translated.
Solution:   Also compare the names without '&' characters.
Files:	    src/menu.c

Patch 6.2.385  (extra)
Problem:    Win32: forward_slash() and trash_input_buf() are undefined when
	    compiling with small features. (Ajit Thakkar)
Solution:   Change the #ifdefs for forward_slash().  Don't call
	    trash_input_buf() if the input buffer isn't used.
Files:	    src/fileio.c, src/os_win32.c

Patch 6.2.386
Problem:    Wasting time trying to read marks from the viminfo file for a
	    buffer without a name.
Solution:   Skip reading marks when the buffer has no name.
Files:	    src/fileio.c

Patch 6.2.387
Problem:    There is no highlighting of translated items in help files.
Solution:   Search for a "help_ab.vim" syntax file when the help file is
	    called "*.abx".  Also improve the help highlighting a bit.
Files:	    runtime/syntax/help.vim

Patch 6.2.388
Problem:    GTK: When displaying some double-width characters they are drawn
	    as single-width, because of conversion to UTF-8.
Solution:   Check the width that GTK uses and add a space if it's one instead
	    of two.
Files:	    src/gui_gtk_x11.c

Patch 6.2.389
Problem:    When working over a slow connection, it's very annoying that the
	    last line is partly drawn and then cleared for every change.
Solution:   Don't redraw the bottom line if no rows were inserted or deleted.
	    Don't draw the line if we know "@" lines will be used.
Files:	    src/screen.c

Patch 6.2.390
Problem:    Using "r*" in Visual mode on multi-byte characters only replaces
	    every other character. (Tyson Roberts)
Solution:   Correct the cursor position after replacing each character.
Files:	    src/ops.c

Patch 6.2.391 (extra)
Problem:    The ":highlight" command is not tested.
Solution:   Add a test script for ":highlight".
Files:	    src/testdir/Makefile, src/testdir/Make_amiga.mak,
	    src/testdir/Make_dos.mak, src/testdir/Make_os2.mak,
	    src/testdir/Make_vms.mms, src/testdir/test51.in,
	    src/testdir/test51.ok

Patch 6.2.392 (after 6.2.384)
Problem:    Unused variable.
Solution:   Remove "dlen".
Files:	    src/menu.c

Patch 6.2.393
Problem:    When using very long lines the viminfo file can become very big.
Solution:   Add the "s" flag to 'viminfo': skip registers with more than the
	    specified Kbyte of text.
Files:	    runtime/doc/options.txt, src/ops.c, src/option.c

Patch 6.2.394  (after 6.2.391)
Problem:    Test 51 fails on a terminal with 8 colors. (Tony Leneis)
Solution:   Use "DarkBlue" instead of "Blue" to avoid the "bold" attribute.
Files:	    src/testdir/test51.in

Patch 6.2.395
Problem:    When using ":tag" or ":pop" the previous matching tag is used.
	    But since the current file is different, the ordering of the tags
	    may change.
Solution:   Remember what the current buffer was for when re-using cur_match.
Files:	    src/edit.c, src/ex_cmds.c, src/proto/tag.pro, src/structs.h,
	    src/tag.c

Patch 6.2.396
Problem:    When CTRL-T jumps to another file and an autocommand moves the
	    cursor to the '" mark, don't end up on the right line.  (Michal
	    Malecki)
Solution:   Set the line number after loading the file.
Files:	    src/tag.c

Patch 6.2.397
Problem:    When using a double-byte 'encoding' mapping <M-x> doesn't work.
	    (Yasuhiro Matsumoto)
Solution:   Do not set the 8th bit of the character but use a modifier.
Files:	    src/gui_gtk_x11.c, src/gui_x11.c, src/misc2.c

Patch 6.2.398 (extra)
Problem:    Win32 console: no extra key modifiers are supported.
Solution:   Encode the modifiers into the input stream.  Also fix that special
	    keys are converted and stop working when 'tenc' is set.  Also fix
	    that when 'tenc' is initialized the input and output conversion is
	    not setup properly until 'enc' or 'tenc' is set.
Files:	    src/getchar.c, src/option.c, src/os_win32.c

Patch 6.2.399
Problem:    A ":set" command that fails still writes a message when it is
	    inside a try/catch block.
Solution:   Include all the text of the message in the error message.
Files:	    src/charset.c, src/option.c

Patch 6.2.400
Problem:    Can't compile if_xcmdsrv.c on HP-UX 11.0.
Solution:   Include header file poll.h. (Malte Neumann)
Files:	    src/if_xcmdsrv.c

Patch 6.2.401
Problem:    When opening a buffer that was previously opened, Vim does not
	    restore the cursor position if the first line starts with white
	    space.  (Gregory Margo)
Solution:   Don't skip restoring the cursor position if it is past the blanks
	    in the first line.
Files:	    src/buffer.c

Patch 6.2.402
Problem:    Mac: "make install" doesn't generate help tags. (Benji Fisher)
Solution:   Generate help tags before copying the runtime files.
Files:	    src/Makefile

Patch 6.2.403
Problem:    ":@y" checks stdin if there are more commands to execute.  This
	    fails if stdin is not connected, e.g., when starting the GUI from
	    KDE. (Ned Konz)
Solution:   Only check for a next command if there still is typeahead.
Files:	    src/ex_docmd.c

Patch 6.2.404
Problem:    Our own function to determine width of Unicode characters may get
	    outdated. (Markus Kuhn)
Solution:   Use wcwidth() when it is available.  Also use iswprint().
Files:	    src/auto/configure, src/configure.in, src/config.h.in, src/mbyte.c

Patch 6.2.405
Problem:    Cannot map zero without breaking the count before a command.
	    (Benji Fisher)
Solution:   Disable mapping zero when entering a count.
Files:	    src/getchar.c, src/globals.h, src/normal.c

Patch 6.2.406
Problem:    ":help \zs", ":help \@=" and similar don't find useful help.
Solution:   Prepend "/\" to the arguments to find the desired help tag.
Files:	    src/ex_cmds.c

Patch 6.2.407 (after 6.2.299)
Problem:    ":help \@<=" doesn't find help.
Solution:   Avoid that ":help \@<=" searches for the "<=" language.
Files:	    src/tag.c

Patch 6.2.408
Problem:    ":compiler" is not consistent: Sets local options and a global
	    variable. (Douglas Potts)  There is no error message when a
	    compiler is not supported.
Solution:   Use ":compiler!" to set a compiler globally, otherwise it's local
	    to the buffer and "b:current_compiler" is used.  Give an error
	    when no compiler script could be found.
	    Note: updated compiler plugins can be found at
	    ftp://ftp.vim.org/pub/vim/runtime/compiler/
Files:	    runtime/compiler/msvc.vim, runtime/doc/quickfix.txt, src/eval.c,
	    src/ex_cmds2.c

Patch 6.2.409
Problem:    The cursor ends up in the last column instead of after the line
	    when doing "i//<Esc>o" with 'indentexpr' set to "cindent(v:lnum)".
	    (Toby Allsopp)
Solution:   Adjust the cursor as if in Insert mode.
Files:	    src/misc1.c

Patch 6.2.410 (after 6.2.389)
Problem:    In diff mode, when there are more filler lines than fit in the
	    window, they are not drawn.
Solution:   Check for filler lines when skipping to draw a line that doesn't
	    fit.
Files:	    src/screen.c

Patch 6.2.411
Problem:    A "\n" inside a string is not seen as a line break by the regular
	    expression matching. (Hari Krishna Dara)
Solution:   Add the vim_regexec_nl() function for strings where "\n" is to be
	    matched with a line break.
Files:	    src/eval.c, src/ex_eval.c, src/proto/regexp.c, src/regexp.c

Patch 6.2.412
Problem:    Ruby: "ruby << EOF" inside a function doesn't always work.  Also
	    for ":python", ":tcl" and ":perl".
Solution:   Check for "<< marker" and skip until "marker" before checking for
	    "endfunction".
Files:	    src/eval.c

Patch 6.2.413 (after 6.2.411)
Problem:    Missing prototype for vim_regexec_nl(). (Marcel Svitalsky)
Solution:   Now really include the prototype.
Files:	    src/proto/regexp.pro

Patch 6.2.414
Problem:    The function used for custom completion of user commands cannot
	    have <SID> to make it local. (Hari Krishna Dara)
Solution:   Pass the SID of the script where the user command was defined on
	    to the completion.  Also clean up #ifdefs.
Files:	    src/ex_docmd.c, src/eval.c, src/ex_getln.c, src/structs.h

Patch 6.2.415
Problem:    Vim may crash after a sequence of events that change the window
	    size.  The window layout assumes a larger window than is actually
	    available. (Servatius Brandt)
Solution:   Invoke win_new_shellsize() from screenalloc() instead of from
	    set_shellsize().
Files:	    src/screen.c, src/term.c

Patch 6.2.416
Problem:    Compiler warning for incompatible pointer.
Solution:   Remove the "&" in the call to poll(). (Xavier de Gaye)
Files:	    src/os_unix.c

Patch 6.2.417 (after 6.2.393)
Problem:    Many people forget that the '"' item in 'viminfo' needs to be
	    preceded with a backslash,
Solution:   Add '<' as an alias for the '"' item.
Files:	    runtime/doc/options.txt, src/ops.c, src/option.c

Patch 6.2.418
Problem:    Using ":nnoremap <F12> :echo "cheese" and ":cabbr cheese xxx":
	    when pressing <F12> still uses the abbreviation. (Hari Krishna)
Solution:   Also apply "noremap" to abbreviations.
Files:	    src/getchar.c

Patch 6.2.419 (extra)
Problem:    Win32: Cannot open the Vim window inside another application.
Solution:   Add the "-P" argument to specify the window title of the
	    application to run inside. (Zibo Zhao)
Files:	    runtime/doc/starting.txt, src/main.c, src/gui_w32.c,
	    src/gui_w48.c, src/if_ole.cpp, src/os_mswin.c,
	    src/proto/gui_w32.pro

Patch 6.2.420
Problem:    Cannot specify a file to be edited in binary mode without setting
	    the global value of the 'binary' option.
Solution:   Support ":edit ++bin file".
Files:	    runtime/doc/editing.txt, src/buffer.c, src/eval.c, src/ex_cmds.h,
	    src/ex_docmd.c, src/fileio.c, src/misc2.c

Patch 6.2.421
Problem:    Cannot set the '[ and '] mark, which may be necessary when an
	    autocommand simulates reading a file.
Solution:   Allow using "m[" and "m]".
Files:	    runtime/doc/motion.txt, src/mark.c

Patch 6.2.422
Problem:    In CTRL-X completion messages the "/" makes them less readable.
Solution:   Remove the slashes. (Antony Scriven)
Files:	    src/edit.c

Patch 6.2.423
Problem:    ":vertical wincmd ]" does not split vertically.
Solution:   Add "postponed_split_flags".
Files:	    src/ex_docmd.c, src/globals.h, src/if_cscope.c, src/tag.c

Patch 6.2.424
Problem:    A BufEnter autocommand that sets an option stops 'mousefocus' from
	    working in Insert mode (Normal mode is OK). (Gregory Seidman)
Solution:   In the Insert mode loop invoke gui_mouse_correct() when needed.
Files:	    src/edit.c

Patch 6.2.425
Problem:    Vertical split and command line window: can only drag status line
	    above the cmdline window on the righthand side, not lefthand side.
Solution:   Check the status line row instead of the window pointer.
Files:	    src/ui.c

Patch 6.2.426
Problem:    A syntax region end match with a matchgroup that includes a line
	    break only highlights the last line with matchgroup. (Gary
	    Holloway)
Solution:   Also use the line number of the position where the region
	    highlighting ends.
Files:	    src/syntax.c

Patch 6.2.427 (extra)
Problem:    When pasting a lot of text in a multi-byte encoding, conversion
	    from 'termencoding' to 'encoding' may fail for some characters.
	    (Kuang-che Wu)
Solution:   When there is an incomplete byte sequence at the end of the read
	    text keep it for the next time.
Files:	    src/mbyte.c, src/os_amiga.c, src/os_mswin.c, src/proto/mbyte.pro,
	    src/proto/os_mswin.pro, src/ui.c

Patch 6.2.428
Problem:    The X11 clipboard supports the Vim selection for char/line/block
	    mode, but since the encoding is not included  can't copy/paste
	    between two Vims with a different 'encoding'.
Solution:   Add a new selection format that includes the 'encoding'.  Perform
	    conversion when necessary.
Files:	    src/gui_gtk_x11.c, src/ui.c, src/vim.h

Patch 6.2.429
Problem:    Unix: glob() doesn't work for a directory with a single quote in
	    the name. (Nazri Ramliy)
Solution:   When using the shell to expand, only put double quotes around
	    spaces and single quotes, not the whole thing.
Files:	    src/os_unix.c

Patch 6.2.430
Problem:    BOM at start of a vim script file is not recognized and causes an
	    error message.
Solution:   Detect the BOM and skip over it.  Also fix that after using
	    ":scriptencoding" the iconv() file descriptor was not closed
	    (memory leak).
Files:	    src/ex_cmds2.c

Patch 6.2.431
Problem:    When using the horizontal scrollbar, the scrolling is limited to
	    the length of the cursor line.
Solution:   Make the scroll limit depend on the longest visible line.  The
	    cursor is moved when necessary.  Including the 'h' flag in
	    'guioptions' disables this.
Files:	    runtime/doc/gui.txt, runtime/doc/options.txt, src/gui.c,
	    src/misc2.c, src/option.h

Patch 6.2.432 (after 6.2.430 and 6.2.431)
Problem:    Lint warnings.
Solution:   Add type casts.
Files:	    src/ex_cmds2.c, src/gui.c

Patch 6.2.433
Problem:    Translating "VISUAL" and "BLOCK" separately doesn't give a good
	    result. (Alejandro Lopez Valencia)
Solution:   Use a string for each combination.
Files:	    src/screen.c

Patch 6.2.434 (after 6.2.431)
Problem:    Compiler warning. (Salman Halim)
Solution:   Add type casts.
Files:	    src/gui.c

Patch 6.2.435
Problem:    When there are vertically split windows the minimal Vim window
	    height is computed wrong.
Solution:   Use frame_minheight() to correctly compute the minimal height.
Files:	    src/window.c

Patch 6.2.436
Problem:    Running the tests changes the user's viminfo file.
Solution:   In test 49 tell the extra Vim to use the test viminfo file.
Files:	    src/testdir/test49.vim

Patch 6.2.437
Problem:    ":mksession" always puts "set nocompatible" in the session file.
	    This changes option settings. (Ron Aaron)
Solution:   Add an "if" to only change 'compatible' when needed.
Files:	    src/ex_docmd.c

Patch 6.2.438
Problem:    When the 'v' flag is present in 'cpoptions', backspacing and then
	    typing text again: one character too much is overtyped before
	    inserting is done again.
Solution:   Set "dollar_vcol" to the right column.
Files:	    src/edit.c

Patch 6.2.439
Problem:    GTK 2: Changing 'lines' may cause a mismatch between the window
	    layout and the size of the window.
Solution:   Disable the hack with force_shell_resize_idle().
Files:	    src/gui_gtk_x11.c

Patch 6.2.440
Problem:    When 'lazyredraw' is set the window title is still updated.
	    The size of the Visual area and the ruler are displayed too often.
Solution:   Postpone redrawing the window title.  Only show the Visual area
	    size when waiting for a character.  Don't draw the ruler
	    unnecessary.
Files:	    src/buffer.c, src/normal.c, src/screen.c

Patch 6.2.441
Problem:    ":unabbreviate foo " doesn't work, because of the trailing space,
	    while an abbreviation with a trailing space is not possible. (Paul
	    Jolly)
Solution:   Accept a match with the lhs of an abbreviation without the
	    trailing space.
Files:	    src/getchar.c

Patch 6.2.442
Problem:    Cannot manipulate the command line from a function.
Solution:   Add getcmdline(), getcmdpos() and setcmdpos() functions and the
	    CTRL-\ e command.
Files:	    runtime/doc/cmdline.txt, runtime/doc/eval.txt, src/eval.c
	    src/ex_getln.c, src/ops.c, src/proto/ex_getln.pro,
	    src/proto/ops.pro

Patch 6.2.443
Problem:    With ":silent! echoerr something" you don't get the position of
	    the error.  emsg() only writes the message itself and returns.
Solution:   Also redirect the position of the error.
Files:	    src/message.c

Patch 6.2.444
Problem:    When adding the 'c' flag to a ":substitute" command it may replace
	    more times than without the 'c' flag.  Happens for a  match that
	    starts with "\ze" (Marcel Svitalsk) and when using "\@<=" (Klaus
	    Bosau).
Solution:   Correct "prev_matchcol" when replacing the line.  Don't replace
	    the line when the pattern uses look-behind matching.
Files:	    src/ex_cmds.c, src/proto/regexp.pro, src/regexp.c

Patch 6.2.445
Problem:    Copying vimtutor to /tmp/something is not secure, a symlink may
	    cause trouble.
Solution:   Create a directory and create the file in it.  Use "umask" to
	    create the directory with mode 700.  (Stefan Nordhausen)
Files:	    src/vimtutor

Patch 6.2.446 (after 6.2.404)
Problem:    Using library functions wcwidth() and iswprint() results in
	    display problems for Hebrew characters. (Ron Aaron)
Solution:   Disable the code to use the library functions, use our own.
Files:	    src/mbyte.c

Patch 6.2.447 (after 6.2.440)
Problem:    Now that the title is only updated when redrawing, it is no longer
	    possible to show it while executing a function. (Madoka Machitani)
Solution:   Make ":redraw" also update the title.
Files:	    src/ex_docmd.c

Patch 6.2.448 (after 6.2.427)
Problem:    Mac: conversion done when 'termencoding' differs from 'encoding'
	    fails when pasting a longer text.
Solution:   Check for an incomplete sequence at the end of the chunk to be
	    converted. (Eckehard Berns)
Files:	    src/mbyte.c

Patch 6.2.449 (after 6.2.431)
Problem:    Get error messages when switching files.
Solution:   Check for a valid line number when calculating the width of the
	    horizontal scrollbar. (Helmut Stiegler)
Files:	    src/gui.c

Patch 6.2.450
Problem:    "  #include" and "  #define" are not recognized with the default
	    option values for 'include' and 'defined'. (RG Kiran)
Solution:   Adjust the default values to allow white space before the #.
Files:	    runtime/doc/options.txt, src/option.c

Patch 6.2.451
Problem:    GTK: when using XIM there are various problems, including setting
	    'modified' and breaking undo at the wrong moment.
Solution:   Add "xim_changed_while_preediting", "preedit_end_col" and
	    im_is_preediting(). (Yasuhiro Matsumoto)
Files:	    src/ex_getln.c, src/globals.h, src/gui_gtk.c, src/gui_gtk_x11.c,
	    src/mbyte.c, src/misc1.c, src/proto/mbyte.pro, src/screen.c,
	    src/undo.c

Patch 6.2.452
Problem:    In diff mode, when DiffAdd and DiffText highlight settings are
	    equal, an added line is highlighted with DiffChange. (Tom Schumm)
Solution:   Remember the diff highlight type instead of the attributes.
Files:	    src/screen.c

Patch 6.2.453
Problem:    ":s/foo\|\nbar/x/g" does not replace two times in "foo\nbar".
	    (Pavel Papushev)
Solution:   When the pattern can match a line break also try matching at the
	    NUL at the end of a line.
Files:	    src/ex_cmds.c, src/regexp.c

Patch 6.2.454
Problem:    ":let b:changedtick" doesn't work. (Alan Schmitt)  ":let
	    b:changedtick = 99" does not give an error message.
Solution:   Add code to recognize ":let b:changedtick".
Files:	    src/eval.c

Patch 6.2.455 (after 6.2.297)
Problem:    In Python commands the current locale changes how certain Python
	    functions work. (Eugene M. Minkovskii)
Solution:   Set the LC_NUMERIC locale to "C" while executing a Python command.
Files:	    src/if_python.c

Patch 6.2.456 (extra)
Problem:    Win32: Editing a file by its Unicode name (dropping it on Vim or
	    using the file selection dialog) doesn't work. (Yakov Lerner, Alex
	    Jakushev)
Solution:   Use wide character functions when file names are involved and
	    convert from/to 'encoding' where needed.
Files:	    src/gui_w48.c, src/macros.h, src/memfile.c, src/memline.c,
	    src/os_mswin.c, src/os_win32.c

Patch 6.2.457 (after 6.2.244)
Problem:    When 'encoding' is "utf-8" and writing text with chars above 0x80
	    in latin1, conversion is wrong every 8200 bytes. (Oyvind Holm)
Solution:   Correct the utf_ptr2len_check_len() function and fix the problem
	    of displaying 0xf7 in utfc_ptr2len_check_len().
Files:	    src/mbyte.c

Patch 6.2.458
Problem:    When 'virtualedit' is set "$" doesn't move to the end of an
	    unprintable character, causing "y$" not to include that character.
	    (Fred Ma)
Solution:   Set "coladd" to move the cursor to the end of the character.
Files:	    src/misc2.c

Patch 6.2.459 (after 6.2.454)
Problem:    Variable "b" cannot be written. (Salman Halim)
Solution:   Compare strings properly.
Files:	    src/eval.c

Patch 6.2.460 (extra, after 6.2.456)
Problem:    Compiler warnings for missing prototypes.
Solution:   Include the missing prototypes.
Files:	    src/proto/os_win32.pro

Patch 6.2.461
Problem:    After using a search command "x" starts putting single characters
	    in the numbered registers.
Solution:   Reset "use_reg_one" at the right moment.
Files:	    src/normal.c

Patch 6.2.462
Problem:    Finding a matching parenthesis does not correctly handle a
	    backslash in a trailing byte.
Solution:   Handle multi-byte characters correctly. (Taro Muraoka)
Files:	    src/search.c

Patch 6.2.463 (extra)
Problem:    Win32: An NTFS file system may contain files with extra info
	    streams.  The current method to copy them creates one and then
	    deletes it again.  (Peter Toennies)  Also, only three streams with
	    hard coded names are copied.
Solution:   Use BackupRead() to check which info streams the original file
	    contains and only copy these streams.
Files:	    src/os_win32.c

Patch 6.2.464 (extra, after 6.2.427)
Problem:    Amiga: Compilation error with gcc. (Ali Akcaagac)
Solution:   Move the #ifdef outside of Read().
Files:	    src/os_amiga.c

Patch 6.2.465
Problem:    When resizing the GUI window the window manager sometimes moves it
	    left of or above the screen. (Michael McCarty)
Solution:   Check the window position after resizing it and move it onto the
	    screen when it isn't.
Files:	    src/gui.c

Patch 6.2.466 (extra, after 6.2.456)
Problem:    Win32: Compiling with Borland C fails, and an un/signed warning.
Solution:   Redefine wcsicmp() to wcscmpi() and add type casts. (Yasuhiro
	    Matsumoto)
Files:	    src/os_win32.c

Patch 6.2.467 (extra, after 6.2.463)
Problem:    Win32: can't compile without multi-byte feature. (Ajit Thakkar)
Solution:   Add #ifdefs around the info stream code.
Files:	    src/os_win32.c

Patch 6.2.468
Problem:    Compiler warnings for shadowed variables. (Matthias Mohr)
Solution:   Delete superfluous variables and rename others.
Files:	    src/eval.c, src/ex_docmd.c, src/ex_eval.c, src/if_cscope.c,
	    src/fold.c, src/option.c, src/os_unix.c, src/quickfix.c,
	    src/regexp.c

Patch 6.2.469 (extra, after 6.2.456)
Problem:    Win32: Can't create swap file when 'encoding' differs from the
	    active code page. (Kriton Kyrimis)
Solution:   In enc_to_ucs2() terminate the converted string with a NUL
Files:	    src/os_mswin.c

Patch 6.2.470
Problem:    The name returned by tempname() may be equal to the file used for
	    shell output when ignoring case.
Solution:   Skip 'O' and 'I' in tempname().
Files:	    src/eval.c

Patch 6.2.471
Problem:    "-L/usr/lib" is used in the link command, even though it's
	    supposed to be filtered out. "-lw" and "-ldl" are not
	    automatically added when needed for "-lXmu". (Antonio Colombo)
Solution:   Check for a space after the argument instead of before.  Also
	    remove "-R/usr/lib" if it's there.  Check for "-lw" and "-ldl"
	    before trying "-lXmu".
Files:	    src/auto/configure, src/configure.in, src/link.sh

Patch 6.2.472
Problem:    When using a FileChangedShell autocommand that changes the current
	    buffer, a buffer exists that can't be wiped out.
	    Also, Vim sometimes crashes when executing an external command
	    that changes the buffer and a FileChangedShell autocommand is
	    used.  (Hari Krishna Dara)
	    Users are confused by the warning for a file being changed outside
	    of Vim.
Solution:   Avoid that the window counter for a buffer is incremented twice.
	    Avoid that buf_check_timestamp() is used recursively.
	    Add a hint to look in the help for more info.
Files:	    src/ex_cmds.c, src/fileio.c

Patch 6.2.473
Problem:    Using CTRL-] in a help buffer without a name causes a crash.
Solution:   Check for name to be present before using it. (Taro Muraoka)
Files:	    src/tag.c

Patch 6.2.474 (extra, after 6.2.456)
Problem:    When Vim is starting up conversion is done unnecessarily.  Failure
	    to find the runtime files on Windows 98. (Randall W. Morris)
Solution:   Init enc_codepage negative, only use it when not negative.
	    Don't use GetFileAttributesW() on Windows 98 or earlier.
Files:	    src/globals.h, src/gui_w32.c, src/gui_w48.c, src/os_mswin.c,
	    src/os_win32.c

Patch 6.2.475
Problem:    Commands after "perl <<EOF" are parsed as Vim commands when they
	    are not executed.
Solution:   Properly skip over the perl commands.
Files:	    src/ex_docmd.c, src/ex_getln.c, src/if_perl.xs, src/if_python.c,
	    src/if_ruby.c, src/if_tcl.c, src/misc2.c

Patch 6.2.476
Problem:    When reloading a hidden buffer changed outside of Vim and the
	    current buffer is read-only, the reloaded buffer becomes
	    read-only.  (Hari Krishna Dara)
Solution:   Save the 'readonly' flag of the reloaded buffer instead of the
	    current buffer.
Files:	    src/fileio.c

Patch 6.2.477
Problem:    Using remote_send(v:servername, "\<C-V>") causes Vim to hang.
	    (Yakov Lerner)
Solution:   When the resulting string is empty don't set received_from_client.
Files:	    src/main.c

Patch 6.2.478
Problem:    Win32: "--remote file" fails changing directory if the current
	    directory name starts with a single quote.  (Iestyn Walters)
Solution:   Add a backslash where it will be removed later.
Files:	    src/main.c, src/misc2.c, src/proto/misc2.pro

Patch 6.2.479
Problem:    The error message for errors during recovery goes unnoticed.
Solution:   Avoid that the hit-enter prompt overwrites the message.  Add a few
	    lines to make the error stand out.
Files:	    src/main.c, src/message.c, src/memline.c

Patch 6.2.480
Problem:    NetBeans: Using negative index in array.  backslash at end of
	    message may cause Vim to crash. (Xavier de Gaye)
Solution:   Initialize buf_list_used to zero. Check for trailing backslash.
Files:	    src/netbeans.c

Patch 6.2.481
Problem:    When writing a file it is not possible to specify that hard and/or
	    symlinks are to be broken instead of preserved.
Solution:   Add the "breaksymlink" and "breakhardlink" values to 'backupcopy'.
	    (Simon Ekstrand)
Files:	    runtime/doc/options.txt, src/fileio.c, src/option.c, src/option.h

Patch 6.2.482
Problem:    Repeating insert of CTRL-K 1 S doesn't work.  The superscript 1 is
	    considered to be a digit. (Juergen Kraemer)
Solution:   In vim_isdigit() only accept '0' to '9'.  Use VIM_ISDIGIT() for
	    speed where possible.  Also add vim_isxdigit().
Files:	    src/buffer.c, src/charset.c, src/diff.c, src/digraph.c,
	    src/edit.c, src/eval.c,, src/ex_cmds.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_eval.c, src/ex_getln.c,
	    src/if_xcmdsrv.c, src/farsi.c, src/fileio.c, src/fold.c,
	    src/getchar.c, src/gui.c, src/if_cscope.c, src/macros.h,
	    src/main.c, src/mark.c, src/mbyte.c, src/menu.c, src/misc1.c,
	    src/misc2.c, src/normal.c, src/ops.c, src/option.c,
	    src/proto/charset.pro, src/regexp.c, src/screen.c, src/search.c,
	    src/syntax.c, src/tag.c, src/term.c, src/termlib.c

Patch 6.2.483 (extra, after 6.2.482)
Problem:    See 6.2.482.
Solution:   Extra part of patch 6.2.482.
Files:	    src/gui_photon.c, src/gui_w48.c, src/os_msdos.c, src/os_mswin.c

Patch 6.2.484
Problem:    MS-Windows: With the included diff.exe, differences after a CTRL-Z
	    are not recognized.  (Peter Keresztes)
Solution:   Write the files with unix fileformat and invoke diff with --binary
	    if possible.
Files:	    src/diff.c

Patch 6.2.485
Problem:    A BufWriteCmd autocommand cannot know if "!" was used or not.
	    (Hari Krishna Dara)
Solution:   Add the v:cmdbang variable.
Files:	    runtime/doc/eval.txt, src/eval.c, src/proto/eval.pro,
	    src/fileio.c, src/vim.h

Patch 6.2.486 (6.2.482)
Problem:    Diff for eval.c is missing.
Solution:   Addition to patch 6.2.482.
Files:	    src/eval.c

Patch 6.2.487 (extra, after 6.2.456)
Problem:    Compiler warnings for wrong prototype. (Alejandro Lopez Valencia)
Solution:   Delete the prototype for Handle_WM_Notify().
Files:	    src/proto/gui_w32.pro

Patch 6.2.488
Problem:    Missing ")" in *.ch filetype detection.
Solution:   Add the ")".  (Ciaran McCreesh)
Files:	    runtime/filetype.vim

Patch 6.2.489
Problem:    When accidentally opening a session in Vim which has already been
	    opened in another Vim there is a long row of ATTENTION prompts.
	    Need to quit each of them to get out. (Robert Webb)
Solution:   Add the "Abort" alternative to the dialog.
Files:	    src/memline.c

Patch 6.2.490
Problem:    With 'paragraph' it is not possible to use a single dot as a
	    paragraph boundary.  (Dorai Sitaram)
Solution:   Allow using "  " (two spaces) in 'paragraph' to match ".$" or
	    ". $"
Files:	    src/search.c

Patch 6.2.491
Problem:    Decrementing a position doesn't take care of multi-byte chars.
Solution:   Adjust the column for multi-byte characters.  Remove mb_dec().
	    (Yasuhiro Matsumoto)
Files:	    src/mbyte.c, src/misc2.c, src/proto/mbyte.pro

Patch 6.2.492
Problem:    When using ":redraw" while there is a message, the next ":echo"
	    still causes text to scroll. (Yasuhiro Matsumoto)
Solution:   Reset msg_didout and msg_col, so that after ":redraw" the next
	    message overwrites an existing one.
Files:	    src/ex_docmd.c

Patch 6.2.493
Problem:    "@x" doesn't work when 'insertmode' is set. (Benji Fisher)
Solution:   Put "restart_edit" in the typeahead buffer, so that it's used
	    after executing the register contents.
Files:	    src/ops.c

Patch 6.2.494
Problem:    Using diff mode with two windows, when moving horizontally in
	    inserted lines, a fold in the other window may open.
Solution:   Compute the line number in the other window correctly.
Files:	    src/diff.c

Patch 6.2.495 (extra, after 6.2.456)
Problem:    Win32: The file dialog doesn't work on Windows 95.
Solution:   Put the wide code of gui_mch_browse() in gui_mch_browseW() and use
	    it only on Windows NT/2000/XP.
Files:	    src/gui_w32.c, src/gui_w48.c

Patch 6.2.496
Problem:    FreeBSD 4.x: When compiled with the pthread library (Python) a
	    complicated pattern may cause Vim to crash.  Catching the signal
	    doesn't work.
Solution:   When compiled with threads, instead of using the normal stacksize
	    limit, use the size of the initial stack.
Files:	    src/auto/configure, src/config.h.in, src/configure.in,
	    src/os_unix.c

Patch 6.2.497 (extra)
Problem:    Russian messages are only available in one encoding.
Solution:   Convert the messages to MS-Windows codepages. (Vassily Ragosin)
Files:	    src/po/Makefile

Patch 6.2.498
Problem:    Non-latin1 help files are not properly supported.
Solution:   Support utf-8 help files and convert them to 'encoding' when
	    needed.
Files:	    src/fileio.c

Patch 6.2.499
Problem:    When writing a file and halting the system, the file might be lost
	    when using a journaling file system.
Solution:   Use fsync() to flush the file data to disk after writing a file.
	    (Radim Kolar)
Files:	    src/fileio.c

Patch 6.2.500 (extra)
Problem:    The DOS/MS-Windows the installer doesn't use the --binary flag for
	    diff.
Solution:   Add --binary to the diff argument in MyDiff(). (Alejandro Lopez-
	    Valencia)
Files:	    src/dosinst.c

Patch 6.2.501
Problem:    Vim does not compile with MorphOS.
Solution:   Add a Makefile and a few changes to make Vim work with MorphOS.
	    (Ali Akcaagac)
Files:	    runtime/doc/os_amiga.txt, src/INSTALLami.txt,
	    src/Make_morphos.mak, src/memfile.c, src/term.c

Patch 6.2.502
Problem:    Building fails for generating message files.
Solution:   Add dummy message files.
Files:	    src/po/ca.po, src/po/ru.po, src/po/sv.po

Patch 6.2.503
Problem:    Mac: Can't compile MacRoman conversions without the GUI.
Solution:   Also link with the Carbon framework for the terminal version, for
	    the MacRoman conversion functions. (Eckehard Berns)
	    Remove -ltermcap from the GUI link command, it is not needed.
Files:	    src/auto/configure, src/Makefile, src/configure.in

Patch 6.2.504
Problem:    Various problems with 'cindent', among which that a
	    list of variable declarations is not indented properly.
Solution:   Fix the wrong indenting.  Improve indenting of C++ methods.
	    Add the 'i', 'b' and 'W' options to 'cinoptions'. (mostly by
	    Helmut Stiegler)
	    Improve indenting of preprocessor-continuation lines.
Files:	    runtime/doc/indent.txt, src/misc1.c, src/testdir/test3.in,
	    src/testdir/test3.ok

Patch 6.2.505
Problem:    Help for -P argument is missing. (Ronald Hoellwarth)
Solution:   Add the patch that was missing in 6.2.419.
Files:	    runtime/doc/starting.txt

Patch 6.2.506 (extra)
Problem:    Win32: When 'encoding' is a codepage then reading a utf-8 file
	    only works when iconv is available.  Writing a file in another
	    codepage uses the wrong kind of conversion.
Solution:   Use internal conversion functions.  Enable reading and writing
	    files with 'fileencoding' different from 'encoding' for all valid
	    codepages and utf-8 without the need for iconv.
Files:	    src/fileio.c, src/testdir/Make_dos.mak, src/testdir/test52.in,
	    src/testdir/test52.ok

Patch 6.2.507
Problem:    The ownership of the file with the password for the NetBeans
	    connection is not checked.  "-nb={file}" doesn't work for GTK.
Solution:   Only accept the file when owned by the user and not accessible by
	    others.  Detect "-nb=" for GTK.
Files:	    src/netbeans.c, src/gui_gtk_x11.c

Patch 6.2.508
Problem:    Win32: "v:lang" does not show the current language for messages if
	    it differs from the other locale settings.
Solution:   Use the value of the $LC_MESSAGES environment variable.
Files:	    src/ex_cmds2.c

Patch 6.2.509 (after 6.2.508)
Problem:    Crash when $LANG is not set.
Solution:   Add check for NULL pointer. (Ron Aaron)
Files:	    src/ex_cmds2.c

Patch 6.2.510 (after 6.2.507)
Problem:    Warning for pointer conversion.
Solution:   Add a type cast.
Files:	    src/gui_gtk_x11.c

Patch 6.2.511
Problem:    Tags in Russian help files are in utf-8 encoding, which may be
	    different from 'encoding'.
Solution:   Use the "TAG_FILE_ENCODING" field in the tags file to specify the
	    encoding of the tags.  Convert help tags from 'encoding' to the
	    tag file encoding when searching for matches, do the reverse when
	    listing help tags.
Files:	    runtime/doc/tagsrch.txt, src/ex_cmds.c, src/tag.c

Patch 6.2.512
Problem:    Translating "\"\n" is useless. (Gerfried Fuchs)
Solution:   Remove the _() around it.
Files:	    src/main.c, src/memline.c

Patch 6.2.513 (after 6.2.507)
Problem:    NetBeans: the check for owning the connection info file can be
	    simplified. (Nikolay Molchanov)
Solution:   Only check if the access mode is right.
Files:	    src/netbeans.c

Patch 6.2.514
Problem:    When a highlight/syntax group name contains invalid characters
	    there is no warning.
Solution:   Add an error for unprintable characters and a warning for other
	    invalid characters.
Files:	    src/syntax.c

Patch 6.2.515
Problem:    When using the options window 'swapfile' is reset.
Solution:   Use ":setlocal" instead of ":set".
Files:	    runtime/optwin.vim

Patch 6.2.516
Problem:    The sign column cannot be seen, looks like there are two spaces
	    before the text. (Rob Retter)
Solution:   Add the SignColumn highlight group.
Files:	    runtime/doc/options.txt, runtime/doc/sign.txt, src/option.c,
	    src/screen.c, src/syntax.c, src/vim.h

Patch 6.2.517
Problem:    Using "r*" in Visual mode on multi-byte characters replaces
	    too many characters.  In Visual Block mode replacing with a
	    multi-byte character doesn't work.
Solution:   Adjust the operator end for the difference in byte length of the
	    original and the replaced character.  Insert all bytes of a
	    multi-byte character, take care of double-wide characters.
Files:	    src/ops.c

Patch 6.2.518
Problem:    Last line of a window is not updated after using "J" and then "D".
	    (Adri Verhoef)
Solution:   When no line is found below a change that doesn't need updating,
	    update all lines below the change.
Files:	    src/screen.c

Patch 6.2.519
Problem:    Mac: cannot read/write files in MacRoman format.
Solution:   Do internal conversion from/to MacRoman to/from utf-8 and latin1.
	    (Eckehard Berns)
Files:	    src/fileio.c

Patch 6.2.520 (extra)
Problem:    The NSIS installer is outdated.
Solution:   Make it work with NSIS 2.0.  Also include console executables for
	    Win 95/98/ME and Win NT/2000/XP.  Use LZWA compression.  Use
	    "/oname" to avoid having to rename files before running NSIS.
Files:	    Makefile, nsis/gvim.nsi

Patch 6.2.521
Problem:    When using silent Ex mode the "changing a readonly file" warning
	    is omitted but the one second wait isn't. (Yakov Lerner)
Solution:   Skip the delay when "silent_mode" is set.
Files:	    src/misc1.c

Patch 6.2.522
Problem:    GUI: when changing 'cmdheight' in the gvimrc file the window
	    layout is messed up. (Keith Dart)
Solution:   Skip updating the window layout when changing 'cmdheight' while
	    still starting up.
Files:	    src/option.c

Patch 6.2.523
Problem:    When loading a session and aborting when a swap file already
	    exists, the user is left with useless windows. (Robert Webb)
Solution:   Load one file before creating the windows.
Files:	    src/ex_docmd.c

Patch 6.2.524 (extra, after 6.2.520)
Problem:    Win32: (un)installing gvimext.dll may fail if it was used.
	    The desktop and start menu links are created for the current user
	    instead of all users.
	    Using the home directory as working directory for the links is a
	    bad idea for multi-user systems.
	    Cannot use Vim from the "Open With..." menu.
Solution:   Force a reboot if necessary. (Alejandro Lopez-Valencia)  Also use
	    macros for the directory of the source and runtime files.  Use
	    "CSIDL_COMMON_*" instead of "CSIDL_*" when possible.
	    Do not specify a working directory in the links.
	    Add Vim to the "Open With..." menu. (Giuseppe Bilotta)
Files:	    nsis/gvim.nsi, src/dosinst.c, src/dosinst.h, src/uninstal.c

Patch 6.2.525
Problem:    When the history contains a very long line ":history" causes a
	    crash. (Volker Kiefel)
Solution:   Shorten the history entry to fit it in one line.
Files:	    src/ex_getln.c

Patch 6.2.526
Problem:    When s:lang is "ja" the Japanese menus are not used.
Solution:   Add 'encoding' to the language when there is no charset.
Files:	    runtime/menu.vim

Patch 6.2.527
Problem:    The 2html script uses ":wincmd p", which breaks when using some
	    autocommands.
Solution:   Remember the window numbers and jump to them with ":wincmd w".
	    Also add XHTML support. (Panagiotis Issaris)
Files:	    runtime/syntax/2html.vim

Patch 6.2.528
Problem:    NetBeans: Changes of the "~" command are not reported.
Solution:   Call netbeans_inserted() after performing "~". (Gordon Prieur)
	    Also change NetBeans debugging to append to the log file.
	    Also fix that "~" in Visual block mode changes too much if there
	    are multi-byte characters.
Files:	    src/nbdebug.c, src/normal.c, src/ops.c

Patch 6.2.529 (extra)
Problem:    VisVim only works for Admin.  Doing it for one user doesn't work.
	    (Alexandre Gouraud)
Solution:   When registering the module fails, simply continue.
Files:	    src/VisVim/VisVim.cpp

Patch 6.2.530
Problem:    Warning for missing prototype on the Amiga.
Solution:   Include time.h
Files:	    src/version.c

Patch 6.2.531
Problem:    In silent ex mode no messages are given, which makes debugging
	    very difficult.
Solution:   Do output messages when 'verbose' is set.
Files:	    src/message.c, src/ui.c

Patch 6.2.532 (extra)
Problem:    Compiling for Win32s with VC 4.1 doesn't work.
Solution:   Don't use CP_UTF8 if it's not defined.  Don't use CSIDL_COMMON*
	    when not defined.
Files:	    src/dosinst.h, src/fileio.c

Win32 console: After patch 6.2.398 Ex mode did not work. (Yasuhiro Matsumoto)

Patch 6.3a.001
Problem:    Win32: if testing for the "--binary" option fails, diff isn't used
	    at all.
Solution:   Handle the "ok" flag properly. (Yasuhiro Matsumoto)
Files:	    src/diff.c

Patch 6.3a.002
Problem:    NetBeans: An insert command from NetBeans beyond the end of a
	    buffer crashes Vim. (Xavier de Gaye)
Solution:   Use a local pos_T structure for the position.
Files:	    src/netbeans.c

Patch 6.3a.003
Problem:    E315 error with auto-formatting comments. (Henry Van Roessel)
Solution:   Pass the line number to same_leader().
Files:	    src/ops.c

Patch 6.3a.004
Problem:    Test32 fails on Windows XP for the DJGPP version.  Renaming
	    test11.out fails.
Solution:   Don't try renaming, create new files to use for the test.
Files:	    src/testdir/test32.in, src/testdir/test32.ok

Patch 6.3a.005
Problem:    ":checkpath!" does not use 'includeexpr'.
Solution:   Use a file name that was found directly.  When a file was not
	    found and the located name is empty, use the rest of the line.
Files:	    src/search.c

Patch 6.3a.006
Problem:    "yip" moves the cursor to the first yanked line, but not to the
	    first column.  Looks like not all text was yanked. (Jens Paulus)
Solution:   Move the cursor to the first column.
Files:	    src/search.c

Patch 6.3a.007
Problem:    'cindent' recognizes "enum" but not "typedef enum".
Solution:   Skip over "typedef" before checking for "enum". (Helmut Stiegler)
	    Also avoid that searching for this item goes too far back.
Files:	    src/misc1.c, src/testdir/test3.in, src/testdir/test3.ok

Patch 6.3a.008 (extra)
Problem:    Windows 98: Some of the wide functions are not implemented,
	    resulting in file I/O to fail.  This depends on what Unicode
	    support is installed.
Solution:   Handle the failure and fall back to non-wide functions.
Files:	    src/os_win32.c

Patch 6.3a.009
Problem:    Win32: Completion of filenames does not work properly when
	    'encoding' differs from the active code page.
Solution:   Use wide functions for expanding wildcards when appropriate.
Files:	    src/misc1.c

Patch 6.3a.010 (extra)
Problem:    Win32: Characters in the window title that do not appear in the
	    active codepage are replaced by a question mark.
Solution:   Use DefWindowProcW() instead of DefWindowProc() when possible.
Files:	    src/glbl_ime.cpp, src/globals.h, src/proto/gui_w16.pro,
	    src/proto/gui_w32.pro, src/gui_w16.c, src/gui_w32.c, src/gui_w48.c

Patch 6.3a.011
Problem:    Using the explorer plugin changes a local directory to the global
	    directory.
Solution:   Don't use ":chdir" to restore the current directory.  Make
	    "expand('%:p')" remove "/../" and "/./" items from the path.
Files:	    runtime/plugin/explorer.vim, src/eval.c, src/os_unix.c

Patch 6.3a.012 (extra)
Problem:    On Windows 98 the installer doesn't work, don't even get the "I
	    agree" button.  The check for the path ending in "vim" makes the
	    browse dialog hard to use.  The default path when no previous Vim
	    is installed is "c:\vim" instead of "c:\Program Files\Vim".
Solution:   Remove the background gradient command.  Change the
	    .onVerifyInstDir function to a leave function for the directory
	    page.  Don't let the install program default to c:\vim when no
	    path could be found.
Files:	    nsis/gvim.nsi, src/dosinst.c

Patch 6.3a.013 (extra)
Problem:    Win32: Characters in the menu that are not in the active codepage
	    are garbled.
Solution:   Convert menu strings from 'encoding' to the active codepage.
Files:	    src/gui_w32.c, src/gui_w48.c

Patch 6.3a.014
Problem:    Using multi-byte text and highlighting in a statusline causes gaps
	    to appear. (Helmut Stiegler)
Solution:   Advance the column by text width instead of number of bytes.  Add
	    the vim_strnsize() function.
Files:	    src/charset.c, src/proto/charset.pro, src/screen.c

Patch 6.3a.015
Problem:    Using the "select all" menu item when 'insertmode' is set and
	    clicking the mouse button doesn't return to Insert mode.  The
	    Buffers/Delete menu doesn't offer a choice to abandon a changed
	    buffer.  (Jens Paulus)
Solution:   Don't use CTRL-\ CTRL-N.  Add ":confirm" for the Buffers menu
	    items.
Files:	    runtime/menu.vim

Patch 6.3a.016
Problem:    After cancelling the ":confirm" dialog the error message and
	    hit-enter prompt may not be displayed properly.
Solution:   Flush output after showing the dialog.
Files:	    src/message.c

Patch 6.3a.017
Problem:    servername() doesn't work when Vim was started with the "-X"
	    argument or when the "exclude" in 'clipboard' matches the terminal
	    name.  (Robert Nowotniak)
Solution:   Force connecting to the X server when using client-server
	    commands.
Files:	    src/eval.c, src/globals.h, src/os_unix.c

Patch 6.3a.018 (after 6.3a.017)
Problem:    Compiler warning for return value of make_connection().
Solution:   Use void return type.
Files:	    src/eval.c

Patch 6.3a.019 (extra)
Problem:    Win32: typing non-latin1 characters doesn't work.
Solution:   Invoke _OnChar() directly to avoid that the argument is truncated
	    to a byte.  Convert the UTF-16 character to bytes according to
	    'encoding' and ignore 'termencoding'.  Same for _OnSysChar().
Files:	    src/gui_w32.c, src/gui_w48.c

Patch 6.3a.020 (extra)
Problem:    Missing support for AROS (AmigaOS reimplementation).  Amiga GUI
	    doesn't work.
Solution:   Add AROS support.  (Adam Chodorowski)
	    Fix Amiga GUI problems. (Georg Steger, Ali Akcaagac)
Files:	    Makefile, src/Make_aros.mak, src/gui_amiga.c, src/gui_amiga.h,
	    src/memfile.c, src/os_amiga.c, src/term.c

Patch 6.3a.021 (after 6.3a.017)
Problem:    Can't compile with X11 but without GUI.
Solution:   Put use of "gui.in_use" inside an #ifdef.
Files:	    src/eval.c

Patch 6.3a.022
Problem:    When typing Tabs when 'softtabstop' is used and 'list' is set a
	    tab is counted for two spaces.
Solution:   Use the "L" flag in 'cpoptions' to tell whether a tab is counted
	    as two spaces or as 'tabstop'. (Antony Scriven)
Files:	    runtime/doc/options.txt, src/edit.c

Patch 6.3a.023
Problem:    Completion on the command line doesn't handle backslashes
	    properly.  Only the tail of matches is shown, even when not
	    completing filenames.
Solution:   When turning the string into a pattern double backslashes.  Don't
	    omit the path when not expanding files or directories.
Files:	    src/ex_getln.c

Patch 6.3a.024
Problem:    The "save all" toolbar item fails for buffers that don't have a
	    name.  When using ":wa" or closing the Vim window and there are
	    nameless buffers, browsing for a name may cause the name being
	    given to the wrong buffer or not stored properly.  ":browse" only
	    worked for one file.
Solution:   Use ":confirm browse" for "save all".
	    Pass buffer argument to setfname().  Restore "browse" flag and
	    "forceit" after doing the work for one file.
Files:	    runtime/menu.vim, src/buffer.c, src/ex_cmds.c, src/ex_cmds2.c,
	    src/ex_docmd.c, src/ex_getln.c, src/fileio.c, src/memline.c,
	    src/message.c, src/window.c, src/proto/buffer.pro,
	    src/proto/ex_cmds2.pro, src/proto/memline.pro

Patch 6.3a.025
Problem:    Setting 'virtualedit' moves the cursor. (Benji Fisher)
Solution:   Update the virtual column before using it.
Files:	    src/option.c

Patch 6.3a.026 (extra, after 6.3a.008)
Problem:    Editing files on Windows 98 doesn't work when 'encoding' is
	    "utf-8" (Antoine Mechelynck)
	    Warning for missing function prototype.
Solution:   For all wide functions check if it failed because it is not
	    implemented.  Use ANSI function declaration for char_to_string().
Files:	    src/gui_w48.c, src/os_mswin.c, src/os_win32.c

Patch 6.3a.027 (extra, after 6.3a.026)
Problem:    Compiler warning for function argument.
Solution:   Declare both char and WCHAR arrays.
Files:	    src/gui_w48.c

Patch 6.3a.028
Problem:    ":normal ." doesn't work inside a function, because redo is saved
	    and restored. (Benji Fisher)
Solution:   Make a copy of the redo buffer when executing a function.
Files:	    src/getchar.c

Patch 6.3b.001 (extra)
Problem:    Bcc 5: The generated auto/pathdef can't be compiled.
Solution:   Fix the way quotes and backslashes are escaped.
Files:	    src/Make_bc5.mak

Patch 6.3b.002
Problem:    Win32: conversion during file write fails when a double-byte
	    character is split over two writes.
Solution:   Fix the conversion retry without a trailing byte. (Taro Muraoka)
Files:	    src/fileio.c

Patch 6.3b.003 (extra)
Problem:    Win32: When compiling with Borland C 5.5 and 'encoding' is "utf-8"
	    then Vim can't open files under MS-Windows 98. (Antoine J.
	    Mechelynck)
Solution:   Don't use _wstat(), _wopen() and _wfopen() in this situation.
Files:	    src/os_mswin.c, src/os_win32.c

Patch 6.3b.004
Problem:    ":helpgrep" includes a trailing CR in the text line.
Solution:   Remove the CR.
Files:	    src/quickfix.c

Patch 6.3b.005
Problem:    ":echo &g:ai" results in the local option value. (Salman Halim)
Solution:   Pass the flags from find_option_end() to get_option_value().
Files:	    src/eval.c

Patch 6.3b.006
Problem:    When using "mswin.vim", CTRL-V in Insert mode leaves cursor before
	    last pasted character.  (Mathew Davis)
Solution:   Use the same Paste() function as in menu.vim.
Files:	    runtime/mswin.vim

Patch 6.3b.007
Problem:    Session file doesn't restore view on windows properly. (Robert
	    Webb)
Solution:   Restore window sizes both before and after restoring the view, so
	    that the view, cursor position and size are restored properly.
Files:	    src/ex_docmd.c

Patch 6.3b.008
Problem:    Using ":finally" in a user command doesn't always work. (Hari
	    Krishna Dara)
Solution:   Don't assume that using getexline() means the command was typed.
Files:	    src/ex_docmd.c

Patch 6.3b.009 (extra)
Problem:    Win32: When the -P argument is not found in a window title, there
	    is no error message.
Solution:   When the window can't be found give an error message and exit.
	    Also use try/except to catch failing to open the MDI window.
	    (Michael Wookey)
Files:	    src/gui_w32.c

Patch 6.3b.010
Problem:    Win32: Using the "-D" argument and expanding arguments may cause a
	    hang, because the terminal isn't initialized yet. (Vince Negri)
Solution:   Don't go into debug mode before the terminal is initialized.
Files:	    src/main.c

Patch 6.3b.011
Problem:    Using CTRL-\ e while obtaining an expression aborts the command
	    line. (Hari Krishna Dara)
Solution:   Insert the CTRL-\ e as typed.
Files:	    src/ex_getln.c

Patch 6.3b.012 (after 6.3b.010)
Problem:    Can't compile with tiny features. (Norbert Tretkowski)
Solution:   Add #ifdefs.
Files:	    src/main.c

Patch 6.3b.013
Problem:    Loading a session file results in editing the wrong file in the
	    first window when this is not the file at the current position in
	    the argument list. (Robert Webb)
Solution:   Check w_arg_idx_invalid to decide whether to edit a file.
Files:	    src/ex_docmd.c

Patch 6.3b.014
Problem:    ":runtime! foo*.vim" may using freed memory when a sourced script
	    changes the value of 'runtimepath'.
Solution:   Make a copy of 'runtimepath' when looping over the matches.
Files:	    src/ex_cmds2.c

Patch 6.3b.015
Problem:    Get lalloc(0) error when using "p" in Visual mode while
	    'clipboard' contains "autoselect,unnamed". (Mark Wagonner)
Solution:   Avoid allocating zero bytes.  Obtain the clipboard when necessary.
Files:	    src/ops.c

Patch 6.3b.016
Problem:    When 'virtualedit' is used "x" doesn't delete the last character
	    of a line that has as many characters as 'columns'. (Yakov Lerner)
Solution:   When the cursor isn't moved let oneright() return FAIL.
Files:	    src/edit.c

Patch 6.3b.017
Problem:    Win32: "vim --remote-wait" doesn't exit when the server finished
	    editing the file. (David Fishburn)
Solution:   In the rrhelper plugin change backslashes to forward slashes and
	    escape special characters.
Files:	    runtime/plugin/rrhelper.vim

Patch 6.3b.018
Problem:    The list of help files in the "local additions" table doesn't
	    recognize utf-8 encoding. (Yasuhiro Matsumoto)
Solution:   Recognize utf-8 characters.
Files:	    src/ex_cmds.c

Patch 6.3b.019
Problem:    When $VIMRUNTIME is not a full path name the "local additions"
	    table lists all the help files.
Solution:   Use fullpathcmp() instead of fnamecmp() to compare the directory
	    names.
Files:	    src/ex_cmds.c

Patch 6.3b.020
Problem:    When using CTRL-^ when entering a search string, the item in the
	    statusline that indicates the keymap is not updated. (Ilya
	    Dogolazky)
Solution:   Mark the statuslines for updating.
Files:	    src/ex_getln.c

Patch 6.3b.021
Problem:    The swapfile is not readable for others, the ATTENTION prompt does
	    not show all info when someone else is editing the same file.
	    (Marcel Svitalsky)
Solution:   Use the protection of original file for the swapfile and set it
	    after creating the swapfile.
Files:	    src/fileio.c

Patch 6.3b.022
Problem:    Using "4v" to select four times the old Visual area may put the
	    cursor beyond the end of the line. (Jens Paulus)
Solution:   Correct the cursor column.
Files:	    src/normal.c

Patch 6.3b.023
Problem:    When "3dip" starts in an empty line, white lines after the
	    non-white lines are not deleted. (Jens Paulus)
Solution:   Include the white lines.
Files:	    src/search.c

Patch 6.3b.024
Problem:    "2daw" does not delete leading white space like "daw" does.  (Jens
	    Paulus)
Solution:   Include the white space when a count is used.
Files:	    src/search.c

Patch 6.3b.025
Problem:    Percentage in ruler isn't updated when a line is deleted. (Jens
	    Paulus)
Solution:   Check for a change in line count when deciding to update the ruler.
Files:	    src/screen.c, src/structs.h

Patch 6.3b.026
Problem:    When selecting "abort" at the ATTENTION prompt for a file that is
	    already being edited Vim crashes.
Solution:   Don't abort creating a new buffer when we really need it.
Files:	    src/buffer.c, src/vim.h

Patch 6.3b.027
Problem:    Win32: When enabling the menu in a maximized window, Vim uses more
	    lines than what is room for. (Shizhu Pan)
Solution:   When deciding to call shell_resized(), also compare the text area
	    size with Rows and Columns, not just with screen_Rows and
	    screen_Columns.
Files:	    src/gui.c

Patch 6.3b.028
Problem:    When in diff mode, setting 'rightleft' causes a crash. (Eddine)
Solution:   Check for last column differently when 'rightleft' is set.
Files:	    src/screen.c

Patch 6.3b.029
Problem:    Win32: warning for uninitialized variable.
Solution:   Initialize to zero.
Files:	    src/misc1.c

Patch 6.3b.030
Problem:    After Visually selecting four characters, changing it to other
	    text, Visually selecting and yanking two characters: "." changes
	    four characters, another "." changes two characters. (Robert Webb)
Solution:   Don't store the size of the Visual area when redo is active.
Files:	    src/normal.c

==============================================================================
VERSION 6.4						*version-6.4*

This section is about improvements made between version 6.3 and 6.4.

This is a bug-fix release.  There are also a few new features.  The major
number of new items is in the runtime files and translations.

The big MS-Windows version now uses:
	Ruby version 1.8.3
	Perl version 5.8.7
	Python version 2.4.2


Changed							*changed-6.4*
-------

Removed runtime/tools/tcltags, Exuberant ctags does it better.


Added							*added-6.4*
-----

Alsaconf syntax file (Nikolai Weibull)
Eruby syntax, indent, compiler and ftplugin file (Doug Kearns)
Esterel syntax file (Maurizio Tranchero)
Mathematica indent file (Steve Layland)
Netrc syntax file (Nikolai Weibull)
PHP compiler file (Doug Kearns)
Pascal indent file (Neil Carter)
Prescribe syntax file (Klaus Muth)
Rubyunit compiler file (Doug Kearns)
SMTPrc syntax file (Kornel Kielczewski)
Sudoers syntax file (Nikolai Weibull)
TPP syntax file (Gerfried Fuchs)
VHDL ftplugin file (R. Shankar)
Verilog-AMS syntax file (S. Myles Prather)

Bulgarian keymap (Alberto Mardegan)
Canadian keymap (Eric Joanis)

Hungarian menu translations in UTF-8 (Kantra Gergely)
Ukrainian menu translations (Bohdan Vlasyuk)

Irish message translations (Kevin Patrick Scannell)

Configure also checks for tclsh8.4.


Fixed							*fixed-6.4*
-----

"dFxd;" deleted the character under the cursor, "d;" didn't remember the
exclusiveness of the motion.

When using "set laststatus=2 cmdheight=2" in the .gvimrc you may only get one
line for the cmdline. (Christian Robinson)  Invoke command_height() after the
GUI has started up.

Gcc would warn "dereferencing type-punned pointer will break strict -aliasing
rules".  Avoid using typecasts for variable pointers.

Gcc 3.x interprets the -MM argument differently.  Change "-I /path" to
"-isystem /path" for "make depend".


Patch 6.3.001
Problem:    ":browse split" gives the file selection dialog twice. (Gordon
	    Bazeley)  Same problem for ":browse diffpatch".
Solution:   Reset cmdmod.browse before calling do_ecmd().
Files:	    src/diff.c, src/ex_docmd.c

Patch 6.3.002
Problem:    When using translated help files with non-ASCII latin1 characters
	    in the first line the utf-8 detection is wrong.
Solution:   Properly detect utf-8 characters.  When a mix of encodings is
	    detected continue with the next language and avoid a "no matches"
	    error because of "got_int" being set.  Add the directory name to
	    the error message for a duplicate tag.
Files:	    src/ex_cmds.c

Patch 6.3.003
Problem:    Crash when using a console dialog and the first choice does not
	    have a default button. (Darin Ohashi)
Solution:   Allocate two more characters for the [] around the character for
	    the default choice.
Files:	    src/message.c

Patch 6.3.004
Problem:    When searching for a long string (140 chars in a 80 column
	    terminal) get three hit-enter prompts. (Robert Webb)
Solution:   Avoid the hit-enter prompt when giving the message for wrapping
	    around the end of the buffer.  Don't give that message again when
	    the string was not found.
Files:	    src/message.c, src/search.c

Patch 6.3.005
Problem:    Crash when searching for a pattern with a character offset and
	    starting in a closed fold. (Frank Butler)
Solution:   Check for the column to be past the end of the line.  Also fix
	    that a pattern with a character offset relative to the end isn't
	    read back from the viminfo properly.
Files:	    src/search.c

Patch 6.3.006
Problem:    ":breakadd file *foo" prepends the current directory to the file
	    pattern. (Hari Krishna Dara)
Solution:   Keep the pattern as-is.
Files:	    src/ex_cmds2.c

Patch 6.3.007
Problem:    When there is a buffer with 'buftype' set to "nofile" and using a
	    ":cd" command, the swap file is not deleted when exiting.
Solution:   Use the full path of the swap file also for "nofile" buffers.
Files:	    src/fileio.c

Patch 6.3.008
Problem:    Compiling fails under OS/2.
Solution:   Include "e_screenmode" also for OS/2. (David Sanders)
Files:	    src/globals.h

Patch 6.3.009 (after 6.3.006)
Problem:    ":breakadd file /path/foo.vim" does not match when a symbolic link
	    is involved.  (Servatius Brandt)
Solution:   Do expand the pattern when it does not start with "*".
Files:	    runtime/doc/repeat.txt, src/ex_cmds2.c

Patch 6.3.010
Problem:    When writing to a named pipe there is an error for fsync()
	    failing.
Solution:   Ignore the fsync() error for devices.
Files:	    src/fileio.c

Patch 6.3.011
Problem:    Crash when the completion function of a user-command uses a
	    "normal :cmd" command.  (Hari Krishna Dara)
Solution:   Save the command line when invoking the completion function.
Files:	    src/ex_getln.c

Patch 6.3.012
Problem:    Internal lalloc(0) error when using a complicated multi-line
	    pattern in a substitute command. (Luc Hermitte)
Solution:   Avoid going past the end of a line.
Files:	    src/ex_cmds.c

Patch 6.3.013
Problem:    Crash when editing a command line and typing CTRL-R = to evaluate
	    a function that uses "normal :cmd". (Hari Krishna Dara)
Solution:   Save and restore the command line when evaluating an expression
	    for CTRL-R =.
Files:	    src/ex_getln.c, src/ops.c, src/proto/ex_getln.pro,
	    src/proto/ops.pro

Patch 6.3.014
Problem:    When using Chinese or Taiwanese the default for 'helplang' is
	    wrong. (Simon Liang)
Solution:   Use the part of the locale name after "zh_".
Files:	    src/option.c

Patch 6.3.015
Problem:    The string that winrestcmd() returns may end in garbage.
Solution:   NUL-terminate the string. (Walter Briscoe)
Files:	    src/eval.c

Patch 6.3.016
Problem:    The default value for 'define' has "\s" before '#'.
Solution:   Add a star after "\s". (Herculano de Lima Einloft Neto)
Files:	    src/option.c

Patch 6.3.017
Problem:    "8zz" may leave the cursor beyond the end of the line. (Niko
	    Maatjes)
Solution:   Correct the cursor column after moving to another line.
Files:	    src/normal.c

Patch 6.3.018
Problem:    ":0argadd zero" added the argument after the first one, instead of
	    before it. (Adri Verhoef)
Solution:   Accept a zero range for ":argadd".
Files:	    src/ex_cmds.h

Patch 6.3.019
Problem:    Crash in startup for debug version. (David Rennals)
Solution:   Move the call to nbdebug_wait() to after allocating NameBuff.
Files:	    src/main.c

Patch 6.3.020
Problem:    When 'encoding' is "utf-8" and 'delcombine' is set, "dw" does not
	    delete a word but only a combining character of the first
	    character, if there is one. (Raphael Finkel)
Solution:   Correctly check that one character is being deleted.
Files:	    src/misc1.c

Patch 6.3.021
Problem:    When the last character of a file name is a multi-byte character
	    and the last byte is a path separator, the file cannot be edited.
Solution:   Check for the last byte to be part of a multi-byte character.
	    (Taro Muraoka)
Files:	    src/fileio.c

Patch 6.3.022 (extra)
Problem:    Win32: When the last character of a file name is a multi-byte
	    character and the last byte is a path separator, the file cannot
	    be written.  A trail byte that is a space makes that a file cannot
	    be opened from the command line.
Solution:   Recognize double-byte characters when parsing the command line.
	    In mch_stat() check for the last byte to be part of a multi-byte
	    character.  (Taro Muraoka)
Files:	    src/gui_w48.c, src/os_mswin.c

Patch 6.3.023
Problem:    When the "to" part of a mapping starts with its "from" part,
	    abbreviations for the same characters is not possible.  For
	    example, when <Space> is mapped to something that starts with a
	    space, typing <Space> does not expand abbreviations.
Solution:   Only disable expanding abbreviations when a mapping is not
	    remapped, don't disable it when the RHS of a mapping starts with
	    the LHS.
Files:	    src/getchar.c, src/vim.h

Patch 6.3.024
Problem:    In a few places a string in allocated memory is not terminated
	    with a NUL.
Solution:   Add ga_append(NUL) in script_get(), gui_do_findrepl() and
	    serverGetVimNames().
Files:	    src/ex_getln.c, src/gui.c, src/if_xcmdsrv.c, src/os_mswin.c

Patch 6.3.025 (extra)
Problem:    Missing NUL for list of server names.
Solution:   Add ga_append(NUL) in serverGetVimNames().
Files:	    src/os_mswin.c

Patch 6.3.026
Problem:    When ~/.vim/after/syntax/syncolor.vim contains a command that
	    reloads the colors an endless loop and/or a crash may occur.
Solution:   Only free the old value of an option when it was originally
	    allocated.  Limit recursiveness of init_highlight() to 5 levels.
Files:	    src/option.c, src/syntax.c

Patch 6.3.027
Problem:    VMS: Writing a file may insert extra CR characters.  Not all
	    terminals are recognized correctly.  Vt320 doesn't support colors.
	    Environment variables are not expanded correctly.
Solution:   Use another method to write files.  Add vt320 termcap codes for
	    colors.  (Zoltan Arpadffy)
Files:	    src/fileio.c, src/misc1.c, src/os_unix.c, src/structs.h,
	    src/term.c

Patch 6.3.028
Problem:    When appending to a file the BOM marker may be written.  (Alex
	    Jakushev)
Solution:   Do not write the BOM marker when appending.
Files:	    src/fileio.c

Patch 6.3.029
Problem:    Crash when inserting a line break. (Walter Briscoe)
Solution:   In the syntax highlighting code, don't use an old state after a
	    change was made, current_col may be past the end of the line.
Files:	    src/syntax.c

Patch 6.3.030
Problem:    GTK 2: Crash when sourcing a script that deletes the menus, sets
	    'encoding' to "utf-8" and loads the menus again.  GTK error
	    message when tooltip text is in a wrong encoding.
Solution:   Don't copy characters from the old screen to the new screen when
	    switching 'encoding' to utf-8, they may be invalid.  Only set the
	    tooltip when it is valid utf-8.
Files:	    src/gui_gtk.c, src/mbyte.c, src/proto/mbyte.pro, src/screen.c

Patch 6.3.031
Problem:    When entering a mapping and pressing Tab halfway the command line
	    isn't redrawn properly. (Adri Verhoef)
Solution:   Reposition the cursor after drawing over the "..." of the
	    completion attempt.
Files:	    src/ex_getln.c

Patch 6.3.032
Problem:    Using Python 2.3 with threads doesn't work properly.
Solution:   Release the lock after initialization.
Files:	    src/if_python.c

Patch 6.3.033
Problem:    When a mapping ends in a Normal mode command of more than one
	    character Vim doesn't return to Insert mode.
Solution:   Check that the mapping has ended after obtaining all characters of
	    the Normal mode command.
Files:	    src/normal.c

Patch 6.3.034
Problem:    VMS: crash when using ":help".
Solution:   Avoid using "tags-??", some Open VMS systems can't handle the "?"
	    wildcard.  (Zoltan Arpadffy)
Files:	    src/tag.c

Patch 6.3.035 (extra)
Problem:    RISC OS: Compile errors.
Solution:   Change e_screnmode to e_screenmode.  Change the way
	    __riscosify_control is set.  Improve the makefile.  (Andy Wingate)
Files:	    src/os_riscos.c, src/search.c, src/Make_ro.mak

Patch 6.3.036
Problem:    ml_get errors when the whole file is a fold, switching
	    'foldmethod' and doing "zj". (Christian J. Robinson) Was not
	    deleting the fold but creating a fold with zero lines.
Solution:   Delete the fold properly.
Files:	    src/fold.c

Patch 6.3.037 (after 6.3.032)
Problem:    Warning for unused variable.
Solution:   Change the #ifdefs for the saved thread stuff.
Files:	    src/if_python.c

Patch 6.3.038 (extra)
Problem:    Win32: When the "file changed" dialog pops up after a click that
	    gives gvim focus and not moving the mouse after that, the effect
	    of the click may occur when moving the mouse later. (Ken Clark)
	    Happened because the release event was missed.
Solution:   Clear the s_button_pending variable when any input is received.
Files:	    src/gui_w48.c

Patch 6.3.039
Problem:    When 'number' is set and inserting lines just above the first
	    displayed line (in another window on the same buffer), the line
	    numbers are not updated.  (Hitier Sylvain)
Solution:   When 'number' is set and lines are inserted/deleted redraw all
	    lines below the change.
Files:	    src/screen.c

Patch 6.3.040
Problem:    Error handling does not always work properly and may cause a
	    buffer to be marked as if it's viewed in a window while it isn't.
	    Also when selecting "Abort" at the attention prompt.
Solution:   Add enter_cleanup() and leave_cleanup() functions to move
	    saving/restoring things for error handling to one place.
	    Clear a buffer read error when it's unloaded.
Files:	    src/buffer.c, src/ex_docmd.c, src/ex_eval.c,
	    src/proto/ex_eval.pro, src/structs.h, src/vim.h

Patch 6.3.041 (extra)
Problem:    Win32: When the path to a file has Russian characters, ":cd %:p:h"
	    doesn't work. (Valery Kondakoff)
Solution:   Use a wide function to change directory.
Files:	    src/os_mswin.c

Patch 6.3.042
Problem:    When there is a closed fold at the top of the window, CTRL-X
	    CTRL-E in Insert mode reduces the size of the fold instead of
	    scrolling the text up. (Gautam)
Solution:   Scroll over the closed fold.
Files:	    src/move.c

Patch 6.3.043
Problem:    'hlsearch' highlighting sometimes disappears when inserting text
	    in PHP code with syntax highlighting. (Marcel Svitalsky)
Solution:   Don't use pointers to remember where a match was found, use an
	    index.  The pointers may become invalid when searching in other
	    lines.
Files:	    src/screen.c

Patch 6.3.044 (extra)
Problem:    Mac: When 'linespace' is non-zero the Insert mode cursor leaves
	    pixels behind. (Richard Sandilands)
Solution:   Erase the character cell before drawing the text when needed.
Files:	    src/gui_mac.c


Patch 6.3.045
Problem:    Unusual characters in an option value may cause unexpected
	    behavior, especially for a modeline. (Ciaran McCreesh)
Solution:   Don't allow setting termcap options or 'printdevice' in a
	    modeline.  Don't list options for "termcap" and "all" in a
	    modeline.  Don't allow unusual characters in 'filetype', 'syntax',
	    'backupext', 'keymap', 'patchmode' and 'langmenu'.
Files:	    src/option.c, runtime/doc/options.txt

Patch 6.3.046
Problem:    ":registers" doesn't show multi-byte characters properly.
	    (Valery Kondakoff)
Solution:   Get the length of each character before displaying it.
Files:	    src/ops.c

Patch 6.3.047 (extra)
Problem:    Win32 with Borland C 5.5 on Windows XP: A new file is created with
	    read-only attributes. (Tony Mechelynck)
Solution:   Don't use the _wopen() function for Borland.
Files:	    src/os_win32.c

Patch 6.3.048 (extra)
Problem:    Build problems with VMS on IA64.
Solution:   Add dependencies to the build file. (Zoltan Arpadffy)
Files:	    src/Make_vms.mms

Patch 6.3.049 (after 6.3.045)
Problem:    Compiler warning for "char" vs "char_u" mixup. (Zoltan Arpadffy)
Solution:   Add a typecast.
Files:	    src/option.c

Patch 6.3.050
Problem:    When SIGHUP is received while busy exiting, non-reentrant
	    functions such as free() may cause a crash.
Solution:   Ignore SIGHUP when exiting because of an error. (Scott Anderson)
Files:	    src/misc1.c, src/main.c

Patch 6.3.051
Problem:    When 'wildmenu' is set and completed file names contain multi-byte
	    characters Vim may crash.
Solution:   Reserve room for multi-byte characters. (Yasuhiro Matsumoto)
Files:	    src/screen.c

Patch 6.3.052 (extra)
Problem:    Windows 98: typed keys that are not ASCII may not work properly.
	    For example with a Russian input method. (Jiri Jezdinsky)
Solution:   Assume that the characters arrive in the current codepage instead
	    of UCS-2.  Perform conversion based on that.
Files:	    src/gui_w48.c

Patch 6.3.053
Problem:    Win32: ":loadview" cannot find a file with non-ASCII characters.
	    (Valerie Kondakoff)
Solution:   Use mch_open() instead of open() to open the file.
Files:	    src/ex_cmds2.c

Patch 6.3.054
Problem:    When 'insertmode' is set <C-L>4ixxx<C-L> hangs Vim. (Jens Paulus)
	    Vim is actually still working but redraw is disabled.
Solution:   When stopping Insert mode with CTRL-L don't put an Esc in the redo
	    buffer but a CTRL-L.
Files:	    src/edit.c

Patch 6.3.055 (after 6.3.013)
Problem:    Can't use getcmdline(), getcmdpos() or setcmdpos() with <C-R>=
	    when editing a command line.  Using <C-\>e may crash Vim. (Peter
	    Winters)
Solution:   When moving ccline out of the way for recursive use, make it
	    available to the functions that need it.  Also save and restore
	    ccline when calling get_expr_line().  Make ccline.cmdbuf NULL at
	    the end of getcmdline().
Files:	    src/ex_getln.c

Patch 6.3.056
Problem:    The last characters of a multi-byte file name may not be displayed
	    in the window title.
Solution:   Avoid to remove a multi-byte character where the last byte looks
	    like a path separator character. (Yasuhiro Matsumoto)
Files:	    src/buffer.c, src/ex_getln.c

Patch 6.3.057
Problem:    When filtering lines folds are not updated. (Carl Osterwisch)
Solution:   Update folds for filtered lines.
Files:	    src/ex_cmds.c

Patch 6.3.058
Problem:    When 'foldcolumn' is equal to the window width and 'wrap' is on
	    Vim may crash.  Disabling the vertical split feature breaks
	    compiling.  (Peter Winters)
Solution:   Check for zero room for wrapped text.  Make compiling without
	    vertical splits possible.
Files:	    src/move.c, src/quickfix.c, src/screen.c, src/netbeans.c

Patch 6.3.059
Problem:    Crash when expanding an ":edit" command containing several spaces
	    with the shell. (Brian Hirt)
Solution:   Allocate enough space for the quotes.
Files:	    src/os_unix.c

Patch 6.3.060
Problem:    Using CTRL-R CTRL-O in Insert mode with an invalid register name
	    still causes something to be inserted.
Solution:   Check the register name for being valid.
Files:	    src/edit.c

Patch 6.3.061
Problem:    When editing a utf-8 file in an utf-8 xterm and there is a
	    multi-byte character in the last column, displaying is messed up.
	    (Joël Rio)
Solution:   Check for a multi-byte character, not a multi-column character.
Files:	    src/screen.c

Patch 6.3.062
Problem:    ":normal! gQ" hangs.
Solution:   Quit getcmdline() and do_exmode() when out of typeahead.
Files:	    src/ex_getln.c, src/ex_docmd.c

Patch 6.3.063
Problem:    When a CursorHold autocommand changes to another window
	    (temporarily) 'mousefocus' stops working.
Solution:   Call gui_mouse_correct() after triggering CursorHold.
Files:	    src/gui.c

Patch 6.3.064
Problem:    line2byte(line("$") + 1) sometimes returns the wrong number.
	    (Charles Campbell)
Solution:   Flush the cached line before counting the bytes.
Files:	    src/memline.c

Patch 6.3.065
Problem:    The euro digraph doesn't always work.
Solution:   Add an "e=" digraph for Unicode euro character and adjust the
	    help files.
Files:	    src/digraph.c, runtime/doc/digraph.txt

Patch 6.3.066
Problem:    Backup file may get wrong permissions.
Solution:   Use permissions of original file for backup file in more places.
Files:	    src/fileio.c

Patch 6.3.067 (after 6.3.066)
Problem:    Newly created file gets execute permission.
Solution:   Check for "perm" to be negative before using it.
Files:	    src/fileio.c

Patch 6.3.068
Problem:    When editing a compressed file xxx.gz which is a symbolic link to
	    the actual file a ":write" renames the link.
Solution:   Resolve the link, so that the actual file is renamed and
	    compressed.
Files:	    runtime/plugin/gzip.vim

Patch 6.3.069
Problem:    When converting text with illegal characters Vim may crash.
Solution:   Avoid that too much is subtracted from the length. (Da Woon Jung)
Files:	    src/mbyte.c

Patch 6.3.070
Problem:    After ":set number linebreak wrap" and a vertical split, moving
	    the vertical separator far left will crash Vim. (Georg Dahn)
Solution:   Avoid dividing by zero.
Files:	    src/charset.c

Patch 6.3.071
Problem:    The message for CTRL-X mode is still displayed after an error for
	    'thesaurus' or 'dictionary' being empty.
Solution:   Clear "edit_submode".
Files:	    src/edit.c

Patch 6.3.072
Problem:    Crash in giving substitute message when language is Chinese and
	    encoding is utf-8. (Yongwei)
Solution:   Make the msg_buf size larger when using multi-byte.
Files:	    src/vim.h

Patch 6.3.073
Problem:    Win32 GUI: When the Vim window is partly above or below the
	    screen, scrolling causes display errors when the taskbar is not on
	    that side.
Solution:   Use the SW_INVALIDATE flag when the Vim window is partly below or
	    above the screen.
Files:	    src/gui_w48.c

Patch 6.3.074
Problem:    When mswin.vim is used and 'insertmode' is set, typing text in
	    Select mode and then using CTRL-V results in <SNR>99_Pastegi.
	    (Georg Dahn)
Solution:   When restart_edit is set use "d" instead of "c" to remove the
	    selected text to avoid calling edit() twice.
Files:	    src/normal.c

Patch 6.3.075
Problem:    After unloading another buffer, syntax highlighting in the current
	    buffer may be wrong when it uses "containedin". (Eric Arnold)
Solution:   Use "buf" instead of "curbuf" in syntax_clear().
Files:	    src/syntax.c

Patch 6.3.076
Problem:    Crash when using cscope and there is a parse error (e.g., line too
	    long). (Alexey I. Froloff)
Solution:   Pass the actual number of matches to cs_manage_matches() and
	    correctly handle the error situation.
Files:	    src/if_cscope.c

Patch 6.3.077 (extra)
Problem:    VMS: First character input after ESC was not recognized.
Solution:   Added TRM$M_TM_TIMED in vms_read().  (Zoltan Arpadffy)
Files:	    src/os_vms.c

Patch 6.3.078 (extra, after 6.3.077)
Problem:    VMS: Performance issue after patch 6.3.077
Solution:   Add a timeout in the itemlist.  (Zoltan Arpadffy)
Files:	    src/os_vms.c

Patch 6.3.079
Problem:    Crash when executing a command in the command line window while
	    syntax highlighting is enabled. (Pero Brbora)
Solution:   Don't use a pointer to a buffer that has been deleted.
Files:	    src/syntax.c

Patch 6.3.080 (extra)
Problem:    Win32: With 'encoding' set to utf-8 while the current codepage is
	    Chinese editing a file with some specific characters in the name
	    fails.
Solution:   Use _wfullpath() instead of _fullpath() when necessary.
Files:	    src/os_mswin.c

Patch 6.3.081
Problem:    Unix: glob() may execute a shell command when it's not wanted.
	    (Georgi Guninski)
Solution:   Verify the sandbox flag is not set.
Files:	    src/os_unix.c

Patch 6.3.082 (after 6.3.081)
Problem:    Unix: expand() may execute a shell command when it's not wanted.
	    (Georgi Guninski)
Solution:   A more generic solution than 6.3.081.
Files:	    src/os_unix.c

Patch 6.3.083
Problem:    VMS: The vt320 termcap entry is incomplete.
Solution:   Add missing function keys.  (Zoltan Arpadffy)
Files:	    src/term.c

Patch 6.3.084 (extra)
Problem:    Cygwin: compiling with DEBUG doesn't work.  Perl path was ignored.
	    Failure when $(OUTDIR) already exists.  "po" makefile is missing.
Solution:   Use changes tested in Vim 7. (Tony Mechelynck)
Files:	    src/Make_cyg.mak, src/po/Make_cyg.mak

Patch 6.3.085
Problem:    Crash in syntax highlighting code. (Marc Espie)
Solution:   Prevent current_col going past the end of the line.
Files:	    src/syntax.c

Patch 6.3.086 (extra)
Problem:    Can't produce message translation file with msgfmt that checks
	    printf strings.
Solution:   Fix the Russian translation.
Files:	    src/po/ru.po, src/po/ru.cp1251.po

Patch 6.3.087
Problem:    MS-DOS: Crash. (Jason Hood)
Solution:   Don't call fname_case() with a NULL pointer.
Files:	    src/ex_cmds.c

Patch 6.3.088
Problem:    Editing ".in" causes error E218. (Stefan Karlsson)
Solution:   Require some characters before ".in".  Same for ".orig" and others.
Files:	    runtime/filetype.vim

Patch 6.3.089
Problem:    A session file doesn't work when created while the current
	    directory contains a space or the directory of the session files
	    contains a space. (Paolo Giarrusso)
Solution:   Escape spaces with a backslash.
Files:	    src/ex_docmd.c

Patch 6.3.090
Problem:    A very big value for 'columns' or 'lines' may cause a crash.
Solution:   Limit the values to 10000 and 1000.
Files:	    src/option.c

Patch 6.4a.001
Problem:    The Unix Makefile contained too many dependencies and a few
	    uncommented lines.
Solution:   Run "make depend" with manual changes to avoid a gcc
	    incompatibility.  Comment a few lines.
Files:	    src/Makefile

Patch 6.4b.001
Problem:    Vim reports "Vim 6.4a" in the ":version" output.
Solution:   Change "a" to "b". (Tony Mechelynck)
Files:	    src/version.h

Patch 6.4b.002
Problem:    In Insert mode, pasting a multi-byte character after the end of
	    the line leaves the cursor just before that character.
Solution:   Make sure "gP" leaves the cursor in the right place when
	    'virtualedit' is set.
Files:	    src/ops.c

Patch 6.4b.003 (after 6.4b.002)
Problem:    The problem still exists when 'encoding' is set to "cp936".
Solution:   Fix the problem in getvvcol(), compute the coladd field correctly.
Files:	    src/charset.c, src/ops.c

Patch 6.4b.004
Problem:    Selecting a {} block with "viB" includes the '}' when there is an
	    empty line before it.
Solution:   Don't advance the cursor to include a line break when it's already
	    at the line break.
Files:	    src/search.c


 vim:tw=78:ts=8:ft=help:norl: