xaizek / vifm (License: GPLv2+) (since 2018-12-07)
Vifm is a file manager with curses interface, which provides Vi[m]-like environment for managing objects within file systems, extended with some useful ideas from mutt.
<root> / NEWS (f2b4474fa323c6a704b88fb0ab9df9fc4148d5b0) (277KiB) (mode 100644) [raw]
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
04 April 2023
=============

Vifm v0.13
----------

Thanks to everyone who tried out the beta.

Highlights:

 - Faster file-system navigation with a new searching/filtering submode.

   Hitting `<c-y>` after `/` or `=` allows finding and opening consecutive path
   components without leaving command-line mode.  In this mode keys like
   `<c-o>`/`<c-n>`/`<c-p>`/`<left>`/`<home>`/etc. help to refine cursor
   position or go to parent directory if necessary.

 - More interactive :compare.

   You can now see stats about file comparison on the status bar and have an
   option to easily re-run the comparison while toggling visibility of some of
   the groups.

   Also, default file alignment is more natural now.  `do` and `dp` handle
   selection.  You can force ignoring or respecting case in paths.  Performance
   and memory consumption have been improved in various cases.

 - Mouse support and TUI improvements.

   Once mouse support is enabled, you should be able to perform simple browsing
   with just your mouse for those cases when it's more convenient.

   Conflict dialog now always presents basic file metadata for comparison.
   Detailed progress dialog has ETA.  Ls-like view can now have a fixed number
   of columns.

 - Other.

   Formatting of tabs and entry selection in Lua.  Changing register's content
   via an editor.  Explicitly prompting user for input via input() function.

 - Fixes.

   v0.12.1 was supposed to improve escaping on Windows, but it simultaneously
   made one old bug more prominent, effectively making things much worse in
   some cases.  This release remedies that.

   %N macro has been adjusted to fix integration with image preview of Kitty
   v0.27+.

   Lots of fixes related to search and various combinations of 'hlsearch',
   'incsearch' in different modes.

Normal and visual modes:
 - made Ctrl-E/Ctrl-Y scroll transposed ls-like view horizontally by one column;
 - extended do and dp keys to process selection (thanks to Mark S., a.k.a.
   Markuzcha).

:set command and options:
 - added 'mouse' option to control when mouse input is handled (not handled by
   default);
 - added 'navoptions' option to allow tweaking navigation mode a bit (thanks to
   filterfalse);
 - added 'tabline' option to specify format of the tab line;
 - added "columncount:" value to 'lsoptions' to always display fixed number of
   columns (thanks to Aleksandr Vysotskiy, a.k.a. loki1368);
 - added "rpreview:files" to 'milleroptions' (thanks to aksr).

Command-line mode:
 - changed error reporting for some of the :commands such that now their
   failures cause a dialog to appear on sourcing, previously those errors were
   printed only to status bar;
 - changed implementation of `:compare grouppaths` to juxtapose only files with
   identical relative paths (patch by Alexandr Keyp, a.k.a. IAmKapuze);
 - added "withicase" and "withrcase" to :compare that force ignoring and
   respecting case respectively on comparing file names and paths (thanks to
   Jose Riha, a.k.a. jose1711);
 - added show* arguments to :compare command to control/switch which sets of
   files are displayed (toggling is done by :compare!) (patch by Alexandr Keyp,
   a.k.a. IAmKapuze);
 - added :amap, :anoremap and :aunmap commands to configure mappings in
   navigation mode (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
 - added :regedit command for external editing of register contents (thanks to
   Daniel J. Perry, a.k.a. BioBox; patch by Rostislav Tolushkin, a.k.a.
   nullptr-deref);
 - added Ctrl-Y key to command-line mode.  It activates fast navigation that
   allows entering deep paths by a series of searches for individual path
   components (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
 - added Ctrl-J key to command-line navigation.  It leaves the mode without
   opening a file/directory (thanks to filterfalse);
 - added Ctrl-O key to command-line navigation that goes to parent directory;
 - added Ctrl-N/P keys to command-line navigation to move view cursor up/down
   (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
 - added Arrows/Home/End/Page Up/Page Down keys to command-line navigation to
   move view cursor (thanks to Henrik Holst, a.k.a. hholst80, and dmocek).

Core:
 - added printing stats while in :compare mode (patch by Alexandr Keyp, a.k.a.
   IAmKapuze);
 - don't move cursor on search failure during search with a count (patch by
   filterfalse);
 - specified a few more cases when to show a search message with search
   highlighting turned on: if found a match, if wrapping is turned on, and in
   visual mode (patch by filterfalse);
 - a regular search logic showing messages is applied to n/N (patch by
   filterfalse).

File operations:
 - made aborting deletion abort the operation on the rest of files when
   deleting multiple files.

Macros:
 - changed %N macro to also not start a process group for a command (thanks to
   Oskar Grunning, a.k.a. sQVe).

Scripting:
 - added input() builtin function to prompt user for input (thanks to Artur F.,
   a.k.a. arturfabriciohahaedgy);
 - added filereadable() builtin function mainly as a way to check file's
   presence.

Menus and dialogs:
 - added r key to :jobs menu, which reloads the list of jobs (thanks to Sylwia
   Ptasinska, a.k.a. SylEleuth);
 - made feedback after pressing dd in :jobs more prominent (thanks to Sylwia
   Ptasinska, a.k.a. SylEleuth).

TUI (Text User Interface):
 - added builtin handling of mouse events (thanks to ranousse, Sergei Shilovsky
   and user451421541757324; patch by 高浩亮, a.k.a. haolian9);
 - added ETA to detailed progress dialog (thanks to Jose Riha, a.k.a.
   jose1711);
 - apply file highlighting to "ext" and "fileext" view columns (thanks to
   aleksejrs);
 - merged file conflict comparison dialog into the main conflict dialog (thanks
   to aleksejrs);
 - made file conflict more concise (thanks to aleksejrs).

Color schemes:
 - added additional User10..User20 highlight groups and corresponding %10*-%20*
   macros (thanks to Sylwia Ptasinska, a.k.a. SylEleuth);
 - update Default-256 to differentiate between more file types (thanks to
   aleksejrs).

Invocation:
 - added `--plugins-dir` command-line option which allows specifying additional
   places to look for plugins (thanks to 高浩亮, a.k.a. haolian9).

Performance:
 - reduced amount of memory consumed by `:compare groupids`;
 - made `:compare bycontents` not bother reading content of files which have
   unique size.

Documentation:
 - provide basic instructions in the documentation on how mappings work (thanks
   to dmocek);
 - fixed description of %i macro in the documentation to mention that it runs
   command in background.

Packaging:
 - changed use of `$(filter-out)` in src/Makefile.am to `$(var:from=to)`
   substitution to get rid of a warning on configuration;
 - changed how pthread support is detected by configure script to handle more
   cases (thanks to Markus Elfring, a.k.a. elfring);
 - changed configure script to fail if neither perl nor vim is available
   instead of failing to generate tags for Vim-style documentation (thanks to
   Sergei Trofimovich, a.k.a. trofi);
 - install icons also to ${prefix}/share/icons.  It's not clear that using
   ${prefix}/share/pixmaps will always be handled properly (thanks to Szilárd
   Andai).

Integration:
 - made instances running inside AppImage consider contents of `/etc/vifm`
   (thanks to aleksejrs);
 - fixed $VIFM_APPDIR_ROOT being ignored by :help command, which made it not
   work properly from AppImage (thanks to infinitewhileloop).

Only on Windows:
 - fixed escaping of file paths when using 'vicmd' or 'vixcmd' to open a file
   on Windows (thanks to Phil Runninger).

Noteworthy fixes:
 - fixed abort due to assertion failure on using zx normal mode key after
   leaving tree in some cases (thanks to Mark S., a.k.a. Markuzcha);
 - fixed asynchronous previewing of symbolic links, which required manual
   redraw (thanks to Alexandre Viau);
 - fixed FUSE mounting assuming `2>` redirection is supported by the shell,
   which isn't true at least for csh and tcsh (thanks to Evgeniy, a.k.a.
   iron-udjin);
 - fixed dialogs not handling non-latin characters well;
 - fixed :locate never escaping its arguments (should be done unless the first
   one starts with a dash).  This is a regression in 0.7.6;
 - fixed n/N not moving the cursor without prior search (patch by filterfalse);
 - fixed resetting 'hlsearch' during incremental search in visual mode (patch
   by filterfalse);
 - fixed dropping selected files on empty input during incremental search in
   visual mode when 'hlsearch' is set (patch by filterfalse);
 - fixed segfault on trying to use a pipe from Lua after its parent VifmJob
   object was garbage-collected (thanks to PRESFIL);
 - fixed 'previewprg' not being respected on switching to view mode (regression
   in 0.12-beta) (thanks to Sitaram Chamarty).

See change log for the full list of changes and by whom they were suggested or
implemented.

17 March 2023
=============

Vifm v0.13 beta
---------------

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Highlights:

 - Faster file-system navigation with a new searching/filtering submode.

   Hitting `<c-y>` after `/` or `=` allows finding and opening consecutive path
   components without leaving command-line mode.  In this mode keys like
   `<c-o>`/`<c-n>`/`<c-p>`/`<left>`/`<home>`/etc. help to refine cursor
   position or go to parent directory if necessary.

 - More interactive :compare.

   You can now see stats about file comparison on the status bar and have an
   option to easily re-run the comparison while toggling visibility of some of
   the groups.

   Also, default file alignment is more natural now.  `do` and `dp` handle
   selection.  You can force ignoring or respecting case in paths.  Performance
   and memory consumption have been improved in various cases.

 - Mouse support and TUI improvements.

   Once mouse support is enabled, you should be able to perform simple browsing
   with just your mouse for those cases when it's more convenient.

   Conflict dialog now always presents basic file metadata for comparison.
   Detailed progress dialog has ETA.  Ls-like view can now have a fixed number
   of columns.

 - Other.

   Formatting of tabs in Lua.  Changing register's content via an editor.
   Explicitly prompting user for input via input() function.

 - Fixes.

   v0.12.1 was supposed to improve escaping on Windows, but it simultaneously
   made one old bug more prominent, effectively making things much worse in
   some cases.  This release remedies that.

   %N macro has been adjusted to fix integration with image preview of Kitty
   v0.27+.

   Lots of fixes related to search and various combinations of 'hlsearch',
   'incsearch' in different modes.

Normal and visual modes:
 - made Ctrl-E/Ctrl-Y scroll transposed ls-like view horizontally by one column;
 - extended do and dp keys to process selection (thanks to Mark S., a.k.a.
   Markuzcha).

:set command and options:
 - added 'mouse' option to control when mouse input is handled (not handled by
   default);
 - added 'navoptions' option to allow tweaking navigation mode a bit (thanks to
   filterfalse);
 - added 'tabline' option to specify format of the tab line;
 - added "columncount:" value to 'lsoptions' to always display fixed number of
   columns (thanks to Aleksandr Vysotskiy, a.k.a. loki1368);
 - added "rpreview:files" to 'milleroptions' (thanks to aksr).

Command-line mode:
 - changed error reporting for some of the :commands such that now their
   failures cause a dialog to appear on sourcing, previously those errors were
   printed only to status bar;
 - changed implementation of `:compare grouppaths` to juxtapose only files with
   identical relative paths (patch by Alexandr Keyp, a.k.a. IAmKapuze);
 - added "withicase" and "withrcase" to :compare that force ignoring and
   respecting case respectively on comparing file names and paths (thanks to
   Jose Riha, a.k.a. jose1711);
 - added show* arguments to :compare command to control/switch which sets of
   files are displayed (toggling is done by :compare!) (patch by Alexandr Keyp,
   a.k.a. IAmKapuze);
 - added :amap, :anoremap and :aunmap commands to configure mappings in
   navigation mode (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
 - added :regedit command for external editing of register contents (thanks to
   Daniel J. Perry, a.k.a. BioBox; patch by Rostislav Tolushkin, a.k.a.
   nullptr-deref);
 - added Ctrl-Y key to command-line mode.  It activates fast navigation that
   allows entering deep paths by a series of searches for individual path
   components (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
 - added Ctrl-J key to command-line navigation.  It leaves the mode without
   opening a file/directory (thanks to filterfalse);
 - added Ctrl-O key to command-line navigation that goes to parent directory;
 - added Ctrl-N/P keys to command-line navigation to move view cursor up/down
   (thanks to Henrik Holst, a.k.a. hholst80, and dmocek);
 - added Arrows/Home/End/Page Up/Page Down keys to command-line navigation to
   move view cursor (thanks to Henrik Holst, a.k.a. hholst80, and dmocek).

Core:
 - added printing stats while in :compare mode (patch by Alexandr Keyp, a.k.a.
   IAmKapuze);
 - don't move cursor on search failure during search with a count (patch by
   filterfalse);
 - specified a few more cases when to show a search message with search
   highlighting turned on: if found a match, if wrapping is turned on, and in
   visual mode (patch by filterfalse);
 - a regular search logic showing messages is applied to n/N (patch by
   filterfalse).

File operations:
 - made aborting deletion abort the operation on the rest of files when
   deleting multiple files.

Macros:
 - changed %N macro to also not start a process group for a command (thanks to
   Oskar Grunning, a.k.a. sQVe).

Scripting:
 - added input() builtin function to prompt user for input (thanks to Artur F.,
   a.k.a. arturfabriciohahaedgy);
 - added filereadable() builtin function mainly as a way to check file's
   presence.

Menus and dialogs:
 - added r key to :jobs menu, which reloads the list of jobs (thanks to Sylwia
   Ptasinska, a.k.a. SylEleuth);
 - made feedback after pressing dd in :jobs more prominent (thanks to Sylwia
   Ptasinska, a.k.a. SylEleuth).

TUI (Text User Interface):
 - added builtin handling of mouse events (thanks to ranousse, Sergei Shilovsky
   and user451421541757324; patch by 高浩亮, a.k.a. haolian9);
 - added ETA to detailed progress dialog (thanks to Jose Riha, a.k.a.
   jose1711);
 - apply file highlighting to "ext" and "fileext" view columns (thanks to
   aleksejrs);
 - merged file conflict comparison dialog into the main conflict dialog (thanks
   to aleksejrs);
 - made file conflict more concise (thanks to aleksejrs).

Color schemes:
 - added additional User10..User20 highlight groups and corresponding %10*-%20*
   macros (thanks to Sylwia Ptasinska, a.k.a. SylEleuth);
 - update Default-256 to differentiate between more file types (thanks to
   aleksejrs).

Invocation:
 - added `--plugins-dir` command-line option which allows specifying additional
   places to look for plugins (thanks to 高浩亮, a.k.a. haolian9).

Performance:
 - reduced amount of memory consumed by `:compare groupids`;
 - made `:compare bycontents` not bother reading content of files which have
   unique size.

Documentation:
 - provide basic instructions in the documentation on how mappings work (thanks
   to dmocek);
 - fixed description of %i macro in the documentation to mention that it runs
   command in background.

Packaging:
 - changed use of `$(filter-out)` in src/Makefile.am to `$(var:from=to)`
   substitution to get rid of a warning on configuration;
 - changed how pthread support is detected by configure script to handle more
   cases (thanks to Markus Elfring, a.k.a. elfring);
 - changed configure script to fail if neither perl nor vim is available
   instead of failing to generate tags for Vim-style documentation (thanks to
   Sergei Trofimovich, a.k.a. trofi);
 - install icons also to ${prefix}/share/icons.  It's not clear that using
   ${prefix}/share/pixmaps will always be handled properly (thanks to Szilárd
   Andai).

Integration:
 - made instances running inside AppImage consider contents of `/etc/vifm`
   (thanks to aleksejrs);
 - fixed $VIFM_APPDIR_ROOT being ignored by :help command, which made it not
   work properly from AppImage (thanks to infinitewhileloop).

Only on Windows:
 - fixed escaping of file paths when using 'vicmd' or 'vixcmd' to open a file
   on Windows (thanks to Phil Runninger).

Noteworthy fixes:
 - fixed abort due to assertion failure on using zx normal mode key after
   leaving tree in some cases (thanks to Mark S., a.k.a. Markuzcha);
 - fixed asynchronous previewing of symbolic links, which required manual
   redraw (thanks to Alexandre Viau);
 - fixed FUSE mounting assuming `2>` redirection is supported by the shell,
   which isn't true at least for csh and tcsh (thanks to Evgeniy, a.k.a.
   iron-udjin);
 - fixed dialogs not handling non-latin characters well;
 - fixed :locate never escaping its arguments (should be done unless the first
   one starts with a dash).  This is a regression in 0.7.6;
 - fixed n/N not moving the cursor without prior search (patch by filterfalse);
 - fixed resetting 'hlsearch' during incremental search in visual mode (patch
   by filterfalse);
 - fixed dropping selected files on empty input during incremental search in
   visual mode when 'hlsearch' is set (patch by filterfalse);
 - fixed segfault on trying to use a pipe from Lua after its parent VifmJob
   object was garbage-collected (thanks to PRESFIL);
 - fixed 'previewprg' not being respected on switching to view mode (regression
   in 0.12-beta) (thanks to Sitaram Chamarty).

See change log for the full list of changes and by whom they were suggested or
implemented.

21 September 2022
=================

Vifm v0.12.1
------------

Thanks to everyone who tried out the beta.

Changes overview:

 - Expression register for command-line prompts (Ctrl-R =).

   If you ever wanted to insert result of evaluating an expression into
   command-line, now you can.  One of the most useful applications of this is
   pasting clipboard's contents without the risk of it being processed as user
   input (e.g., `:<c-r>=system('xsel')`).

 - Selection handling improvements.

   New :keepsel command-prefix is meant to suppress clearing of selection done
   automatically after most of command-line commands thus avoiding the need for
   using `gs` command to restore it.  As a common case, the behaviour for :view
   command has been changed to not drop selection.

   Restoring selection in a newly entered directory can now be done not just
   from a register populated ahead via yanking selection (`"rgs`), but just by
   executing `gs` to restore selection the directory had before it was left
   last time.  Vifm remembers last 10 locations with non-empty selection.

 - An arbitrary editor can now be fully integrated via Lua.

   'vicmd' and 'vixcmd' were always there, but commands specified in these
   options could receive Vim-specific arguments they don't expect.  Writing a
   shell wrapper was an option, but it had to do guesswork while
   post-processing arguments meant for Vim, which is error prone.  A Lua
   handler can now be used instead.  It receives full context about editor
   invocation and can perfectly forward the request to an arbitrary editor.

 - TUI improvements.

   Escaping of unprintable characters, less of annoying flickering, slightly
   better File Info dialog.

   Conflict resolution dialog now provides a sub-dialog for comparing
   conflicting files and is also smarter at picking which actions to offer.

 - Lua API additions (still experimental).

   The API now gives some access to layout, tabs and keys.

   Unlike :*map commands, keys API allows defining custom selectors (like "2j"
   in "d2j"), keys that accept an argument (like "a" in "ma") and keys that
   accept selectors (custom or builtin).

 - Other.

   Bulk retargetting of links, optional implicit `:cd` on command line, macros
   that expand to non-empty selection, supporting more `<keys>`, completion
   for `fish` shell.

 - Fixes.

   Escaping of arguments and slashes in paths will now hopefully work better on
   Windows, which is generally an issue there.  Yori shell is now also handled
   on Windows.

   New %N macro can be used to fix image preview in Kitty terminal.

Core:
 - added expression pseudo-register (Ctrl-R =) for command-line mode (thanks to
   Marcos Cruz and Jiji from Vifm Q2A site);
 - added parsing of \c and \C sequences in regular expressions to force case
   ignoring or matching respectively (thanks to filterfalse and Safal Piya,
   a.k.a. mrsafalpiya).

Configuration:
 - changed how location of trash directory is determined.  Now starting
   `vifm --no-configs` won't mess anything up if you're using `~/.vifm`.  Can
   potentially cause some trouble for existing configurations, but shouldn't.

Command-line mode:
 - added :keepsel command.  Changes default behaviour after running a :command
   to not reset selection of a view (thanks to dalvand and sharklasers996);
 - added -skip parameter to :copy/:move/:alink/:rlink.  Makes the commands
   automatically skip files that exist at destination instead of refusing to
   proceed (thanks to Jose Riha, a.k.a. jose1711);
 - added handling of "-" in :session for switching to a previous session;
 - added ":history exprreg" menu for displaying history of expression register
   values;
 - do not reset selection on :view command (thanks to Alexandre Viau);
 - permit directories with trailing slashes supplied by external commands in
   `:[un]select !cmd` (patch by filterfalse).

Normal and visual modes:
 - changed [c and ]c to also traverse added/missing entries (thanks to qsmodo);
 - added cl key visual mode (similar to its function in normal mode);
 - extended cl normal mode key to handle selection of multiple files (thanks to
   aleksejrs);
 - made gs normal mode key remember selection for up to 10 last entered
   directories (thanks to ratnamhof and Matthias Braun, a.k.a. mb720).

:set command and options:
 - added 'autocd' option.  Makes invalid :commands be interpreted as an implicit
   :cd command (thanks to Taras Halturin, a.k.a. halturin);
 - added %o macro to 'statusline', which expands to Unix permissions in octal
   form (and to nothing on Windows) (thanks to iSeeU816);
 - added "datasync" value to 'iooptions' option to configure whether writes on
   file copying when 'syscalls' is on are synchronized periodically (thanks to
   Andrew Savchenko and Afz);
 - added "ehistory" value to 'vifminfo' and 'sessionoptions' option.  It manages
   storing of expression register history;
 - added optional border for horizontal split layout controlled by newly added
   "hborder" in 'fillchars' (patch by qsmodo);
 - added "maxtreedepth" value to 'previewoptions' option, which allows limiting
   depths of the displayed tree (thanks to Afz);
 - set 'title' option by default if $TERM is foot* as its terminfo entry might
   lack tsl and fsl attributes (thanks to nobodyatandnothing).

Macros:
 - added %N macro that prevents detaching viewers from current session (thanks
   to emorozov);
 - added %pu macro that disables caching of viewer's output (thanks to b0x4it);
 - added %l/%"l and %L/%"L macros for the list of selected files.  %f is not
   empty if there is no selection, which is not always desirable (thanks to
   ratnamhof).

Angle bracket notation:
 - added angle-bracket notation for alpha keys with Alt and Shift modifiers
   (<[am]-s-[a-z]>, <s-[am]-[a-z]>) (thanks to Reece Petersen);
 - added angle-bracket notation for numeric keys with Alt modifier
   (<[am]-[0-9]>) (thanks to anonymous at Vifm Q2A site);
 - added angle-bracket notation for some shifted grey keys: <s-home>, <s-end>,
   <s-left>, <s-right>, <s-up>, <s-down>, <s-pageup>, <s-pagedown>, <s-delete>,
   <s-insert> (patch by M Kelly).

Scripting:
 - extended has() builtin function to check for Lua handlers;
 - don't expand() macros in environment variables (patch by filterfalse).

Lua:
 - upgraded Lua from 5.4.3 to 5.4.4;
 - added sample plugin for using mpc;
 - added sample plugin for customizing editor;
 - added vifm.escape() function;
 - added vifm.run() function (similar to `:!`);
 - added vifm.sessions.current() function;
 - added vifm.keys.add() for adding mappings (can accept selectors or an
   argument like in `'a`) and selectors;
 - enable os.tmpname();
 - exposed minimal API for tabs (includes layout).

TUI (Text User Interface):
 - escape unreadable characters in menus, command-line mode, dialogs and
   statusbar messages (thanks to MadMaverick9);
 - hide graphics when displaying dialogs or entering menus, more or file info
   modes (thanks to heelsleeh and PRESFIL);
 - fixed multiple cases of cursor/UI flickering.

Color schemes:
 - added CmpUnmatched and CmpBlank highlight groups (thanks to qsmodo).

Menus and dialogs:
 - changed conflict dialog to offer "Merge all" option even for files if there
   are some directories left to process (thanks to dalvand);
 - added comparison action to conflict resolution dialog (thanks to anonymous at
   Vifm Q2A site and dalvand);
 - display permissions in octal form in File Info dialog and group them with
   owner/group info (thanks to iSeeU816);
 - reformat File Info dialog to be more compact (thanks to chelovechishko).

Performance:
 - extended optimizations for globs to cover `something*` and `some*thing`
   cases.

Vim-plugin:
 - added :PeditVifm command (and corresponding :PeditVim) to the plugin (thanks
   to Mukund Mauji, a.k.a. maujim).

Only on Windows:
 - added initial support for Yori shell on Windows (not everything might work
   well at this point) (thanks to LinArcX);
 - fixed argument escaping issues for foreground programs on Windows (thanks to
   fohrums);
 - fixed auto-detection of GUI programs on Windows, which prevents Vifm from
   waiting on them to finish (thanks to Azin Sharaf);
 - fixed `start` in :file[x]type commands on Windows not being considered as
   present;
 - fixed slashes being doubled in macros like %"c on Windows with cmd.exe as a
   shell (thanks to Toby Hawkins, a.k.a. HawkinsT).

Documentation:
 - documented that <del> key might correspond to <bs> (thanks to dalvand).

Noteworthy fixes:
 - fixed building when fdatasync() call isn't available (thanks to Schrijvers
   Luc, a.k.a. Begasus);
 - fixed severe performance degradation after measuring size of large directory
   trees;
 - fixed `:compare listunique` yielding different results depending on which
   view is active due to not processing bottom files in the current view in some
   situations;
 - fixed graphics not being cleared properly on switching between viewers in
   view mode;
 - fixed processing of extended keys on OpenBSD;
 - fixed :. file modifier incorrectly checking for one path being parent of
   another and producing weird results ("/pa" was considered parent of "/path",
   with "th" being the result) (thanks to Dennis Preiser, a.k.a. 0xDP);
 - fixed --remote and --remote-expr failing if $TERM isn't valid (regression in
   0.11-beta) (thanks to b0x4it);
 - fixed directory preview resetting after detaching from it (thanks to Luka
   Markušić, a.k.a. mark2185).

See change log for the full list of changes and by whom they were suggested or
implemented.

September 05, 2022
==================

Vifm v0.12.1 beta
-----------------

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Changes overview:

 - Expression register for command-line prompts (Ctrl-R =).

   If you ever wanted to insert result of evaluating an expression into
   command-line, now you can.  One of the most useful applications of this is
   pasting clipboard's contents without the risk of it being processed as user
   input (e.g., `:<c-r>=system('xsel')`).

 - Selection handling improvements.

   New :keepsel command-prefix is meant to suppress clearing of selection done
   automatically after most of command-line commands thus avoiding the need for
   using `gs` command to restore it.  As a common case, the behaviour for :view
   command has been changed to not drop selection.

   Restoring selection in a newly entered directory can now be done not just
   from a register populated ahead via yanking selection (`"rgs`), but just by
   executing `gs` to restore selection the directory had before it was left
   last time.  Vifm remembers last 10 locations with non-empty selection.

 - An arbitrary editor can now be fully integrated via Lua.

   'vicmd' and 'vixcmd' were always there, but commands specified in these
   options could receive Vim-specific arguments they don't expect.  Writing a
   shell wrapper was an option, but it had to do guesswork while
   post-processing arguments meant for Vim, which is error prone.  A Lua
   handler can now be used instead.  It receives full context about editor
   invocation and can perfectly forward the request to an arbitrary editor.

 - TUI improvements.

   Escaping of unprintable characters, less of annoying flickering, slightly
   better File Info dialog.

   Conflict resolution dialog now provides a sub-dialog for comparing
   conflicting files and is also smarter at picking which actions to offer.

 - Lua API additions (still experimental).

   The API now gives some access to layout, tabs and keys.

   Unlike :*map commands, keys API allows defining custom selectors (like "2j"
   in "d2j"), keys that accept an argument (like "a" in "ma") and keys that
   accept selectors (custom or builtin).

 - Other.

   Bulk retargetting of links, optional implicit `:cd` on command line, macros
   that expand to non-empty selection, supporting more `<keys>`.

 - Fixes.

   Escaping of arguments and slashes in paths will now hopefully work better on
   Windows, which is generally an issue there.  Yori shell is now also handled
   on Windows.

   New %N macro can be used to fix image preview in Kitty terminal.

Core:
 - added expression pseudo-register (Ctrl-R =) for command-line mode (thanks to
   Marcos Cruz and Jiji from Vifm Q2A site);
 - added parsing of \c and \C sequences in regular expressions to force case
   ignoring or matching respectively (thanks to filterfalse and Safal Piya,
   a.k.a. mrsafalpiya).

Configuration:
 - changed how location of trash directory is determined.  Now starting
   `vifm --no-configs` won't mess anything up if you're using `~/.vifm`.  Can
   potentially cause some trouble for existing configurations, but shouldn't.

Command-line mode:
 - added :keepsel command.  Changes default behaviour after running a :command
   to not reset selection of a view (thanks to dalvand and sharklasers996);
 - added -skip parameter to :copy/:move/:alink/:rlink.  Makes the commands
   automatically skip files that exist at destination instead of refusing to
   proceed (thanks to Jose Riha, a.k.a. jose1711);
 - added handling of "-" in :session for switching to a previous session;
 - added ":history exprreg" menu for displaying history of expression register
   values;
 - do not reset selection on :view command (thanks to Alexandre Viau).

Normal and visual modes:
 - changed [c and ]c to also traverse added/missing entries (thanks to qsmodo);
 - added cl key visual mode (similar to its function in normal mode);
 - extended cl normal mode key to handle selection of multiple files (thanks to
   aleksejrs);
 - made gs normal mode key remember selection for up to 10 last entered
   directories (thanks to ratnamhof and Matthias Braun, a.k.a. mb720).

:set command and options:
 - added 'autocd' option.  Makes invalid :commands be interpreted as an implicit
   :cd command (thanks to Taras Halturin, a.k.a. halturin);
 - added %o macro to 'statusline', which expands to Unix permissions in octal
   form (and to nothing on Windows) (thanks to iSeeU816);
 - added "datasync" value to 'iooptions' option to configure whether writes on
   file copying when 'syscalls' is on are synchronized periodically (thanks to
   Andrew Savchenko and Afz);
 - added "ehistory" value to 'vifminfo' and 'sessionoptions' option.  It manages
   storing of expression register history;
 - added optional border for horizontal split layout controlled by newly added
   "hborder" in 'fillchars' (patch by qsmodo);
 - added "maxtreedepth" value to 'previewoptions' option, which allows limiting
   depths of the displayed tree (thanks to Afz);
 - set 'title' option by default if $TERM is foot* as its terminfo entry might
   lack tsl and fsl attributes (thanks to nobodyatandnothing).

Macros:
 - added %N macro that prevents detaching viewers from current session (thanks
   to emorozov);
 - added %pu macro that disables caching of viewer's output (thanks to b0x4it);
 - added %l/%"l and %L/%"L macros for the list of selected files.  %f is not
   empty if there is no selection, which is not always desirable (thanks to
   ratnamhof).

Angle bracket notation:
 - added angle-bracket notation for alpha keys with Alt and Shift modifiers
   (<[am]-s-[a-z]>, <s-[am]-[a-z]>) (thanks to Reece Petersen);
 - added angle-bracket notation for numeric keys with Alt modifier
   (<[am]-[0-9]>) (thanks to anonymous at Vifm Q2A site);
 - added angle-bracket notation for some shifted grey keys: <s-home>, <s-end>,
   <s-left>, <s-right>, <s-up>, <s-down>, <s-pageup>, <s-pagedown>, <s-delete>,
   <s-insert> (patch by M Kelly).

Scripting:
 - extended has() builtin function to check for Lua handlers;
 - don't expand() macros in environment variables (patch by filterfalse).

Lua:
 - upgraded Lua from 5.4.3 to 5.4.4;
 - added sample plugin for using mpc;
 - added sample plugin for customizing editor;
 - added vifm.escape() function;
 - added vifm.run() function (similar to `:!`);
 - added vifm.sessions.current() function;
 - added vifm.keys.add() for adding mappings (can accept selectors or an
   argument like in `'a`) and selectors;
 - enable os.tmpname();
 - exposed minimal API for tabs (includes layout).

TUI (Text User Interface):
 - escape unreadable characters in menus, command-line mode, dialogs and
   statusbar messages (thanks to MadMaverick9);
 - hide graphics when displaying dialogs or entering menus, more or file info
   modes (thanks to heelsleeh and PRESFIL);
 - fixed multiple cases of cursor/UI flickering.

Color schemes:
 - added CmpUnmatched and CmpBlank highlight groups (thanks to qsmodo).

Menus and dialogs:
 - changed conflict dialog to offer "Merge all" option even for files if there
   are some directories left to process (thanks to dalvand);
 - added comparison action to conflict resolution dialog (thanks to anonymous at
   Vifm Q2A site and dalvand);
 - display permissions in octal form in File Info dialog and group them with
   owner/group info (thanks to iSeeU816);
 - reformat File Info dialog to be more compact (thanks to chelovechishko).

Performance:
 - extended optimizations for globs to cover `something*` and `some*thing`
   cases.

Vim-plugin:
 - added :PeditVifm command (and corresponding :PeditVim) to the plugin (thanks
   to Mukund Mauji, a.k.a. maujim).

Only on Windows:
 - added initial support for Yori shell on Windows (not everything might work
   well at this point) (thanks to LinArcX);
 - fixed argument escaping issues for foreground programs on Windows (thanks to
   fohrums);
 - fixed auto-detection of GUI programs on Windows, which prevents Vifm from
   waiting on them to finish (thanks to Azin Sharaf);
 - fixed `start` in :file[x]type commands on Windows not being considered as
   present;
 - fixed slashes being doubled in macros like %"c on Windows with cmd.exe as a
   shell (thanks to Toby Hawkins, a.k.a. HawkinsT).

Documentation:
 - documented that <del> key might correspond to <bs> (thanks to dalvand).

Noteworthy fixes:
 - fixed building when fdatasync() call isn't available (thanks to Schrijvers
   Luc, a.k.a. Begasus);
 - fixed severe performance degradation after measuring size of large directory
   trees;
 - fixed `:compare listunique` yielding different results depending on which
   view is active due to not processing bottom files in the current view in some
   situations;
 - fixed graphics not being cleared properly on switching between viewers in
   view mode;
 - fixed processing of extended keys on OpenBSD;
 - fixed :. file modifier incorrectly checking for one path being parent of
   another and producing weird results ("/pa" was considered parent of "/path",
   with "th" being the result) (thanks to Dennis Preiser, a.k.a. 0xDP);
 - fixed --remote and --remote-expr failing if $TERM isn't valid (regression in
   0.11-beta) (thanks to b0x4it);
 - fixed directory preview resetting after detaching from it (thanks to Luka
   Markušić, a.k.a. mark2185).

See change log for the full list of changes and by whom they were suggested or
implemented.

September 29, 2021
==================

Vifm v0.12
----------

New version makes textual preview asynchronous, provides support for 24-bit
colors, improves tree-view and introduces experimental Lua plugins support.

Thanks to everyone who tried out the beta.

Main changes:
 - color schemes and preview now support 24-bit colors;
 - depth of tree-view can now be limited and directories in it can be folded;
 - textual preview of files is now done asynchronously;
 - list of files can now be directly piped to programs via new macros;
 - external editing now asks for a re-edit after a failure;
 - status line can now take up several lines;
 - new keys for controlling viewer while in view mode;
 - view column separators;
 - Vifm has received a more advanced, but currently experimental, extension
   interface in a form of Lua plugins;
 - new logo.

More detailed list of changes.

Core:
 - added experimental Lua plugins support;
 - added interactive re-editing of file names in external editor.  Format now
   supports comments for displaying last error and original file names (thanks
   to Jose Riha, a.k.a. jose1711 and Diogo Lemos (a.k.a. dmlemos));
 - started using quickview's cache in view mode;
 - extended cache of viewer's output to contain multiple entries (initial
   version of the cache was added to skip redrawing graphics);
 - run background programs detached from a terminal (thanks to Miguel Madrid
   Mencía, a.k.a. mimame).

File operations:
 - added periodic forced flushing of data on copying data when 'syscalls' is set
   (thanks to Matthias Braun, a.k.a. mb720).

Invocation:
 - don't list inaccessible instances on --server-list.

Important fixes:
 - fixed losing files as a result of executing ":copy! &" or ":move! &" when
   both panes show the same directory (thanks to Hans Bieshaar);
 - fixed copying of executable files not working on FreeBSD (thanks to
   makijato);
 - fixed inability to map escape sequences due to extended keys in terminfo
   database (patch by M Kelly);
 - fixed hang on using previewer that takes over control over the terminal (like
   7z does to read password) (thanks to PRESFIL);
 - fixed vifm-convert-dircolors dropping copies of entries that differ only by
   case (thanks to flux242).

Normal and visual modes:
 - added zx normal mode key to fold/unfold directories in tree views.  The
   implementation is not optimal at this moment though (thanks to filterfalse,
   Ben Lu, a.k.a. ayroblu, RR0925 and Alexandre Viau).

Key bindings:
 - added a and A view mode keys that switch to next and previous viewer of
   current file correspondingly (thanks to j-xella);
 - added i view mode key that toggles raw mode (ignoring of defined viewers)
   (thanks to j-xella).

Command-line mode:
 - added :plugins command that opens plugins menu;
 - added :plugin command that manages plugins;
 - added :st[op] command what behaves like Ctrl-Z.  It's to be used in mappings
   (thanks to GummyGun);
 - added "depth=N" parameter to the :tree command (thanks to filterfalse);
 - added "combine" pseudo-attribute to "cterm" parameter of :highlight command.
   It changes behaviour from overwriting attributes of a parent highlight group
   (within their hierarchy) to appending to it (thanks to Andrew Savchenko);
 - added "gui", "guifg" and "guibg" parameters to :highlight command;
 - added network mount and `subst` targets to :volumes menu (patch by Phil
   Runninger);
 - made :compare obey file name filters (patch by qsmodo);
 - allow user-defined commands to include numbers in their names (thanks to
   anonymous at Vifm Q2A site).

:set command and options:
 - added %P macro to 'rulerformat' (and thus to 'statusline'), which expands to
   All, Top, xx% or Bot to indicate position within the view (thanks to
   iSeeU816);
 - added 'previewoptions' option to allow tweaking graphics preview a bit
   (thanks to Joshua Jensch, a.k.a., patroclos and flux242);
 - added "toptreestats" value to 'previewoptions' option, which makes stats
   appear before the tree (patch by qsmodo);
 - added literal values to 'viewcolumns' option (thanks to Jose Riha, a.k.a.
   jose1711, chelovechishko, DieSpinne and rwtallant13);
 - added %N macro to 'statusline' option, which adds a line break and increases
   height of the status line (thanks to Jose Riha, a.k.a. jose1711, qsmodo and
   jcarreja);
 - added "l" and "r" flags to the 'tuioptions' option.  It controls truncation
   of view titles (patch by qsmodo);
 - added %c 'statusline' macro that displays size of current file-system (thanks
   to Jose Riha, a.k.a. jose1711).

Macros:
 - added %Pl and %Pz macros for redirecting list of files to standard input of
   commands (thanks to PRESFIL);
 - added %v macro for vertical splitting in terminal multiplexers (patch by
   qsmodo).

File preview:
 - allow exploring empty files or output of viewers (thanks to Andrew
   Savchenko);
 - implemented asynchronous previewing for textual and pass-through (think
   sixel) viewers (thanks to StillSteal, laur89, Joshua Jensch, a.k.a. patroclos
   and p-kolacz);
 - detect broken links on preview and report them as such.

Color schemes:
 - changed semantics of light* color groups to add bold attribute only for
   terminals with less than 16 colors.  Aligns the behaviour with Vim.  Affects
   you only if you relied on that implicit bold attribute (thanks to Jose Riha,
   a.k.a. jose1711).

Menus and dialogs:
 - added shortcuts for toggling flags in permissions dialog on *nix (patch by
   qsmodo);
 - added some additional information about instance to the :version/:vifm menu;
 - made contents of map menus easier to comprehend by adding captions;
 - include shortcut prefix in title of map menus;
 - always display UID/GID in numeric form in File Info dialog (in parenthesis if
   the id was resolved to a string).

TUI (Text User Interface):
 - added support for direct/"true"/24-bit colors for ncurses 6.0 or later
   (thanks to Anton Kochkov, a.k.a. XVilka and IvanBarsukov);
 - added progress indication to the ruler of the view mode (corresponds to new
   %P macro of 'rulerformat') (thanks to iSeeU816).

Documentation:
 - document how %i macro affects background jobs.

Only on Windows:
 - fixed :goto not working with backslashes (thanks to Grueslayer);
 - fixed processing of keypad keys (thanks to Roland);
 - fixed :empty leaving empty directories (thanks to Grueslayer).

Packaging:
 - made it possible to build AppImage for Vifm (patch by michaellee8);
 - fixed running tests as root user (thanks to Michka Popoff, a.k.a. iMichka);
 - fixed an issue with packaging on one system (Linux in this case) and
   building on the other (OS X) (thanks to chenrui333).

Vim-plugin:
 - made :VifmCs of the plugin handle 24-bit colors.

Other changes:
 - updated logo of the project (thanks to Hescalalu for making it).

See change log for the full list of changes and by whom they were suggested or
implemented.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

September 15, 2021
==================

Vifm v0.12 beta
---------------

New version makes textual preview asynchronous, provides support for 24-bit
colors, improves tree-view and introduces experimental Lua plugins support.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - color schemes and preview now support 24-bit colors;
 - depth of tree-view can now be limited and directories in it can be folded;
 - textual preview of files is now done asynchronously;
 - list of files can now be directly piped to programs via new macros;
 - external editing now asks for a re-edit after a failure;
 - status line can now take up several lines;
 - Vifm has received a more advanced, but currently experimental, extension
   interface in a form of Lua plugins.

More detailed list of changes.

Core:
 - added experimental Lua plugins support;
 - added interactive re-editing of file names in external editor.  Format now
   supports comments for displaying last error and original file names (thanks
   to Jose Riha, a.k.a. jose1711 and Diogo Lemos (a.k.a. dmlemos));
 - started using quickview's cache in view mode;
 - extended cache of viewer's output to contain multiple entries (initial
   version of the cache was added to skip redrawing graphics);
 - run background programs detached from a terminal (thanks to Miguel Madrid
   Mencía, a.k.a. mimame).

File operations:
 - added periodic forced flushing of data on copying data when 'syscalls' is set
   (thanks to Matthias Braun, a.k.a. mb720).

Invocation:
 - don't list inaccessible instances on --server-list.

Important fixes:
 - fixed losing files as a result of executing ":copy! &" or ":move! &" when
   both panes show the same directory (thanks to Hans Bieshaar);
 - fixed copying of executable files not working on FreeBSD (thanks to
   makijato);
 - fixed inability to map escape sequences due to extended keys in terminfo
   database (patch by M Kelly);
 - fixed hang on using previewer that takes over control over the terminal (like
   7z does to read password) (thanks to PRESFIL);
 - fixed vifm-convert-dircolors dropping copies of entries that differ only by
   case (thanks to flux242).

Normal and visual modes:
 - added zx normal mode key to fold/unfold directories in tree views.  The
   implementation is not optimal at this moment though (thanks to filterfalse,
   Ben Lu, a.k.a. ayroblu, RR0925 and Alexandre Viau).

Key bindings:
 - added a and A view mode keys that switch to next and previous viewer of
   current file correspondingly (thanks to j-xella);
 - added i view mode key that toggles raw mode (ignoring of defined viewers)
   (thanks to j-xella).

Command-line mode:
 - added :plugins command that opens plugins menu;
 - added :plugin command that manages plugins;
 - added :st[op] command what behaves like Ctrl-Z.  It's to be used in mappings
   (thanks to GummyGun);
 - added "depth=N" parameter to the :tree command (thanks to filterfalse);
 - added "combine" pseudo-attribute to "cterm" parameter of :highlight command.
   It changes behaviour from overwriting attributes of a parent highlight group
   (within their hierarchy) to appending to it (thanks to Andrew Savchenko);
 - added "gui", "guifg" and "guibg" parameters to :highlight command;
 - added network mount and `subst` targets to :volumes menu (patch by Phil
   Runninger);
 - made :compare obey file name filters (patch by qsmodo);
 - allow user-defined commands to include numbers in their names (thanks to
   anonymous at Vifm Q2A site).

:set command and options:
 - added %P macro to 'rulerformat' (and thus to 'statusline'), which expands to
   All, Top, xx% or Bot to indicate position within the view (thanks to
   iSeeU816);
 - added 'previewoptions' option to allow tweaking graphics preview a bit
   (thanks to Joshua Jensch, a.k.a., patroclos and flux242);
 - added "toptreestats" value to 'previewoptions' option, which makes stats
   appear before the tree (patch by qsmodo);
 - added literal values to 'viewcolumns' option (thanks to Jose Riha, a.k.a.
   jose1711, chelovechishko, DieSpinne and rwtallant13);
 - added %N macro to 'statusline' option, which adds a line break and increases
   height of the status line (thanks to Jose Riha, a.k.a. jose1711, qsmodo and
   jcarreja);
 - added "l" and "r" flags to the 'tuioptions' option.  It controls truncation
   of view titles (patch by qsmodo);
 - added %c 'statusline' macro that displays size of current file-system (thanks
   to Jose Riha, a.k.a. jose1711).

Macros:
 - added %Pl and %Pz macros for redirecting list of files to standard input of
   commands (thanks to PRESFIL);
 - added %v macro for vertical splitting in terminal multiplexers (patch by
   qsmodo).

File preview:
 - allow exploring empty files or output of viewers (thanks to Andrew
   Savchenko);
 - implemented asynchronous previewing for textual and pass-through (think
   sixel) viewers (thanks to StillSteal, laur89, Joshua Jensch, a.k.a. patroclos
   and p-kolacz);
 - detect broken links on preview and report them as such.

Color schemes:
 - changed semantics of light* color groups to add bold attribute only for
   terminals with less than 16 colors.  Aligns the behaviour with Vim.  Affects
   you only if you relied on that implicit bold attribute (thanks to Jose Riha,
   a.k.a. jose1711).

Menus and dialogs:
 - added shortcuts for toggling flags in permissions dialog on *nix (patch by
   qsmodo);
 - added some additional information about instance to the :version/:vifm menu;
 - made contents of map menus easier to comprehend by adding captions;
 - include shortcut prefix in title of map menus;
 - always display UID/GID in numeric form in File Info dialog (in parenthesis if
   the id was resolved to a string).

TUI (Text User Interface):
 - added support for direct/"true"/24-bit colors for ncurses 6.0 or later
   (thanks to Anton Kochkov, a.k.a. XVilka and IvanBarsukov);
 - added progress indication to the ruler of the view mode (corresponds to new
   %P macro of 'rulerformat') (thanks to iSeeU816).

Documentation:
 - document how %i macro affects background jobs.

Only on Windows:
 - fixed :goto not working with backslashes (thanks to Grueslayer);
 - fixed processing of keypad keys (thanks to Roland);
 - fixed :empty leaving empty directories (thanks to Grueslayer).

Packaging:
 - made it possible to build AppImage for Vifm (patch by michaellee8);
 - fixed running tests as root user (thanks to Michka Popoff, a.k.a. iMichka);
 - fixed an issue with packaging on one system (Linux in this case) and
   building on the other (OS X) (thanks to chenrui333).

Vim-plugin:
 - made :VifmCs of the plugin fail when 'termguicolors' produces a 24-bit color
   value (thanks to AtomToast).

Other changes:
 - updated logo of the project (thanks to Hescalalu for making it).

See change log for the full list of changes and by whom they were suggested or
implemented.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

September 24, 2020
==================

Vifm v0.11
----------

New version finally updates format of vifminfo file unblocking changes like
persistent tabs, sessions and timestamp-based merging of histories.  In
addition to that there were a number of improvements in user interface and
multiple performance-related improvements.

Thanks to everyone who tried out the beta.

Main changes:
 - added persistent tabs;
 - added sessions;
 - new format of vifminfo file (old version is imported on first run);
 - smarter merging of histories between runs that avoids dropping of new
   entries;
 - version of default color scheme for 256-color terminals;
 - make tab labels customizable;
 - try to keep ratio of pane sizes constant on resizes, restarts and tab
   switching;
 - various performance improvements.

More detailed list of changes.

Normal and visual modes:
 - added gF normal mode key which acts like gf, but goes all the way to the
   ultimate target of the chain of symbolic links (thanks to Alexandre Viau);
 - improve navigation on gf key.  Do fewer refreshes and disable filters to
   make target visible.

Core:
 - more sensible merging of histories from multiple instances in vifminfo file
   (avoids dropping of new entries);
 - invalidate cached directory information (size or number of files) on inode
   change (thanks to Jose Riha, a.k.a. jose1711);
 - invalidate cached directory size when using it to compute size of some
   parent directory;
 - improve cursor positioning after file operations;
 - made it possible to escape commas in patterns (as usual, by doubling)
   (thanks to filterfalse).

Command-line mode:
 - added :tabo[nly] command that closes all tabs but the current one;
 - added :session and :delsession commands to manage sessions (thanks to Marcos
   Cruz);
 - added optional "full" parameter for the :restart command, which makes it
   discard essentially all context.  This is useful with persistent tabs
   (thanks to Yusuf Aktepe);
 - don't reset histories of views in inactive tabs on :restart;
 - improve differentiation between association and list forms of :colorscheme
   command on startup.  This is important if list contains name of color scheme
   that doesn't exist.

:set command and options:
 - added "tabs" value to 'vifminfo' option.  It enables persistent tabs (thanks
   to Cosmin Popescu, a.k.a. cosminadrianpopescu, filterfalse and Neil Griffin,
   a.k.a. ngriffin7a);
 - added "v" flag to the 'tuioptions' option.  It controls whether width of
   middle border is adjusted to equalize view sizes (thanks to Matthias Braun,
   a.k.a. mb720);
 - added 'sessionoptions' option, which is an alternative to 'vifminfo' for
   session files;
 - added 'tablabel' option that specifies format of a single tab's label when
   non-empty (thanks to aleksejrs);
 - added 'tabprefix' and 'tabsuffix' options that allow customizing tabline
   separators (thanks to CoreCube);
 - added "treeleafsparent" value to 'dotdirs' option (thanks to filterfalse and
   Melandel);
 - do not require "dhistory" to be present in 'vifminfo' for "savedirs" to
   work.

Menus and dialogs:
 - added rate and progress bar to progress dialog (patch by Alborz Jafari);
 - added real (fully resolved) path to the File Info dialog (thanks to
   Alexandre Viau);
 - added number of hard links to the File Info dialog;
 - abort menu, more or file information modes before processing remote commands
   (thanks to kangshugang);
 - deduplicate elements of the :file menu;
 - make displaying of spaces in mappings more intelligent by using <space> at
   the start or end of lhs or rhs.

File preview:
 - improve handling of long or unknown escape sequences in previews (thanks to
   bratekarate);
 - use global color scheme for preview on the other pane ignoring its
   directory-specific color scheme;
 - invalidate textual quickview cache if it contains fewer lines than window
   height and is incomplete.

TUI (Text User Interface):
 - try harder to preserve position of the splitter.  Avoid its drift on
   terminal resizes and preserve ratio of windows on startup and tab switches
   (thanks to Shakil Akhtar);
 - prevent internally selected files (e.g., via a range of a :command) from
   appearing selected in user interface (thanks to filterfalse);
 - reduce width of top line when side borders are hidden (`set tuioptions-=s`)
   (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - escape some characters as ^X in view and tab titles, custom menu titles, on
   status line and in terminal title (thanks to filterfalse);
 - use the same label for :grep and :find custom lists as the one used for
   :grep and :find menus (thanks to filterfalse);
 - use unexpanded command for title of custom file lists produced using %u or
   %U macros and menus produced using %m or %M macros (thanks to filterfalse);
 - use name of user-defined command in titles of custom views and menus (thanks
   to filterfalse);
 - preserve more information in the title on turning custom view into tree
   using :tree (thanks to filterfalse);
 - limit length of custom file list title to 80 character positions (thanks to
   filterfalse).

Integration:
 - detect being run under Wayland (relevant for :filextype commands) (thanks to
   mhdzli);
 - make 'title' option work in all terminals which contain "tsl" and "fsl"
   capabilities (thanks to m-kru);
 - update terminal title when in menus (thanks to filterfalse).

Color schemes:
 - added HardLink highlight group for regular files with more than one hard
   link (patch by Hans Bieshaar);
 - added LineNr highlight group for highlighting line number column of views
   (thanks to Anton Gepting);
 - added OddLine highlight group for highlighting every second entry line of a
   pane (thanks to iSeeU816).

Scripting:
 - added v:jobcount builtin variable that provides number of active jobs
   (number of lines in :jobs menu) (thanks to iSeeU816);
 - added v:session builtin variable that provides name of current session or is
   set to an empty string.

Configuration:
 - added three MC-like shortcuts to sample vifmrc files (Alt-I, Alt-O and
   Ctrl-U) (thanks to Hans Bieshaar);
 - added global Default-256 color scheme to be used in terminals that support
   256-color palette (automatically in sample vifmrc) (thanks to Shakil
   Akhtar);
 - create $VIFM/colors directory with default color scheme only on the first
   run (thanks to ranousse);
 - use mime-types in associations in sample vifmrc (thanks to Shakil Akhtar).

Performance:
 - significantly improved performance of adding files to registers that contain
   thousands of files.  As a result contents of registers is sorted now (thanks
   to Typo);
 - significantly improved performance of adding files to trash that contains
   thousands of files.  As a result contents of trash is sorted now (thanks to
   Typo);
 - significantly improved speed of sourcing files (includes processing
   configuration on startup and :restart);
 - significantly improved speed of handling typical globs (and therefore
   mime-type matchers) and reduced amount of memory they take up (thanks to
   yanzhang0219);
 - improve performance of mime-type detection by caching the results;
 - make comparing files by contents (`:compare bycontents`) somewhat faster
   (thanks to maxigaz);
 - don't force view reload after every :command that resets selection when
   there was non-empty selection.  This might make metadata of files less
   up-to-date, but should increase overall performance (thanks to Jose Riha,
   a.k.a. jose1711);
 - avoid reloading source file list after copy or move operation when possible
   (thanks to Jose Riha, a.k.a. jose1711).

Vim-plugin:
 - added :VifmCs command to the plugin for "converting" Vim's color scheme into
   a Vifm's one (patch by Roman Plášil, a.k.a. Quiark);
 - multiple improvements of syntax highlighting.

Documentation:
 - added references to "Menus and dialogs" section of documentation from
   :commands and keys which open menus and dialogs detailed there;
 - explicitly documented that macros are expanded in user defined commands
   (thanks to gcmt);
 - made documentation of :command more comprehensible;
 - document that user must disable netrw plugin on his own when enabling
   g:vifm_replace_netrw.  Vifm's plugin can't do it, because it's loaded after
   plugins shipped with Vim;
 - documented how selection is handled on launching files (like on l or Enter
   keys);
 - improve documentation on "bycontents" of :compare (thanks to maxigaz);
 - somewhat improved documentation on 'ignorecase' and 'smartcase' options
   (thanks to filterfalse);
 - fixed Vim version of the documentation lacking description of %p macro of
   'findprg'.

Only on Windows:
 - added basic support for using PowerShell (pausing doesn't work) (thanks to
   Fang, a.k.a. peromage);
 - display targets of .lnk-files in file information dialog;
 - implemented capturing output of background applications (thanks to Gene
   Zharov);
 - follow targets of .lnk-files (thanks to Alexandre Viau);
 - fixed 'chaselinks' (symbolic links weren't resolved);
 - fixed creating symbolic links with 'syscalls' being turned on;
 - fixed creating symbolic links with spaces in source or target paths;
 - fixed Alt key combinations being broken since v0.9;
 - fixed running non-cmd shells being broken by adding 'shellcmdflag' in
   0.10.1;
 - fixed issues with non-tiny 'shellcmdflag' (patch by Bas Bossink, a.k.a.
   basbossink);
 - fixed detecting presence of :file[x]type commands on Windows when
   backslashes are present in path (thanks to anonymous and n.e. at Vifm Q2A
   site).

Packaging:
 - avoid interposing system's reallocarray(), when it's present (thanks to Ben
   Boeckel, a.k.a. mathstuf);
 - install only one version of sample config and media script, the one which
   corresponds to operating system being used (thanks to Michael Vetter, a.k.a.
   jubalh and Ondrej Novy, a.k.a. onovy);
 - clean up tests directory on "make clean" in the top of the tree.

Important fixes:
 - fixed generation of :highlight command for OtherWin on writing
   $VIFM/colors/Default.vifm.  The bug caused white background of inactive pane
   (thanks to Stas Malavin);
 - fixed `:move subdir &` renaming file in the process and doing weird stuff to
   multiple files (thanks to 45jqlakjrf87ayte7hy34ter4nguijauzl4eitk);
 - fixed graphics preview not being cleared on switching tabs or starting
   external applications (including on :shell);
 - fixed mapped keys being reinterpreted as builtin keys if RHS of the mapping
   failed at some point (e.g., contained an unmapped key) (thanks to Seok Won
   Lee, a.k.a. ijleesw);
 - fixed dialogs not being visible when UI updates are silenced via <silent>
   mappings;
 - fixed panic on some redraw operations mixing with file operations during
   terminal resizing (thanks to aca).

See change log for the full list of changes and by whom they were suggested or
implemented.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

September 10, 2020
==================

Vifm v0.11 beta
---------------

New version finally updates format of vifminfo file unblocking changes like
persistent tabs, sessions and timestamp-based merging of histories.  In
addition to that there were a number of improvements in user interface and
multiple performance-related improvements.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added persistent tabs;
 - added sessions;
 - new format of vifminfo file (old version is imported on first run);
 - smarter merging of histories between runs that avoids dropping of new
   entries;
 - version of default color scheme for 256-color terminals;
 - make tab labels customizable;
 - try to keep ratio of pane sizes constant on resizes, restarts and tab
   switching;
 - various performance improvements.

More detailed list of changes.

Normal and visual modes:
 - added gF normal mode key which acts like gf, but goes all the way to the
   ultimate target of the chain of symbolic links (thanks to Alexandre Viau);
 - improve navigation on gf key.  Do fewer refreshes and disable filters to
   make target visible.

Core:
 - more sensible merging of histories from multiple instances in vifminfo file
   (avoids dropping of new entries);
 - invalidate cached directory information (size or number of files) on inode
   change (thanks to Jose Riha, a.k.a. jose1711);
 - invalidate cached directory size when using it to compute size of some
   parent directory;
 - improve cursor positioning after file operations.

Command-line mode:
 - added :tabo[nly] command that closes all tabs but the current one;
 - added :session and :delsession commands to manage sessions (thanks to Marcos
   Cruz);
 - added optional "full" parameter for the :restart command, which makes it
   discard essentially all context.  This is useful with persistent tabs
   (thanks to Yusuf Aktepe);
 - don't reset histories of views in inactive tabs on :restart;
 - improve differentiation between association and list forms of :colorscheme
   command on startup.  This is important if list contains name of color scheme
   that doesn't exist.

:set command and options:
 - added "tabs" value to 'vifminfo' option.  It enables persistent tabs (thanks
   to Cosmin Popescu, a.k.a. cosminadrianpopescu, filterfalse and Neil Griffin,
   a.k.a. ngriffin7a);
 - added "v" flag to the 'tuioptions' option.  It controls whether width of
   middle border is adjusted to equalize view sizes (thanks to Matthias Braun,
   a.k.a. mb720);
 - added 'sessionoptions' option, which is an alternative to 'vifminfo' for
   session files;
 - added 'tablabel' option that specifies format of a single tab's label when
   non-empty (thanks to aleksejrs);
 - added 'tabprefix' and 'tabsuffix' options that allow customizing tabline
   separators (thanks to CoreCube);
 - added "treeleafsparent" value to 'dotdirs' option (thanks to filterfalse and
   Melandel);
 - do not require "dhistory" to be present in 'vifminfo' for "savedirs" to
   work.

Menus and dialogs:
 - added rate and progress bar to progress dialog (patch by Alborz Jafari);
 - added real (fully resolved) path to the File Info dialog (thanks to
   Alexandre Viau);
 - added number of hard links to the File Info dialog;
 - abort menu, more or file information modes before processing remote commands
   (thanks to kangshugang);
 - deduplicate elements of the :file menu;
 - make displaying of spaces in mappings more intelligent by using <space> at
   the start or end of lhs or rhs.

File preview:
 - improve handling of long or unknown escape sequences in previews (thanks to
   bratekarate);
 - use global color scheme for preview on the other pane ignoring its
   directory-specific color scheme;
 - invalidate textual quickview cache if it contains fewer lines than window
   height and is incomplete.

TUI (Text User Interface):
 - try harder to preserve position of the splitter.  Avoid its drift on
   terminal resizes and preserve ratio of windows on startup and tab switches
   (thanks to Shakil Akhtar);
 - prevent internally selected files (e.g., via a range of a :command) from
   appearing selected in user interface (thanks to filterfalse);
 - reduce width of top line when side borders are hidden (`set tuioptions-=s`)
   (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - escape some characters as ^X in view and tab titles, custom menu titles, on
   status line and in terminal title (thanks to filterfalse);
 - use the same label for :grep and :find custom lists as the one used for
   :grep and :find menus (thanks to filterfalse);
 - use unexpanded command for title of custom file lists produced using %u or
   %U macros and menus produced using %m or %M macros (thanks to filterfalse);
 - use name of user-defined command in titles of custom views and menus (thanks
   to filterfalse);
 - preserve more information in the title on turning custom view into tree
   using :tree (thanks to filterfalse);
 - limit length of custom file list title to 80 character positions (thanks to
   filterfalse).

Integration:
 - detect being run under Wayland (relevant for :filextype commands) (thanks to
   mhdzli);
 - make 'title' option work in all terminals which contain "tsl" and "fsl"
   capabilities (thanks to m-kru);
 - update terminal title when in menus (thanks to filterfalse).

Color schemes:
 - added HardLink highlight group for regular files with more than one hard
   link (patch by Hans Bieshaar);
 - added LineNr highlight group for highlighting line number column of views
   (thanks to Anton Gepting);
 - added OddLine highlight group for highlighting every second entry line of a
   pane (thanks to iSeeU816).

Scripting:
 - added v:jobcount builtin variable that provides number of active jobs
   (number of lines in :jobs menu) (thanks to iSeeU816);
 - added v:session builtin variable that provides name of current session or is
   set to an empty string.

Configuration:
 - added three MC-like shortcuts to sample vifmrc files (Alt-I, Alt-O and
   Ctrl-U) (thanks to Hans Bieshaar);
 - added global Default-256 color scheme to be used in terminals that support
   256-color palette (automatically in sample vifmrc) (thanks to Shakil
   Akhtar);
 - create $VIFM/colors directory with default color scheme only on the first
   run (thanks to ranousse);
 - use mime-types in associations in sample vifmrc (thanks to Shakil Akhtar).

Performance:
 - significantly improved performance of adding files to registers that contain
   thousands of files.  As a result contents of registers is sorted now (thanks
   to Typo);
 - significantly improved performance of adding files to trash that contains
   thousands of files.  As a result contents of trash is sorted now (thanks to
   Typo);
 - significantly improved speed of sourcing files (includes processing
   configuration on startup and :restart);
 - significantly improved speed of handling typical globs (and therefore
   mime-type matchers) and reduced amount of memory they take up (thanks to
   yanzhang0219);
 - improve performance of mime-type detection by caching the results;
 - make comparing files by contents (`:compare bycontents`) somewhat faster
   (thanks to maxigaz);
 - don't force view reload after every :command that resets selection when
   there was non-empty selection.  This might make metadata of files less
   up-to-date, but should increase overall performance (thanks to Jose Riha,
   a.k.a. jose1711);
 - avoid reloading source file list after copy or move operation when possible
   (thanks to Jose Riha, a.k.a. jose1711).

Vim-plugin:
 - added :VifmCs command to the plugin for "converting" Vim's color scheme into
   a Vifm's one (patch by Roman Plášil, a.k.a. Quiark);
 - multiple improvements of syntax highlighting.

Documentation:
 - added references to "Menus and dialogs" section of documentation from
   :commands and keys which open menus and dialogs detailed there;
 - explicitly documented that macros are expanded in user defined commands
   (thanks to gcmt);
 - made documentation of :command more comprehensible;
 - document that user must disable netrw plugin on his own when enabling
   g:vifm_replace_netrw.  Vifm's plugin can't do it, because it's loaded after
   plugins shipped with Vim;
 - documented how selection is handled on launching files (like on l or Enter
   keys);
 - improve documentation on "bycontents" of :compare (thanks to maxigaz);
 - somewhat improved documentation on 'ignorecase' and 'smartcase' options
   (thanks to filterfalse);
 - fixed Vim version of the documentation lacking description of %p macro of
   'findprg'.

Only on Windows:
 - added basic support for using PowerShell (pausing doesn't work) (thanks to
   Fang, a.k.a. peromage);
 - display targets of .lnk-files in file information dialog;
 - implemented capturing output of background applications (thanks to Gene
   Zharov);
 - follow targets of .lnk-files (thanks to Alexandre Viau);
 - fixed 'chaselinks' (symbolic links weren't resolved);
 - fixed creating symbolic links with 'syscalls' being turned on;
 - fixed creating symbolic links with spaces in source or target paths;
 - fixed Alt key combinations being broken since v0.9;
 - fixed running non-cmd shells being broken by adding 'shellcmdflag' in
   0.10.1;
 - fixed issues with non-tiny 'shellcmdflag' (patch by Bas Bossink, a.k.a.
   basbossink);
 - fixed detecting presence of :file[x]type commands on Windows when
   backslashes are present in path (thanks to anonymous and n.e. at Vifm Q2A
   site).

Packaging:
 - avoid interposing system's reallocarray(), when it's present (thanks to Ben
   Boeckel, a.k.a. mathstuf);
 - install only one version of sample config and media script, the one which
   corresponds to operating system being used (thanks to Michael Vetter, a.k.a.
   jubalh and Ondrej Novy, a.k.a. onovy);
 - clean up tests directory on "make clean" in the top of the tree.

Important fixes:
 - fixed generation of :highlight command for OtherWin on writing
   $VIFM/colors/Default.vifm.  The bug caused white background of inactive pane
   (thanks to Stas Malavin);
 - fixed `:move subdir &` renaming file in the process and doing weird stuff to
   multiple files (thanks to 45jqlakjrf87ayte7hy34ter4nguijauzl4eitk);
 - fixed graphics preview not being cleared on switching tabs or starting
   external applications (including on :shell);
 - fixed mapped keys being reinterpreted as builtin keys if RHS of the mapping
   failed at some point (e.g., contained an unmapped key) (thanks to Seok Won
   Lee, a.k.a. ijleesw);
 - fixed dialogs not being visible when UI updates are silenced via <silent>
   mappings;
 - fixed panic on some redraw operations mixing with file operations during
   terminal resizing (thanks to aca).

See change log for the full list of changes and by whom they were suggested or
implemented.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

July 29, 2019
=============

vifm v0.10.1
------------

This version provides additions and improvements for media management feature,
several enhancements related to text user interface, extra features to Vim
plugin thanks to merging in neovim-vifm plugin and various small changes.

Thanks to everyone who tried out the beta.

Main changes:
 - added file preview to miller mode;
 - added preview macro to directly output to terminal, which enables use of
   Sixel graphics for previewing;
 - added udisks2 backend to vifm-media script (bundled script for managing
   media) and version of the script for OS X;
 - updated code to make use of large amount of color pairs when available;
 - functionality of previously separate neovim-vifm plugin got merged into the
   main plugin;
 - multiple improvements to :media menu;
 - improved performance in several use cases (quickview, lots of unhighlighted
   files, unnecessary cursor updates and redraws).

More detailed list of changes.

Command-line mode:
 - added :cds command that navigates to path obtained by substitution in the
   current path (thanks to j-xella);
 - added :hideui command that hides interface to show previous commands'
   output (thanks to dikiy);
 - added one more invocation format of :colorscheme command, which picks the
   first available color scheme that is supported by the terminal (thanks to
   Jose Riha, a.k.a. jose1711);
 - always preserve tabs on :restart (thanks to mwgkgk);
 - refuse to compare directory against itself via :compare command (thanks to
   Jose Riha, a.k.a. jose1711).

:set command and options:
 - added fileroot view column, which displays full name of directories and
   symbolic links to directories and only root of name for everything
   else (thanks to chelovechishko);
 - added 'shellcmdflag' option that allows customizing how shell is invoked.
   Enables running it in interactive mode, which can make shell aliases and
   functions work (thanks to Ink (a.k.a. inknoir), John Shea (a.k.a. coachshea)
   and randomizedthinking);
 - added L flag to 'shortmess' option to display only last directory in tab
   line instead of full path (thanks to chelovechishko);
 - added ^= operation for string list options (thanks to SearyBlue);
 - added ^= operation for options of set kind;
 - added rpreview: key to 'milleroptions' option that allows enabling preview
   of files (thanks to Svadkos and Tom Jansen);
 - added %p macro to 'findprg' option.  It works as a mix between %a and %A
   macros: usually contains arguments passed to :find command, but unlike %a
   doesn't include any predicates (thanks to Sitaram Chamarty and Tuan Bui,
   a.k.a. tuanbass);
 - added "space" and "nospace" values to 'sizefmt' option (patch by
   zsugabubus);
 - do not add leading comma to string list options on set opt+=item;
 - don't create trash directory on startup if 'trash' is off (patch by
   zsugabubus).

Key bindings:
 - improved <silent> to do not forcefully update screen after the mapping if no
   screen updates were skipped.

Completion:
 - complete user name in paths after initial tilde (e.g., :cd ~r<tab> =>
   :cd ~root).

Macros:
 - added %pd macro that makes preview output directly affect terminal
   circumventing curses interface, which could be used to display sixel
   images (thanks to Tom Jansen).

Color schemes:
 - added OtherWin highlight group for highlighting inactive pane (thanks to
   John Fred Fadrigalan, a.k.a. cevhyruz).

Menus and dialogs:
 - added indication of entry's availability to :file, :file[x]type and
   :fileviewer menus;
 - added [ and ] bindings to :media menu that provide navigation between
   devices (patch by zsugabubus);
 - added decorations to :media menu (patch by zsugabubus);
 - react to Enter in :media menu on device lines, mount on "not mounted" line
   and do nothing otherwise (patch by zsugabubus);
 - show empty lines in :media only if there is enough vertical space (patch by
   zsugabubus);
 - removed empty line from :file and similar menus for case when vifm was
   configured with --disable-desktop-files flag (second time).

Scripting:
 - added extcached() builtin function, which can be used to improve performance
   of file queries by caching results of external commands (thanks to Matthias
   Braun, a.k.a. mb720).

Invocation:
 - try to preserve symbolic links in current path when starting vifm by
   checking value of $PWD (thanks to Vigi).

Core:
 - resolve symbolic links for mime-type matchers (thanks to Vigi);
 - do not check for view changes while suggestions are visible.  It can mess up
   TUI, especially in combination with preview (thanks to ks1c).

File operations:
 - preserve extended attributes on copying files (thanks to hutou);
 - don't throw away errors that were ignored by the user, display them at the
   end of operation;
 - consume input during foreground file operations.  Otherwise it remains
   buffered and is processed after the operation is over, which might not be
   the intent of the user;
 - reduce number of options available on file conflict when source and
   destination are the same to avoid confusion (options that overwrite do
   nothing in this case) (thanks to aleksejrs).

File preview:
 - do not complain about empty output of a graphics previewer for view mode;
 - clear preview before displaying suggestions (thanks to ks1c).

TUI (Text User Interface):
 - renamed filename filter to "permanent filter" consisting of
   "explicit" (ex-manual) and "implicit" (ex-automatic) parts (thanks to
   Sitaram Chamarty);
 - changed file rename prompt to indicate whether full name or only its root is
   being changed;
 - try to determine widths of printed character more accurately;
 - drop leading space implicitly added to time columns in views (thanks to
   laggardkernel).

Integration:
 - added info= field to parser of 'mediaprg' output.  It provides custom
   message for the media (patch by zsugabubus);
 - added udisks2 backend to vifm-media script (bundled script for managing
   media).  Requires python and dbus module for it to be installed (because
   udisks2 and dbus are too shitty to be used on command-line) (thanks to
   Tykin);
 - added FUSE_MOUNT3 filetype format, which is equivalent to FUSE_MOUNT, but
   doesn't perform unmounting.  Helpful to use something like avfs (thanks to
   Jose Riha, a.k.a. jose1711);
 - added vifm-media-osx script that is configured to be used (via 'mediaprg')
   on OS X (patch by Von Welch);
 - error stream from 'mediaprg' isn't considered anymore when deciding if
   mounting/unmounting was successful.  While technically an incompatible
   change, it's unlikely to cause any issues;
 - spawn 'mediaprg' in foreground to allow interactions with the user, like
   providing a password (patch by zsugabubus);
 - properly remove FUSE mount points if they are symbolic links;
 - assume that any $TERM value that starts with "xterm-", "rxvt-" or "screen-"
   supports terminal title (thanks to Matthias Braun, a.k.a. mb720).

Documentation:
 - better documentation for TabLine and TabLineSel highlighting groups (thanks
   to mwgkgk);
 - clearer documentation/description for :*unmap commands and 'vicmd'/'vixcmd'
   options (thanks to chelovechishko);
 - improve documentation of patterns and globs (thanks to afsheenb);
 - improved documentation on filters (thanks to Sitaram Chamarty);
 - document more details about expansion of FUSE macros;
 - make documentation of 'findprg' more readable.

Vim-plugin:
 - added :Vifm command as an alias for :EditVifm (patch by rbong);
 - added optional splitting of the embedded terminal (g:vifm_embed_split).  Has
   support for Vim's <mods> and <count> (patch by rbong);
 - added option to synchronize working directory of the embedded instance of
   vifm with the Vim host (g:vifm_embed_cwd) (patch by rbong);
 - added ability to replace netrw with vifm (g:vifm_replace_netrw and
   g:vifm_replace_netrw_cmd) (patch by rbong);
 - added autodetection of *.vifm files as files with "vifm" filetype to the
   plugin (patch by Anton Kochkov, a.k.a. XVilka).

Configuration:
 - added example of using xsel to sample vifmrc file (thanks to chelovechishko);
 - enabled 'vimhelp' in sample vifmrc file by default.

Performance:
 - added caching to quickview for a single file to avoid fileviewer being called
   more often than needed (thanks to agguser);
 - try to avoid superfluous screen updates related to cursor position;
 - remember when file doesn't match any file-specific highlighting groups for
   better performance (thanks to Gomme Bidule);
 - generate faster regular expressions by vifm-convert-dircolors (thanks to
   Gomme Bidule).

Only on Windows:
 - upgraded to PDCurses 3.8 (was 3.4) for Windows.  This allows using 256 colors
   inside ConEmu.  Note that ConEmu has issues processing 256 colors on the last
   line of the screen, so avoid using them for status line (thanks to dancread).

Other changes:
 - don't error on trash creation failure due to read-only file system (patch by
   zsugabubus).

Important fixes:
 - fixed losing files on failed move operation.  Source files were deleted
   assuming they were copied successfully, even when errors regarding some of
   them were ignored by the user (thanks to zsugabubus);
 - fixed vifm not making use of large number of color pairs when they are
   available (thanks to Jose Riha (a.k.a. jose1711) and Hans Petter
   Jansson (a.k.a. hpjansson));
 - fixed color pairs being exhausted on Windows when default color ends up being
   used often, this caused highlighting to go awry (thanks to dancread);
 - fixed textual output of graphical previewers not being displayed in view
   mode (thanks to agguser);
 - fixed DirEnter autocommand being called with view being in a mixed state of
   old and new location (thanks to Kendrick Taylor, a.k.a. sixcircuit).

See change log for the full list of changes and by whom they were suggested or
implemented.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

July 15, 2019
=============

vifm v0.10.1 beta
-----------------

This version provides additions and improvements for media management feature,
several enhancements related to text user interface, extra features to Vim
plugin thanks to merging in neovim-vifm plugin and various small changes.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added file preview to miller mode
 - added preview macro to directly output to terminal, which enables use of
   Sixel graphics for previewing;
 - added udisks2 backend to vifm-media script (bundled script for managing
   media) and version of the script for OS X;
 - updated code to make use of large amount of color pairs when available;
 - functionality of previously separate neovim-vifm plugin got merged into the
   main plugin;
 - multiple improvements to :media menu;
 - improved performance in several use cases (quickview, lots of unhighlighted
   files, unnecessary cursor updates and redraws).

More detailed list of changes.

Command-line mode:
 - added :cds command that navigates to path obtained by substitution in the
   current path (thanks to j-xella);
 - added :hideui command that hides interface to show previous commands'
   output (thanks to dikiy);
 - added one more invocation format of :colorscheme command, which picks the
   first available color scheme that is supported by the terminal (thanks to
   Jose Riha, a.k.a. jose1711);
 - always preserve tabs on :restart (thanks to mwgkgk);
 - refuse to compare directory against itself via :compare command (thanks to
   Jose Riha, a.k.a. jose1711).

:set command and options:
 - added fileroot view column, which displays full name of directories and
   symbolic links to directories and only root of name for everything
   else (thanks to chelovechishko);
 - added 'shellcmdflag' option that allows customizing how shell is invoked.
   Enables running it in interactive mode, which can make shell aliases and
   functions work (thanks to Ink (a.k.a. inknoir), John Shea (a.k.a. coachshea)
   and randomizedthinking);
 - added L flag to 'shortmess' option to display only last directory in tab
   line instead of full path (thanks to chelovechishko);
 - added ^= operation for string list options (thanks to SearyBlue);
 - added ^= operation for options of set kind;
 - added rpreview: key to 'milleroptions' option that allows enabling preview
   of files (thanks to Svadkos and Tom Jansen);
 - added %p macro to 'findprg' option.  It works as a mix between %a and %A
   macros: usually contains arguments passed to :find command, but unlike %a
   doesn't include any predicates (thanks to Sitaram Chamarty and Tuan Bui,
   a.k.a. tuanbass);
 - do not add leading comma to string list options on set opt+=item;
 - don't create trash directory on startup if 'trash' is off (patch by
   zsugabubus).

Key bindings:
 - improved <silent> to do not forcefully update screen after the mapping if no
   screen updates were skipped.

Completion:
 - complete user name in paths after initial tilde (e.g., :cd ~r<tab> =>
   :cd ~root).

Macros:
 - added %pd macro that makes preview output directly affect terminal
   circumventing curses interface, which could be used to display sixel
   images (thanks to Tom Jansen).

Color schemes:
 - added OtherWin highlight group for highlighting inactive pane (thanks to
   John Fred Fadrigalan, a.k.a. cevhyruz).

Menus and dialogs:
 - added indication of entry's availability to :file, :file[x]type and
   :fileviewer menus;
 - added [ and ] bindings to :media menu that provide navigation between
   devices (patch by zsugabubus);
 - added decorations to :media menu (patch by zsugabubus);
 - react to Enter in :media menu on device lines, mount on "not mounted" line
   and do nothing otherwise (patch by zsugabubus);
 - show empty lines in :media only if there is enough vertical space (patch by
   zsugabubus);
 - removed empty line from :file and similar menus for case when vifm was
   configured with --disable-desktop-files flag (second time).

Scripting:
 - added extcached() builtin function, which can be used to improve performance
   of file queries by caching results of external commands (thanks to Matthias
   Braun, a.k.a. mb720).

Invocation:
 - try to preserve symbolic links in current path when starting vifm by
   checking value of $PWD (thanks to Vigi).

Core:
 - resolve symbolic links for mime-type matchers (thanks to Vigi);
 - do not check for view changes while suggestions are visible.  It can mess up
   TUI, especially in combination with preview (thanks to ks1c).

File operations:
 - preserve extended attributes on copying files (thanks to hutou);
 - don't throw away errors that were ignored by the user, display them at the
   end of operation;
 - consume input during foreground file operations.  Otherwise it remains
   buffered and is processed after the operation is over, which might not be
   the intent of the user;
 - reduce number of options available on file conflict when source and
   destination are the same to avoid confusion (options that overwrite do
   nothing in this case) (thanks to aleksejrs).

File preview:
 - do not complain about empty output of a graphics previewer for view mode;
 - clear preview before displaying suggestions (thanks to ks1c).

TUI (Text User Interface):
 - renamed filename filter to "permanent filter" consisting of
   "explicit" (ex-manual) and "implicit" (ex-automatic) parts (thanks to
   Sitaram Chamarty);
 - changed file rename prompt to indicate whether full name or only its root is
   being changed;
 - try to determine widths of printed character more accurately;
 - drop leading space implicitly added to time columns in views (thanks to
   laggardkernel).

Integration:
 - added info= field to parser of 'mediaprg' output.  It provides custom
   message for the media (patch by zsugabubus);
 - added udisks2 backend to vifm-media script (bundled script for managing
   media).  Requires python and dbus module for it to be installed (because
   udisks2 and dbus are too shitty to be used on command-line) (thanks to
   Tykin);
 - added FUSE_MOUNT3 filetype format, which is equivalent to FUSE_MOUNT, but
   doesn't perform unmounting.  Helpful to use something like avfs (thanks to
   Jose Riha, a.k.a. jose1711);
 - added vifm-media-osx script that is configured to be used (via 'mediaprg')
   on OS X (patch by Von Welch);
 - error stream from 'mediaprg' isn't considered anymore when deciding if
   mounting/unmounting was successful.  While technically an incompatible
   change, it's unlikely to cause any issues;
 - spawn 'mediaprg' in foreground to allow interactions with the user, like
   providing a password (patch by zsugabubus);
 - properly remove FUSE mount points if they are symbolic links.

Documentation:
 - better documentation for TabLine and TabLineSel highlighting groups (thanks
   to mwgkgk);
 - clearer documentation/description for :*unmap commands and 'vicmd'/'vixcmd'
   options (thanks to chelovechishko);
 - improve documentation of patterns and globs (thanks to afsheenb);
 - improved documentation on filters (thanks to Sitaram Chamarty);
 - document more details about expansion of FUSE macros;
 - make documentation of 'findprg' more readable.

Vim-plugin:
 - added :Vifm command as an alias for :EditVifm (patch by rbong);
 - added optional splitting of the embedded terminal (g:vifm_embed_split).  Has
   support for Vim's <mods> and <count> (patch by rbong);
 - added option to synchronize working directory of the embedded instance of
   vifm with the Vim host (g:vifm_embed_cwd) (patch by rbong);
 - added ability to replace netrw with vifm (g:vifm_replace_netrw and
   g:vifm_replace_netrw_cmd) (patch by rbong).

Configuration:
 - added example of using xsel to sample vifmrc file (thanks to chelovechishko);
 - enabled 'vimhelp' in sample vifmrc file by default.

Performance:
 - added caching to quickview for a single file to avoid fileviewer being called
   more often than needed (thanks to agguser);
 - try to avoid superfluous screen updates related to cursor position;
 - remember when file doesn't match any file-specific highlighting groups for
   better performance (thanks to Gomme Bidule);
 - generate faster regular expressions by vifm-convert-dircolors (thanks to
   Gomme Bidule).

Only on Windows:
 - upgraded to PDCurses 3.8 (was 3.4) for Windows.  This allows using 256 colors
   inside ConEmu.  Note that ConEmu has issues processing 256 colors on the last
   line of the screen, so avoid using them for status line (thanks to dancread).

Other changes:
 - don't error on trash creation failure due to read-only file system (patch by
   zsugabubus).

Important fixes:
 - fixed losing files on failed move operation.  Source files were deleted
   assuming they were copied successfully, even when errors regarding some of
   them were ignored by the user (thanks to zsugabubus);
 - fixed vifm not making use of large number of color pairs when they are
   available (thanks to Jose Riha (a.k.a. jose1711) and Hans Petter
   Jansson (a.k.a. hpjansson));
 - fixed color pairs being exhausted on Windows when default color ends up being
   used often, this caused highlighting to go awry (thanks to dancread);
 - fixed textual output of graphical previewers not being displayed in view
   mode (thanks to agguser);
 - fixed DirEnter autocommand being called with view being in a mixed state of
   old and new location (thanks to Kendrick Taylor, a.k.a. sixcircuit).

See change log for the full list of changes and by whom they were suggested or
implemented.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

November 11, 2018
=================

vifm v0.10
----------

New version includes long awaited tabs and support for managing media.
The first one comes in two flavours: tabs either include layout or don't.
The latter relies on a helper script, whose job is to adapt existing tools to
make them usable by vifm.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added tabs which either operate on the level of layout or level of
   individual panes;
 - added ability to synchronize contents of registers among multiple
   instances;
 - added menu for managing media (relies on helper that does the managing);
 - improved cursor positioning and control over it;
 - ability to colorize status line.

More detailed list of changes.

Command-line mode:
 - added :tabc[lose] command that closes current tab unless it's the last one;
 - added :tabm[ove] command that moves tabs (thanks to filterfalse);
 - added :tabname command that updates name of the current tab;
 - added :tabnew command that creates a new tab (thanks to Cosmin Popescu,
   a.k.a. cosminadrianpopescu);
 - added :tabn[ext] and :tabp[revious] commands, which work as gt and gT normal
   mode shortcuts correspondingly (thanks to Cosmin Popescu, a.k.a.
   cosminadrianpopescu);
 - added :qa[ll], :wqa[ll] and :xa[ll] commands that always try to exit vifm no
   matter how many tabs are open;
 - added :goto command that navigates to specified file/directory (thanks to
   mateusz28 and Dmitry Frank, a.k.a. dimonomid);
 - added :regular command that leaves custom view (thanks to gammaray);
 - :quit, :wq, :exit, :xit, ZZ and ZQ now try to close current tab before
   closing the application;
 - make :echo and :execute report parsing errors in more detail than just
   "invalid expression";
 - make :cabbrev and :cnoreabbrev always treat bar (`|`) as part of their
   arguments, just like :*map commands do (thanks to filterfalse);
 - make :tree! toggle view in and out of tree mode (thanks to gammaray);
 - more accurate error message on handling non directories passed to :cd.

:set command and options:
 - added 'tabscope' option that controls style of tabs (thanks to Cosmin
   Popescu, a.k.a. cosminadrianpopescu);
 - added 'showtabline' option that controls visibility of tab line;
 - added 'histcursor' option that gives partial control over when cursor is
   positioned in accordance with record of directory history (thanks to
   filterfalse and Dmitry Frank, a.k.a. dimonomid);
 - added 'quickview' option that controls visibility of quick view (:view)
   (thanks to Jochen Schweizer, a.k.a. durcheinandr);
 - added 'syncregs' option which defines group of instances that share registers
   (patch by Ma_Sys.ma);
 - added 'mediaprg' option that can be used to specify helper for managing
   removable media.  One such helper with support of udevil and udisks is
   provided.  Only for *nix systems;
 - added support for arbitrary expressions in 'statusline': '%{...}', e.g.
   '%{&sort}' evaluates to the value of the sort option (patch by Dmitry Frank,
   a.k.a. dimonomid);
 - added "M" flag to 'shortmess' option to control shortening of titles in
   windows of terminal multiplexers created by vifm down to file name instead of
   using full path (thanks to mateusz28).

File operations:
 - try to preserve file owner/group on copying (thanks to willemw12).

Normal and visual modes:
 - added gt and gT normal mode shortcuts that switch between tabs in both
   directions.

Key bindings:
 - added <silent> :*map argument that postpones UI updates until RHS is
   completely processed.  Probably not all updates are postponed, to be improved
   as unhandled cases are discovered;
 - added <wait> :*map argument, which resolves prefix conflicts of user-defined
   mappings and builtin keys in favour of user-defined mappings (thanks to Paweł
   Smolak, a.k.a. psmolak).

Angle bracket notation:
 - added <insert> angle bracket notation (thanks to j-xella);
 - added <c-@> angle bracket notation making it possible to map Ctrl-Space key
   (thanks to anonymous at Vifm Q2A site).

File list:
 - use historical cursor position upon startup by default when 'autochpos' is
   on, this is now independent from "savedirs" in 'vifminfo' option (thanks to
   filterfalse);
 - use historical cursor position on navigating to a mark that doesn't specify a
   file by default when 'autochpos' is on (thanks to filterfalse);
 - move cursor after p and P to one of files that were moved or to a cause of
   last conflict (thanks to filterfalse and ranousse);
 - issue a warning if file system lists several files with identical names in
   the same directory.  It used to be assumed that it can't happen (thanks to
   Jose Riha, a.k.a. jose1711).

File preview:
 - support italics in quickview/view mode and in :highlight when curses
   implementation provides corresponding extension.  PDCurses doesn't implement
   it on Windows.  Fallback is to use "reversed" attribute (thanks to GeorgeHJ).

Integration:
 - escape "=" at the beginning of paths (has special meaning in zsh) (thanks to
   agguser).

Menus and dialogs:
 - added :media menu that can list and perform basic operations on removable
   media (requires helper to be available, see 'mediaprg').  Only for *nix
   systems (thanks to Bruce Hunsaker, a.k.a. hunsakerbn and others);
 - added r key to :undolist menu, which resets position in the undo list to
   group under the cursor (thanks to mini-turtle);
 - sort entries of :bmarks menu (thanks to anonymous at Vifm Q2A site);
 - slightly better formatting in :undolist menu;
 - do not reset selection before executing a :command from :commands menu
   (thanks to Jose Riha, a.k.a. jose1711);
 - less strict parsing of output of external command by :[un]select commands.
   Similar to %u/%U and menus allow <file>[:[<line>:[<col>:]] <description>]
   format (thanks to j-xella).

Color schemes:
 - added TabLine highlight group for highlighting tab line;
 - added TabLineSel highlight group for highlighting tip of the selected tab on
   the tab line;
 - added User1..User9 highlight groups and corresponding %[0-9]* 'statusline'
   macro, which makes it possible to colorize parts of status line differently
   (thanks to GeorgeHJ).

TUI (Text User Interface):
 - display list of files in removal confirmation dialog (thanks to ovk).

Scripting:
 - added tabpagenr() function that retrieves number of current or last tab page
   (thanks to filterfalse);
 - added fnameescape() builtin function, which can be used to escape paths on
   construction of :commands (thanks to filterfalse);
 - added second optional parameter to filetype() builtin function that is
   treated as a boolean and specifies whether symbolic links should be resolved;
 - added addition and subtraction operations to the parser;
 - added grouping via parentheses to expressions (thanks to Konst Mayer, a.k.a.
   cdlscpmv);
 - allow passing numerical positions to filetype() function.

Documentation:
 - more explicit documentation about leaving custom views (thanks to tagwint).

Vim-plugin:
 - support embedded terminal in the plugin for newer Vim.

Only on Windows:
 - fixed flickering on Windows (thanks to Alexandre Viau and
   randomizedthinking);
 - fixed graphical applications on Windows not being detected as such, which
   caused vifm to wait until they finish running.  Was broken since 0.9 (thanks
   to r0ck).

Important fixes:
 - fixed error messages from put operation being postponed until the next put
   operation.  Got broken in 0.9;
 - fixed confirmation not being requested on :delete (thanks to anonymous at
   Vifm Q2A site).

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 28, 2018
================

vifm v0.10 beta
---------------

New version includes long awaited tabs and support for managing media.
The first one comes in two flavours: tabs either include layout or don't.
The latter relies on a helper script, whose job is to adapt existing tools to
make them usable by vifm.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added tabs which either operate on the level of layout or level of
   individual panes;
 - added ability to synchronize contents of registers among multiple
   instances;
 - added menu for managing media (relies on helper that does the managing);
 - improved cursor positioning and control over it;
 - ability to colorize status line.

More detailed list of changes.

Command-line mode:
 - added :tabc[lose] command that closes current tab unless it's the last one;
 - added :tabm[ove] command that moves tabs (thanks to filterfalse);
 - added :tabname command that updates name of the current tab;
 - added :tabnew command that creates a new tab (thanks to Cosmin Popescu,
   a.k.a. cosminadrianpopescu);
 - added :tabn[ext] and :tabp[revious] commands, which work as gt and gT normal
   mode shortcuts correspondingly (thanks to Cosmin Popescu, a.k.a.
   cosminadrianpopescu);
 - added :qa[ll], :wqa[ll] and :xa[ll] commands that always try to exit vifm no
   matter how many tabs are open;
 - added :goto command that navigates to specified file/directory (thanks to
   mateusz28 and Dmitry Frank, a.k.a. dimonomid);
 - added :regular command that leaves custom view (thanks to gammaray);
 - :quit, :wq, :exit, :xit, ZZ and ZQ now try to close current tab before
   closing the application;
 - make :echo and :execute report parsing errors in more detail than just
   "invalid expression";
 - make :cabbrev and :cnoreabbrev always treat bar (`|`) as part of their
   arguments, just like :*map commands do (thanks to filterfalse);
 - make :tree! toggle view in and out of tree mode (thanks to gammaray);
 - more accurate error message on handling non directories passed to :cd.

:set command and options:
 - added 'tabscope' option that controls style of tabs (thanks to Cosmin
   Popescu, a.k.a. cosminadrianpopescu);
 - added 'showtabline' option that controls visibility of tab line;
 - added 'histcursor' option that gives partial control over when cursor is
   positioned in accordance with record of directory history (thanks to
   filterfalse and Dmitry Frank, a.k.a. dimonomid);
 - added 'quickview' option that controls visibility of quick view (:view)
   (thanks to Jochen Schweizer, a.k.a. durcheinandr);
 - added 'syncregs' option which defines group of instances that share registers
   (patch by Ma_Sys.ma);
 - added 'mediaprg' option that can be used to specify helper for managing
   removable media.  One such helper with support of udevil and udisks is
   provided.  Only for *nix systems;
 - added support for arbitrary expressions in 'statusline': '%{...}', e.g.
   '%{&sort}' evaluates to the value of the sort option (patch by Dmitry Frank,
   a.k.a. dimonomid);
 - added "M" flag to 'shortmess' option to control shortening of titles in
   windows of terminal multiplexers created by vifm down to file name instead of
   using full path (thanks to mateusz28).

File operations:
 - try to preserve file owner/group on copying (thanks to willemw12).

Normal and visual modes:
 - added gt and gT normal mode shortcuts that switch between tabs in both
   directions.

Key bindings:
 - added <silent> :*map argument that postpones UI updates until RHS is
   completely processed.  Probably not all updates are postponed, to be improved
   as unhandled cases are discovered;
 - added <wait> :*map argument, which resolves prefix conflicts of user-defined
   mappings and builtin keys in favour of user-defined mappings (thanks to Paweł
   Smolak, a.k.a. psmolak).

Angle bracket notation:
 - added <insert> angle bracket notation (thanks to j-xella);
 - added <c-@> angle bracket notation making it possible to map Ctrl-Space key
   (thanks to anonymous at Vifm Q2A site).

File list:
 - use historical cursor position upon startup by default when 'autochpos' is
   on, this is now independent from "savedirs" in 'vifminfo' option (thanks to
   filterfalse);
 - use historical cursor position on navigating to a mark that doesn't specify a
   file by default when 'autochpos' is on (thanks to filterfalse);
 - move cursor after p and P to one of files that were moved or to a cause of
   last conflict (thanks to filterfalse and ranousse);
 - issue a warning if file system lists several files with identical names in
   the same directory.  It used to be assumed that it can't happen (thanks to
   Jose Riha, a.k.a. jose1711).

File preview:
 - support italics in quickview/view mode and in :highlight when curses
   implementation provides corresponding extension.  PDCurses doesn't implement
   it on Windows.  Fallback is to use "reversed" attribute (thanks to GeorgeHJ).

Integration:
 - escape "=" at the beginning of paths (has special meaning in zsh) (thanks to
   agguser).

Menus and dialogs:
 - added :media menu that can list and perform basic operations on removable
   media (requires helper to be available, see 'mediaprg').  Only for *nix
   systems (thanks to Bruce Hunsaker, a.k.a. hunsakerbn and others);
 - added r key to :undolist menu, which resets position in the undo list to
   group under the cursor (thanks to mini-turtle);
 - sort entries of :bmarks menu (thanks to anonymous at Vifm Q2A site);
 - slightly better formatting in :undolist menu;
 - do not reset selection before executing a :command from :commands menu
   (thanks to Jose Riha, a.k.a. jose1711);
 - less strict parsing of output of external command by :[un]select commands.
   Similar to %u/%U and menus allow <file>[:[<line>:[<col>:]] <description>]
   format (thanks to j-xella).

Color schemes:
 - added TabLine highlight group for highlighting tab line;
 - added TabLineSel highlight group for highlighting tip of the selected tab on
   the tab line;
 - added User1..User9 highlight groups and corresponding %[0-9]* 'statusline'
   macro, which makes it possible to colorize parts of status line differently
   (thanks to GeorgeHJ).

Scripting:
 - added tabpagenr() function that retrieves number of current or last tab page
   (thanks to filterfalse);
 - added fnameescape() builtin function, which can be used to escape paths on
   construction of :commands (thanks to filterfalse);
 - added second optional parameter to filetype() builtin function that is
   treated as a boolean and specifies whether symbolic links should be resolved;
 - added addition and subtraction operations to the parser;
 - added grouping via parentheses to expressions (thanks to Konst Mayer, a.k.a.
   cdlscpmv);
 - allow passing numerical positions to filetype() function.

Documentation:
 - more explicit documentation about leaving custom views (thanks to tagwint).

Only on Windows:
 - fixed flickering on Windows (thanks to Alexandre Viau and
   randomizedthinking);
 - fixed graphical applications on Windows not being detected as such, which
   caused vifm to wait until they finish running.  Was broken since 0.9 (thanks
   to r0ck).

Important fixes:
 - fixed error messages from put operation being postponed until the next put
   operation.  Got broken in 0.9;
 - fixed confirmation not being requested on :delete (thanks to anonymous at
   Vifm Q2A site).

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

February 05, 2018
=================

vifm v0.9.1
-----------

This version adds to the list of ways for viewing files by introducing
miller columns view and transposed ls-like view (table view).  Other
developments are related to integration between builtin features as well as
with external applications.

Thanks to everyone who tried out the beta.

Main changes:
 - introduced file view mode known as miller columns or cascading lists;
 - added ability to transpose ls-like view to make it fill by columns;
 - more natural behaviour of movement keys in ls-like view;
 - new `--remote-expr` command-line option can be used to query state of
   running instances;
 - extended retry/ignore/abort query to all file operations;
 - more control over highlight groups via `:highlight` suitable for
   interactive changes;
 - mostly eliminated the need for repeating ga/gA commands through automatic
   size recalculation.

More detailed list of changes.

File operations:
 - added retry/ignore/abort prompt for file copying and directory/file/symlink
   creation when 'syscalls' is on (thanks to einhander);
 - better detection of write errors on file copying.  The error was reported,
   but it wasn't treated as a hard error in a specific case related to caching.

Command-line mode:
 - added :histnext/:histprev commands, which are analogous to Ctrl-I/Ctrl-O
   (patch by Dmitry Frank, a.k.a. dimonomid);
 - added ability to remove filename-specific highlighting rules with
   `:highlight clear {pattern}` (thanks to aleksejrs);
 - changed :filter command to accept pattern (//, ////, {} or {{}}) (thanks to
   rbong);
 - made :siblnext and :siblprev commands respect dot and name filters;
 - made :siblnext and :siblprev accept [count] range (thanks to filterfalse);
 - made :tree pick up list of files from custom view (thanks to filterfalse);
 - made :highlight update file-specific group on exact match of the pattern
   instead of appending new rule (thanks to aleksejrs);
 - remove empty directories which are specified in 'trashdir' with %r and/or %u
   automatically on :empty (thanks to Marcin Kurczewski, a.k.a. rr-).

:set command and options:
 - added "inode" sorting key, which sorts entries by inode number (thanks to
   eco0414);
 - added 'millerview' option that enables cascading columns interface for the
   view (thanks to sudo-nice);
 - added 'milleroptions' option that configures miller view;
 - added 'lsoptions' option that allows to get transposed grid in ls-like view
   (thanks to Dmitry Frank, a.k.a. dimonomid);
 - added 'previewprg' option, which can be used to override :fileviewer commands
   either temporarily or permanently (thanks to svenn71);
 - added {root} key to 'viewcolumns' option (complements {ext}) (thanks to Oleg
   Gordienko, a.k.a. gordio);
 - added "u" flag to the 'tuioptions' option.  It enables use of Unicode
   characters in the TUI (Unicode ellipsis instead of "...") (thanks to Oleg
   Gordienko, a.k.a. gordio);
 - added "foldsubkeys" value to the 'suggestoptions' option.  It folds multiple
   suggestions with common prefix into one entry (thanks to AndreaHasani).

Normal and visual modes:
 - added [r/]r/[R/]R normal mode shortcuts that map to :siblprev and :siblnext
   with and without wrapping correspondingly (thanks to filterfalse);
 - do not go to start of line on Ctrl-U/Ctrl-D/Ctrl-F/Ctrl-B/G in ls-like view;
 - H/M/L keys in ls-like view now account for columns;
 - instead of invalidating directory size previously calculated via ga/gA on
   detecting changes in the directory recalculate its size and propagate update
   through its parents (thanks to filterfalse).

Macros:
 - added %x macro to 'rulerformat' (and thus to 'statusline') as a new name for
   %-, which conflicts with alignment specification and requires explicit width
   specifier (%0-) (thanks to Marcos Cruz).

Scripting:
 - added term() builtin function, which differs from system() only by its
   ability to run interactive applications without confusing vifm's interactions
   with the terminal (thanks to Dmitry Frank, a.k.a. dimonomid);
 - added v:count and v:count1 builtin variables.  They are assigned to count
   passed to : command;
 - don't trigger DirEnter event with previous directory on startup when list of
   files is specified on stdin (thanks to filterfalse).

Invocation:
 - added `--remote-expr` command-line option, which gives ability to query state
   of an instance (thanks to Marcin Kurczewski, a.k.a. rr-).

Completion:
 - added completion of filename-specific highlight groups for :highlight
   command.

Color schemes:
 - added AuxWin highlight group for highlighting auxiliary parts of windows.

TUI (Text User Interface):
 - extend width of the cursor in ls-like view to the width of the cell (thanks
   to Dmitry Frank, a.k.a. dimonomid);
 - indicate preview created with %q with "Command: cmd";
 - duplicate status bar error in dialog that reports sourcing error.  Will need
   to get rid of errors on status bar later.

Performance:
 - improved performance of mime-type detection when using libmagic (now might be
   about seven times faster by avoiding reinitialization of the library);
 - don't force file list reload after `:!` and rely on change detection.  This
   should result in somewhat better performance (thanks to opennota).

Documentation:
 - documented more details about 'vicmd' and 'vixcmd' options (thanks to
   Sebastian Cyprych).

Vim-plugin:
 - disabled spell checking of vifm files in Vim except for comments.

Only on Windows:
 - fixed running commands with arguments on Windows when 'shell' isn't cmd.exe.

Important fixes:
 - fixed consuming 100% of CPU on certain pattern of running background
   processes (thanks to petRUShka);
 - fixed turning quickview into explore view when preview command doesn't
   contain macros.  Was broken since 0.8;
 - fixed the plugin in neovim (patch by John Shea, a.k.a. coachshea);
 - fixed cloning of files like `.name` to produce `.name(1)` instead of
   `(1).name` (thanks to filterfalse);
 - fixed directory size in status line (patch by Dmitry Frank, a.k.a. dimonomid);
 - fixed CWD of the process not matching current view after vifm picked up
   change in file system (patch by Daniel Mueller);
 - fixed :normal command resetting selection (thanks to filterfalse);
 - fixed stopping of put operation after copying symbolic link that's broken on
   destination (thanks to filterfalse);
 - fixed a "race" with file system when we could load outdated file list and
   thus miss some file system updates.

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

January 22, 2018
================

vifm v0.9.1 beta
----------------

This version adds to the list of ways for viewing files by introducing
miller columns view and transposed ls-like view (table view).  Other
developments are related to integration between builtin features as well as
with external applications.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - introduced file view mode known as miller columns or cascading lists;
 - added ability to transpose ls-like view to make it fill by columns;
 - more natural behaviour of movement keys in ls-like view;
 - new `--remote-expr` command-line option can be used to query state of
   running instances;
 - extended retry/ignore/abort query to all file operations;
 - more control over highlight groups via `:highlight` suitable for
   interactive changes;
 - mostly eliminated the need for repeating ga/gA commands through automatic
   size recalculation.

More detailed list of changes.

File operations:
 - added retry/ignore/abort prompt for file copying and directory/file/symlink
   creation when 'syscalls' is on (thanks to einhander);
 - better detection of write errors on file copying.  The error was reported,
   but it wasn't treated as a hard error in a specific case related to caching.

Command-line mode:
 - added :histnext/:histprev commands, which are analogous to Ctrl-I/Ctrl-O
   (patch by Dmitry Frank, a.k.a. dimonomid);
 - added ability to remove filename-specific highlighting rules with
   `:highlight clear {pattern}` (thanks to aleksejrs);
 - changed :filter command to accept pattern (//, ////, {} or {{}}) (thanks to
   rbong);
 - made :siblnext and :siblprev commands respect dot and name filters;
 - made :siblnext and :siblprev accept [count] range (thanks to filterfalse);
 - made :tree pick up list of files from custom view (thanks to filterfalse);
 - made :highlight update file-specific group on exact match of the pattern
   instead of appending new rule (thanks to aleksejrs);
 - remove empty directories which are specified in 'trashdir' with %r and/or %u
   automatically on :empty (thanks to Marcin Kurczewski, a.k.a. rr-).

:set command and options:
 - added "inode" sorting key, which sorts entries by inode number (thanks to
   eco0414);
 - added 'millerview' option that enables cascading columns interface for the
   view (thanks to sudo-nice);
 - added 'milleroptions' option that configures miller view;
 - added 'lsoptions' option that allows to get transposed grid in ls-like view
   (thanks to Dmitry Frank, a.k.a. dimonomid);
 - added 'previewprg' option, which can be used to override :fileviewer commands
   either temporarily or permanently (thanks to svenn71);
 - added {root} key to 'viewcolumns' option (complements {ext}) (thanks to Oleg
   Gordienko, a.k.a. gordio);
 - added "u" flag to the 'tuioptions' option.  It enables use of Unicode
   characters in the TUI (Unicode ellipsis instead of "...") (thanks to Oleg
   Gordienko, a.k.a. gordio);
 - added "foldsubkeys" value to the 'suggestoptions' option.  It folds multiple
   suggestions with common prefix into one entry (thanks to AndreaHasani).

Normal and visual modes:
 - added [r/]r/[R/]R normal mode shortcuts that map to :siblprev and :siblnext
   with and without wrapping correspondingly (thanks to filterfalse);
 - do not go to start of line on Ctrl-U/Ctrl-D/Ctrl-F/Ctrl-B/G in ls-like view;
 - H/M/L keys in ls-like view now account for columns;
 - instead of invalidating directory size previously calculated via ga/gA on
   detecting changes in the directory recalculate its size and propagate update
   through its parents (thanks to filterfalse).

Macros:
 - added %x macro to 'rulerformat' (and thus to 'statusline') as a new name for
   %-, which conflicts with alignment specification and requires explicit width
   specifier (%0-) (thanks to Marcos Cruz).

Scripting:
 - added term() builtin function, which differs from system() only by its
   ability to run interactive applications without confusing vifm's interactions
   with the terminal (thanks to Dmitry Frank, a.k.a. dimonomid);
 - added v:count and v:count1 builtin variables.  They are assigned to count
   passed to : command;
 - don't trigger DirEnter event with previous directory on startup when list of
   files is specified on stdin (thanks to filterfalse).

Invocation:
 - added `--remote-expr` command-line option, which gives ability to query state
   of an instance (thanks to Marcin Kurczewski, a.k.a. rr-).

Completion:
 - added completion of filename-specific highlight groups for :highlight
   command.

Color schemes:
 - added AuxWin highlight group for highlighting auxiliary parts of windows.

TUI (Text User Interface):
 - extend width of the cursor in ls-like view to the width of the cell (thanks
   to Dmitry Frank, a.k.a. dimonomid);
 - indicate preview created with %q with "Command: cmd";
 - duplicate status bar error in dialog that reports sourcing error.  Will need
   to get rid of errors on status bar later.

Performance:
 - improved performance of mime-type detection when using libmagic (now might be
   about seven times faster by avoiding reinitialization of the library);
 - don't force file list reload after `:!` and rely on change detection.  This
   should result in somewhat better performance (thanks to opennota).

Documentation:
 - documented more details about 'vicmd' and 'vixcmd' options (thanks to
   Sebastian Cyprych).

Vim-plugin:
 - disabled spell checking of vifm files in Vim except for comments.

Only on Windows:
 - fixed running commands with arguments on Windows when 'shell' isn't cmd.exe.

Important fixes:
 - fixed consuming 100% of CPU on certain pattern of running background
   processes (thanks to petRUShka);
 - fixed turning quickview into explore view when preview command doesn't
   contain macros.  Was broken since 0.8;
 - fixed the plugin in neovim (patch by John Shea, a.k.a. coachshea);
 - fixed cloning of files like `.name` to produce `.name(1)` instead of
   `(1).name` (thanks to filterfalse);
 - fixed directory size in status line (patch by Dmitry Frank, a.k.a. dimonomid);
 - fixed CWD of the process not matching current view after vifm picked up
   change in file system (patch by Daniel Mueller);
 - fixed :normal command resetting selection (thanks to filterfalse);
 - fixed stopping of put operation after copying symbolic link that's broken on
   destination (thanks to filterfalse);
 - fixed a "race" with file system when we could load outdated file list and
   thus miss some file system updates.

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

June 18, 2017
=============

vifm v0.9
---------

New version brings two new ways of viewing and processing file lists, namely
tree-view and directory-comparison.  As usual, previously existing facilities
were extended and improved to become more useful.

Thanks to everyone who tried out the beta, especially filterfalse.

Main changes:
 - introduced tree-like representation of files;
 - added directory comparison facilities;
 - added ability to restore last navigation menu;
 - background operations and programs can now be cancelled;
 - dismissed error output of external programs can now be queried;
 - added shell completion for bash and zsh;
 - now it's possible to configure mappings in dialogs.

More detailed list of changes.

Packaging:
 - Removed -Werror in tests from non-developer builds.

Command-line mode:
 - added :tree command that converts current view into a tree (thanks to
   filterfalse and Kornel);
 - added :dmap, :dnoremap and :dunmap commands to configure mappings in dialogs
   (thanks to Sassan Haradji, a.k.a. sassanh);
 - added "tree" parameter to :sync! that enables synchronization of tree view
   (thanks to filterfalse);
 - added :compare command to perform comparison in one or two directory trees
   (thanks to anonymous on SourceForge discussion forum and aleksejrs);
 - added :copen command to restore last menu that supports navigation (thanks to
   Sassan Haradji, a.k.a. sassanh);
 - added :screen! form that enables terminal multiplexers support (instead of
   toggling it as :screen does) (thanks to Marcos Cruz);
 - added :siblnext and :siblprev commands.  They change directory to next or
   previous sibling directories of current path (in global sorting order of
   current pane) (thanks to sudo-nice);
 - made :put, :touch and :mkdir accept [line] range, which can be used to
   specify target position in tree-view (thanks to filterfalse);
 - accept paths in :touch, not just file names (thanks to filterfalse);
 - disallow applying :chmod on ".." entry;
 - disallow selecting ".." entry with :select command;
 - expand macros in `:[un]select !{command}` (thanks to Michael Corvin).


Macros:
 - added %Iu and %IU macros, which are %u and %U equivalents, but work better if
   external command is interactive and changes terminal state;
 - added %q macro that redirects command output into quick view (thanks to
   svenn71).

:set command and options:
 - added 'dotfiles' (local) option, which exposes dot files filter as an option
   (thanks to filterfalse);
 - added 'caseoptions' option that enables more fine-grained control over case
   sensitivity (thanks to Alexandru Geana, a.k.a. alegen);
 - added 'sizefmt' option that configures formatting of human-friendly size
   (thanks to sudo-nice);
 - added %f 'statusline' macro that inserts relative path of the entry, which
   might be useful for non-regular views (thanks to filterfalse);
 - added %D 'statusline' macro that displays path of the other pane in
   single-pane layout (thanks to sudo-nice);
 - added %T 'statusline' macro that displays symbolic link target (thanks to
   sudo-nice);
 - added %a 'statusline' macro that displays amount of free space available at
   current partition (thanks to sudo-nice);
 - consider trailing slash for directories or symbolic links that point to
   directories in 'classify' patterns by file name (e.g., this works now:
   `[::*/::]`);
 - better handling of setting 'fillchars' to incorrect or excessive value.

Normal and visual modes:
 - added [d and ]d shortcuts to navigate to previous/next directory entry
   (thanks to filterfalse);
 - added [s and ]s shortcuts to navigate to previous/next selected entry
   (thanks to filterfalse);
 - added [z and ]z shortcuts to navigate to first/last sibling in a tree
   (thanks to filterfalse);
 - added zj and zk shortcuts to navigate to next/previous directory sibling in a
   tree (thanks to filterfalse);
 - added [c and ]c shortcuts to navigate to previous/next mismatch in directory
   comparison view (thanks to filterfalse);
 - added do and dp keys to compare views for applying changes in files (thanks
   to filterfalse).

Menus and dialogs:
 - added dd key to :jobs menu, which requests cancellation of background
   operation.  Background :put, :copy, :move, :delete, size calculation with ga
   and gA as well as applications started in background can be cancelled this
   way (thanks to blurm);
 - added e key to :jobs menu that displays list of errors issues by that jobs,
   if any.  h key goes back to :jobs menu;
 - added % key to menu mode, which navigates to [count]-th percent of the list;
 - added meaning to [count] of cp shortcut, which is now processed as numerical
   argument for non-recursive `chmod` command (thanks to sudo-nice);
 - partially return progress report for menus.  Was disabled by introduction of
   null byte heuristic.

File operations:
 - enable restoring files from trash from custom views;
 - disallow moving/copying/linking files into custom view (put is forbidden, so
   makes sense to forbid these too);
 - try harder to move files by not giving up on getting permission error, which
   isn't always a reliable indication of actual permission error.  Only when
   'syscalls' is on (thanks to Marcin Kurczewski, a.k.a. rr-).

File preview:
 - view current directory on ".." for quickview/view mode if no viewer matches
   such entry (thanks to filterfalse);
 - enable cancellation of tree preview construction (thanks to filterfalse);
 - do not resolve symbolic links in directory preview (thanks to filterfalse).

Security:
 - make temporary rename files accessible only by the user (thanks to
   aleksejrs).

Performance:
 - improve performance of startup and exit by omitting file existence checks.
   The cost is possibly old files staying in the state, but it should be for
   long time (thanks to Marcin Kurczewski, a.k.a. rr-);
 - improved sorting performance in the presence of huge amount of symbolic links
   (thanks to Marcin Kurczewski, a.k.a. rr-).

Invocation:
 - don't disable preview on `--remote --select` if it doesn't hide updated pane
   (thanks to Marcin Kurczewski, a.k.a. rr-);
 - make +{num} and similar options work (actually affect cursor of the view)
   (thanks to filterfalse);
 - treat "+" option the same way as Vim (like :$) (thanks to filterfalse).

Scripting:
 - added v:servername variable, which provides access to server name of the
   running instance used by --remote feature (thanks to Marcin Kurczewski,
   a.k.a. rr-);
 - getpanetype() got new value ("tree") to indicate tree-view (thanks to
   filterfalse).

TUI (Text User Interface):
 - limited maximum height of message popup, just print how many lines we're
   skipping;
 - put hardware cursor according to current mode and cursor within it (thanks to
   Tyler Spivey);
 - display path to the conflicting file in conflict resolution dialog;
 - provide better messages on i/o errors with 'syscalls' (thanks to Behrooz).

File filtering:
 - don't move cursor off "../" before start of local filtering (thanks to
   filterfalse);
 - prevent clearing filters on zM if there were no zO preceding it (thanks to
   sudo-nice).

Color schemes:
 - added CmpMismatch highlight group for highlighting mismatched files on
   side-by-side comparison.

Integration:
 - added completion scripts for bash and zsh (patches by filterfalse);
 - escape first tilde in paths that go to the shell (thanks to Marius Schmidl);
 - resolve symbolic link for listing associated programs from desktop-files
   (thanks to filterfalse).

Vim-plugin:
 - work around :drop command being disabled in the plugin (thanks to Phil
   Runninger);
 - fixed inconsistent behaviour of :EditVifm in plugin with regard to
   "[No Name]" buffer (thanks to Phil Runninger);
 - fixed plugin in versions of Vim where :argadd without argument doesn't work
   (thanks to eco0414).

Only on Windows:
 - use <exe file location>/data/colors as global storage of color schemes on
   Windows (thanks to r44083);
 - handle terminal resize on Windows 10 (thanks to randomizedthinking);
 - properly recover from invalid/strange UNC root on Windows.  Don't end up with
   empty filelist;
 - fixed use of non-latin characters in environment variables and command-line
   options (thanks to khaoos-abominable).

Important fixes:
 - fixed redirecting stdout of background commands to /dev/null, which could be
   unwritable descriptor (thanks to c02y);
 - fixed possible data loss on moving/copying files over their own parent or
   child directories via p, P, :move, :copy, :alink and :rlink (thanks to Marius
   Schmidl);
 - fixed detection of too-small-terminal state;
 - fixed treating characters like š and ć (with low Unicode values, just above
   0x100) as functional keys on input (thanks to granderil).

Other changes:
 - changed size formatting to round from zero (matches behaviour of e.g. `ls`);
 - read error output of background commands independently of main thread
   (prevents blocking of tools which produce huge amount of output) (thanks to
   Stas Malavin);
 - no vifminfo merging if file change isn't detected.  Might result in faster
   quitting in some cases.  Not accounting for some changes is still possible
   when multiple instances quit simultaneously, but same could happen without
   this change;
 - made search consider trailing slash for directories and symbolic links that
   point to directories (thanks to filterfalse);
 - don't use :filextype in sample vifmrc for OS X, we can't tell whether
   graphical system is running (thanks to piotryordanov).

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

June 04, 2017
=============

vifm v0.9 beta
--------------

New version brings two new ways of viewing and processing file lists, namely
tree-view and directory-comparison.  As usual, previously existing facilities
were extended and improved to become more useful.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - introduced tree-like representation of files;
 - added directory comparison facilities;
 - added ability to restore last navigation menu;
 - background operations and programs can now be cancelled;
 - dismissed error output of external programs can now be queried;
 - added shell completion for bash and zsh;
 - now it's possible to configure mappings in dialogs.

More detailed list of changes.

Packaging:
 - Removed -Werror in tests from non-developer builds.

Command-line mode:
 - added :tree command that converts current view into a tree (thanks to
   filterfalse and Kornel);
 - added :dmap, :dnoremap and :dunmap commands to configure mappings in dialogs
   (thanks to Sassan Haradji, a.k.a. sassanh);
 - added "tree" parameter to :sync! that enables synchronization of tree view
   (thanks to filterfalse);
 - added :compare command to perform comparison in one or two directory trees
   (thanks to anonymous on SourceForge discussion forum and aleksejrs);
 - added :copen command to restore last menu that supports navigation (thanks to
   Sassan Haradji, a.k.a. sassanh);
 - added :screen! form that enables terminal multiplexers support (instead of
   toggling it as :screen does) (thanks to Marcos Cruz);
 - added :siblnext and :siblprev commands.  They change directory to next or
   previous sibling directories of current path (in global sorting order of
   current pane) (thanks to sudo-nice);
 - made :put, :touch and :mkdir accept [line] range, which can be used to
   specify target position in tree-view (thanks to filterfalse);
 - accept paths in :touch, not just file names (thanks to filterfalse);
 - disallow applying :chmod on ".." entry;
 - disallow selecting ".." entry with :select command.

Macros:
 - added %Iu and %IU macros, which are %u and %U equivalents, but work better if
   external command is interactive and changes terminal state;
 - added %q macro that redirects command output into quick view (thanks to
   svenn71).

:set command and options:
 - added 'dotfiles' (local) option, which exposes dot files filter as an option
   (thanks to filterfalse);
 - added 'caseoptions' option that enables more fine-grained control over case
   sensitivity (thanks to Alexandru Geana, a.k.a. alegen);
 - added 'sizefmt' option that configures formatting of human-friendly size
   (thanks to sudo-nice);
 - added %f 'statusline' macro that inserts relative path of the entry, which
   might be useful for non-regular views (thanks to filterfalse);
 - added %D 'statusline' macro that displays path of the other pane in
   single-pane layout (thanks to sudo-nice);
 - added %T 'statusline' macro that displays symbolic link target (thanks to
   sudo-nice);
 - added %a 'statusline' macro that displays amount of free space available at
   current partition (thanks to sudo-nice);
 - consider trailing slash for directories or symbolic links that point to
   directories in 'classify' patterns by file name (e.g., this works now:
   `[::*/::]`);
 - better handling of setting 'fillchars' to incorrect or excessive value.

Normal and visual modes:
 - added [d and ]d shortcuts to navigate to previous/next directory entry
   (thanks to filterfalse);
 - added [s and ]s shortcuts to navigate to previous/next selected entry
   (thanks to filterfalse);
 - added [z and ]z shortcuts to navigate to first/last sibling in a tree
   (thanks to filterfalse);
 - added zj and zk shortcuts to navigate to next/previous directory sibling in a
   tree (thanks to filterfalse);
 - added [c and ]c shortcuts to navigate to previous/next mismatch in directory
   comparison view (thanks to filterfalse);
 - added do and dp keys to compare views for applying changes in files (thanks
   to filterfalse).

Menus and dialogs:
 - added dd key to :jobs menu, which requests cancellation of background
   operation.  Background :put, :copy, :move, :delete, size calculation with ga
   and gA as well as applications started in background can be cancelled this
   way (thanks to blurm);
 - added e key to :jobs menu that displays list of errors issues by that jobs,
   if any.  h key goes back to :jobs menu;
 - added % key to menu mode, which navigates to [count]-th percent of the list;
 - added meaning to [count] of cp shortcut, which is now processed as numerical
   argument for non-recursive `chmod` command (thanks to sudo-nice);
 - partially return progress report for menus.  Was disabled by introduction of
   null byte heuristic.

File operations:
 - enable restoring files from trash from custom views;
 - disallow moving/copying/linking files into custom view (put is forbidden, so
   makes sense to forbid these too);
 - try harder to move files by not giving up on getting permission error, which
   isn't always a reliable indication of actual permission error.  Only when
   'syscalls' is on (thanks to Marcin Kurczewski, a.k.a. rr-).

File preview:
 - view current directory on ".." for quickview/view mode (thanks to
   filterfalse);
 - enable cancellation of tree preview construction (thanks to filterfalse);
 - do not resolve symbolic links in directory preview (thanks to filterfalse).

Security:
 - make temporary rename files accessible only by the user (thanks to
   aleksejrs).

Performance:
 - improve performance of startup and exit by omitting file existence checks.
   The cost is possibly old files staying in the state, but it should be for
   long time (thanks to Marcin Kurczewski, a.k.a. rr-);
 - improved sorting performance in the presence of huge amount of symbolic links
   (thanks to Marcin Kurczewski, a.k.a. rr-).

Invocation:
 - don't disable preview on `--remote --select` if it doesn't hide updated pane
   (thanks to Marcin Kurczewski, a.k.a. rr-);
 - make +{num} and similar options work (actually affect cursor of the view)
   (thanks to filterfalse);
 - treat "+" option the same way as Vim (like :$) (thanks to filterfalse).

Scripting:
 - added v:servername variable, which provides access to server name of the
   running instance used by --remote feature (thanks to Marcin Kurczewski,
   a.k.a. rr-);
 - getpanetype() got new value ("tree") to indicate tree-view (thanks to
   filterfalse).

TUI (Text User Interface):
 - limited maximum height of message popup, just print how many lines we're
   skipping;
 - put hardware cursor according to current mode and cursor within it (thanks to
   Tyler Spivey);
 - display path to the conflicting file in conflict resolution dialog;
 - provide better messages on i/o errors with 'syscalls' (thanks to Behrooz).

File filtering:
 - don't move cursor off "../" before start of local filtering (thanks to
   filterfalse);
 - prevent clearing filters on zM if there were no zO preceding it (thanks to
   sudo-nice).

Color schemes:
 - added CmpMismatch highlight group for highlighting mismatched files on
   side-by-side comparison.

Integration:
 - added completion scripts for bash and zsh (patches by filterfalse);
 - escape first tilde in paths that go to the shell (thanks to Marius Schmidl);
 - resolve symbolic link for listing associated programs from desktop-files
   (thanks to filterfalse).

Vim-plugin:
 - work around :drop command being disabled in the plugin (thanks to Phil
   Runninger);
 - fixed inconsistent behaviour of :EditVifm in plugin with regard to
   "[No Name]" buffer (thanks to Phil Runninger);
 - fixed plugin in versions of Vim where :argadd without argument doesn't work
   (thanks to eco0414).

Only on Windows:
 - use <exe file location>/data/colors as global storage of color schemes on
   Windows (thanks to r44083);
 - handle terminal resize on Windows 10 (thanks to randomizedthinking);
 - properly recover from invalid/strange UNC root on Windows.  Don't end up with
   empty filelist;
 - fixed use of non-latin characters in environment variables and command-line
   options (thanks to khaoos-abominable).

Important fixes:
 - fixed redirecting stdout of background commands to /dev/null, which could be
   unwritable descriptor (thanks to c02y);
 - fixed possible data loss on moving/copying files over their own parent or
   child directories via p, P, :move, :copy, :alink and :rlink (thanks to Marius
   Schmidl);
 - fixed detection of too-small-terminal state;
 - fixed treating characters like š and ć (with low Unicode values, just above
   0x100) as functional keys on input (thanks to granderil).

Other changes:
 - changed size formatting to round from zero (matches behaviour of e.g. `ls`);
 - read error output of background commands independently of main thread
   (prevents blocking of tools which produce huge amount of output) (thanks to
   Stas Malavin);
 - no vifminfo merging if file change isn't detected.  Might result in faster
   quitting in some cases.  Not accounting for some changes is still possible
   when multiple instances quit simultaneously, but same could happen without
   this change;
 - made search consider trailing slash for directories and symbolic links that
   point to directories (thanks to filterfalse).

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

July 16, 2016
=============

vifm v0.8.2
-----------

This release brings a bit of user-friendliness in form of key suggestions and
various descriptions provided in the interface.  Matching of files has been
extended in many ways and become significantly more powerful than before.
Menu mode also got several enhancements.

Thanks to everyone who found time to try the beta.

Main changes:
 - key suggestions in the interface on ambiguous input (e.g. "g");
 - helpful shortcuts for dialogs (for sort dialog in particular);
 - key descriptions in :map menus and %z macro for 'statusline' to display some
   tips;
 - description of all :commands, 'options' and their values for new multiline
   version of wildmenu;
 - ANDing, ORing and negating patterns for matching files and new mime-type
   matcher;
 - file prefixes and suffixes can now be multi-byte, which with extended
   'classify' option allows specifying "icons" via custom fonts;
 - search result highlighting, enabled completion and a way to export the list
   for menus;
 - an indication of pattern correctness and match state for interactive prompts.
 - :select and :unselect commands to perform automatic file selection (possibly
   by using output of external application);
 - cancellation (handling of Ctrl-C) for quick view and view mode loading.

Not sure if it was noticed, but HTTPS protocol is up for related sites since
Let's Encrypt started their beta.  Everything works fine, so all the links were
updated to https protocol.

If you ever wondered which keys are builtin for the command (normal) mode of
Vifm, this cheatsheet will show you: https://next.vifm.info/cheatsheets.shtml

In case you're into using neovim, you might be interesting into checking out
alternative Vifm plugin for it: https://github.com/vifm/neovim-vifm

More detailed list of changes.

Core:
 - added heuristic that uses null byte as separator for file lists if there is
   at least one such byte, otherwise normal line separators are used.  This
   affects :[un]select, `vifm -`, %u, %U, %m and %M (thanks to filterfalse);
 - changed order of initialization to perform autocommands before startup
   commands on launch.

Normal and visual modes:
 - changed ga/gA effect on parent entry (..) to calculate size of current
   directory (thanks to aleksejrs).

:set command and options:
 - added 'wildstyle' option to control the way wild menu is displayed.  Enables
   displaying it as a menu with one item per line (thanks to santhoshr and
   octos);
 - added 'suggestoptions' option to control displaying of suggestions;
 - added support of patterns to 'classify' option, so that files can now be
   decorated based on their names (thanks to elricbk);
 - added 'cvoptions' option to control when entering/leaving custom views is
   considered to be equal to entering/leaving directories (thanks to
   filterfalse);
 - added "target" sorting key, which sorts files by symbolic link targets
   (thanks to Marcos Cruz);
 - added %z 'statusline' macro that inserts text of a short tip picked at random
   (thanks to qinghao, a.k.a. haobug);
 - changed type of 'confirm' option.  Now it's a set that picks which operations
   should be confirmed (thanks to Losiara and mvucBmM0);
 - allow suffixes and prefixes in 'classify' to be of up to eight characters in
   length (thanks to elricbk).

Command-line mode:
 - added "filelist" parameter to :sync! that enables synchronization of custom
   view (thanks to filterfalse);
 - added :select and :unselect commands (thanks to filterfalse, Russell Urquhart
   and Marcos Cruz);
 - added negation to patterns with explicitly specified type (surrounded by {}
   or //).  Put exclamation mark to invert pattern match (thanks to Marcos
   Cruz);
 - added mime type patterns ([!]<list-of-globs>) (thanks to Ross Hadden, a.k.a.
   rosshadden);
 - added pattern ANDing.  Just list decorated patterns one after another and
   such composite pattern will much when each of them matches (thanks to
   filterfalse);
 - added pattern ORing for :file[x]type and :fileviewer commands implemented as
   a comma-separated list (thanks to filterfalse);
 - expand environment variables for :edit (thanks to filterfalse);
 - don't print just table header on `:cabbr something`, print message that no
   matches found instead;
 - use original (before custom view) cursor position on :sync! in custom views
   (thanks to filterfalse).

File preview:
 - added cancellation (handling of Ctrl-C) for quick view and view mode loading
   (thanks to kalterfive);
 - skip UTF-8 BOM for file preview.

File list:
 - never add parent entry (..) to very custom view (%U) (thanks to filterfalse);
 - silently ignore tries to remove parent entry (..) (thanks to aleksejrs);
 - automatically update custom view entries on rename of their parent directory
   in the same custom view.

Completion:
 - added completion of :wincmd argument;
 - do not reset completion on terminal resize;
 - some corrections of when completion happens for :find and :grep.

Scripting:
 - added chooseopt() builtin function that retrieves various parameters of file
   choosing (thanks to Von Welch).

Menus and dialogs:
 - added highlighting of search matches in menus;
 - added :noh[lsearch] command to menu mode;
 - added quick shortcuts to dialogs (patch by oo-);
 - added description of builtin keys to :map menus;
 - added :write command to menus, that writes all menu lines into specified file
   (thanks to gtors);
 - a bit better delete confirmation messages with number of files to be deleted;
 - avoid displaying useless search messages about incorrect pattern during
   interactive search in menus (those that user can't see, but that are shown in
   :messages);
 - enabled wildmenu for menus.

TUI (Text User Interface):
 - added indication of wrong pattern and absence of matches to command-prompt
   for interactive search/filtering.

Angle bracket notation:
 - display <c-h> as <bs> only at the beginning of key sequence.

Color schemes:
 - added SuggestBox highlight group for key suggestion box.

Vim-plugin:
 - added support for matchit to filetype plugin (patch by filterfalse);
 - better terminal buffer title for plugin in neovim (thanks to
   randomizedthinking);
 - improved syntax highlighting of patterns.

Only on Windows:
 - fixed escaping for cmd.exe again, for :edit and external command invocations
   (thanks to Reva Revadigar);
 - fixed querying file information on 64-bit Windows (thanks to santhoshr);
 - fixed possible crash on displaying job bar (e.g. after :empty) (thanks to
   Reva Revadigar);
 - fixed UTF8 <-> UTF16 conversion, which didn't always work (on surrogate
   characters it seems) (thanks to Reva Revadigar);
 - fixed possible unexpectedly long timeouts when waiting for a key (due to
   limitation of pdcurses);
 - fixed displaying of wide (CJK) characters in pdcurses (thanks to Reva
   Revadigar);
 - fixed capturing output of external applications when 'shell' is "cmd".  Was
   broken since v0.8 in an attempt to make cmd work better with Unicode (but its
   /U flag affects only input and output streams).

Packaging:
 - fixed functioning on architectures on which `char` is unsigned by default
   (thanks to Ondrej Novy, a.k.a. onovy).

Important fixes:
 - fixed hanging on sudden terminal loss (regression) (thanks to aleksejrs);
 - fixed using original file names after a prompt for new destination name
   (thanks to rbong);
 - fixed unconditional resetting of executable permission when using cp dialog
   (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - fixed remote feature on cygwin (thanks to Cosmin Popescu, a.k.a.
   cosminadrianpopescu);
 - fixed epic bug in processing selectors followed by other commands in a
   mapping.  Command which accepted selector was called after tail of sequence
   is processed.  Such case isn't very likely, so it probably didn't affect
   anyone.

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

July 02, 2016
=============

vifm v0.8.2 beta testing has started
------------------------------------

This release brings a bit of user-friendliness in form of key suggestions and
various descriptions provided in the interface.  Matching of files has been
extended in many ways and become significantly more powerful than before.
Menu mode also got several enhancements.

Main changes:
 - key suggestions in the interface on ambiguous input (e.g. "g");
 - helpful shortcuts for dialogs (for sort dialog in particular);
 - key descriptions in :map menus and %z macro for 'statusline' to display some
   tips;
 - description of all :commands, 'options' and their values for new multiline
   version of wildmenu;
 - ANDing, ORing and negating patterns for matching files and new mime-type
   matcher;
 - file prefixes and suffixes can now be multi-byte, which with extended
   'classify' option allows specifying "icons" via custom fonts;
 - search result highlighting, enabled completion and a way to export the list
   for menus;
 - an indication of pattern correctness and match state for interactive prompts.
 - :select and :unselect commands to perform automatic file selection (possibly
   by using output of external application);
 - cancellation (handling of Ctrl-C) for quick view and view mode loading.

Not sure if it was noticed, but HTTPS protocol is up for related sites since
Let's Encrypt started their beta.  Everything works fine, so all the links were
updated to https protocol.

If you ever wondered which keys are builtin for the command (normal) mode of
Vifm, this cheatsheet will show you: https://next.vifm.info/cheatsheets.shtml

In case you're into using neovim, you might be interesting into checking out
alternative Vifm plugin for it: https://github.com/vifm/neovim-vifm

More detailed list of changes.

Core:
 - added heuristic that uses null byte as separator for file lists if there is
   at least one such byte, otherwise normal line separators are used.  This
   affects :[un]select, `vifm -`, %u, %U, %m and %M (thanks to filterfalse);
 - changed order of initialization to perform autocommands before startup
   commands on launch.

Normal and visual modes:
 - changed ga/gA effect on parent entry (..) to calculate size of current
   directory (thanks to aleksejrs).

:set command and options:
 - added 'wildstyle' option to control the way wild menu is displayed.  Enables
   displaying it as a menu with one item per line (thanks to santhoshr and
   octos);
 - added 'suggestoptions' option to control displaying of suggestions;
 - added support of patterns to 'classify' option, so that files can now be
   decorated based on their names (thanks to elricbk);
 - added 'cvoptions' option to control when entering/leaving custom views is
   considered to be equal to entering/leaving directories (thanks to
   filterfalse);
 - added "target" sorting key, which sorts files by symbolic link targets
   (thanks to Marcos Cruz);
 - added %z 'statusline' macro that inserts text of a short tip picked at random
   (thanks to qinghao, a.k.a. haobug);
 - changed type of 'confirm' option.  Now it's a set that picks which operations
   should be confirmed (thanks to Losiara and mvucBmM0);
 - allow suffixes and prefixes in 'classify' to be of up to eight characters in
   length (thanks to elricbk).

Command-line mode:
 - added "filelist" parameter to :sync! that enables synchronization of custom
   view (thanks to filterfalse);
 - added :select and :unselect commands (thanks to filterfalse, Russell Urquhart
   and Marcos Cruz);
 - added negation to patterns with explicitly specified type (surrounded by {}
   or //).  Put exclamation mark to invert pattern match (thanks to Marcos
   Cruz);
 - added mime type patterns ([!]<list-of-globs>) (thanks to Ross Hadden, a.k.a.
   rosshadden);
 - added pattern ANDing.  Just list decorated patterns one after another and
   such composite pattern will much when each of them matches (thanks to
   filterfalse);
 - added pattern ORing for :file[x]type and :fileviewer commands implemented as
   a comma-separated list (thanks to filterfalse);
 - expand environment variables for :edit (thanks to filterfalse);
 - don't print just table header on `:cabbr something`, print message that no
   matches found instead;
 - use original (before custom view) cursor position on :sync! in custom views
   (thanks to filterfalse).

File preview:
 - added cancellation (handling of Ctrl-C) for quick view and view mode loading
   (thanks to kalterfive);
 - skip UTF-8 BOM for file preview.

File list:
 - never add parent entry (..) to very custom view (%U) (thanks to filterfalse);
 - silently ignore tries to remove parent entry (..) (thanks to aleksejrs);
 - automatically update custom view entries on rename of their parent directory
   in the same custom view.

Completion:
 - added completion of :wincmd argument;
 - do not reset completion on terminal resize;
 - some corrections of when completion happens for :find and :grep.

Scripting:
 - added chooseopt() builtin function that retrieves various parameters of file
   choosing (thanks to Von Welch).

Menus and dialogs:
 - added highlighting of search matches in menus;
 - added :noh[lsearch] command to menu mode;
 - added quick shortcuts to dialogs (patch by oo-);
 - added description of builtin keys to :map menus;
 - added :write command to menus, that writes all menu lines into specified file
   (thanks to gtors);
 - a bit better delete confirmation messages with number of files to be deleted;
 - avoid displaying useless search messages about incorrect pattern during
   interactive search in menus (those that user can't see, but that are shown in
   :messages);
 - enabled wildmenu for menus.

TUI (Text User Interface):
 - added indication of wrong pattern and absence of matches to command-prompt
   for interactive search/filtering.

Angle bracket notation:
 - display <c-h> as <bs> only at the beginning of key sequence.

Color schemes:
 - added SuggestBox highlight group for key suggestion box.

Vim-plugin:
 - better terminal buffer title for plugin in neovim (thanks to
   randomizedthinking);
 - improved syntax highlighting of patterns.

Only on Windows:
 - fixed escaping for cmd.exe again, for :edit and external command invocations
   (thanks to Reva Revadigar);
 - fixed querying file information on 64-bit Windows (thanks to santhoshr);
 - fixed possible crash on displaying job bar (e.g. after :empty) (thanks to
   Reva Revadigar);
 - fixed UTF8 <-> UTF16 conversion, which didn't always work (on surrogate
   characters it seems) (thanks to Reva Revadigar);
 - fixed possible unexpectedly long timeouts when waiting for a key (due to
   limitation of pdcurses);
 - fixed displaying of wide (CJK) characters in pdcurses (thanks to Reva
   Revadigar);
 - fixed capturing output of external applications when 'shell' is "cmd".  Was
   broken since v0.8 in an attempt to make cmd work better with Unicode (but its
   /U flag affects only input and output streams).

Packaging:
 - fixed functioning on architectures on which `char` is unsigned by default
   (thanks to Ondrej Novy, a.k.a. onovy).

Important fixes:
 - fixed hanging on sudden terminal loss (regression) (thanks to aleksejrs);
 - fixed using original file names after a prompt for new destination name
   (thanks to rbong);
 - fixed unconditional resetting of executable permission when using cp dialog
   (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - fixed remote feature on cygwin (thanks to Cosmin Popescu, a.k.a.
   cosminadrianpopescu);
 - fixed epic bug in processing selectors followed by other commands in a
   mapping.  Command which accepted selector was called after tail of sequence
   is processed.  Such case isn't very likely, so it probably didn't affect
   anyone.

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

February 10, 2016
=================

vifm v0.8.1a
------------

This is a bugfix release to primarily address messed up single-executable
builds for Windows.  Tab completion doesn't work there and can cause crashes.
Also 64-bit build somehow contains 32-bit executables.  Thanks to Reva Revadigar
for reporting the issue.

On the bright side, this gives a chance for fixing bugs discovered after the
release.

There was also time to add some functional changes, which also made it into this
release:
 - added c key to menus that inserts parts of menu line into command-line
   (thanks to filterfalse);
 - added { and } keys to normal and visual modes.  They act similar to ( and),
   but always consider whether entry is a file or directory (thanks to octos);
 - added --disable-build-timestamp option to configure script to perform
   reproducible build (thanks to Hendrik Jaeger, a.k.a. henk);
 - apply local filter on picking element of `:history filter` menu;
 - handle register specified for gs normal mode command.  Select files listed
   in that register (thanks to filterfalse);
 - be consistent with regard to when local state is changed and do not reset
   neither local options nor local filter on entering/leaving custom view
   (thanks to filterfalse);
 - disallow adding duplicated filetype/fileviewer entries (just ignore them
   as they wouldn't be used due to order priority anyway).

Other notable fixes:
 - fixed storing filetypes in vifminfo, which could create duplicates (thanks to
   aleksejrs);
 - fixed --with-dyn-x11 configuration option, which failed to enable dynamic
   use of the library (thanks to Badalisc and Hendrik Jaeger, a.k.a. henk);
 - fixed using plugin in neovim, which has broken `system()` and :! commands
   (thanks to Artur Shaik, a.k.a. artur-shaik).

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

January 17, 2016
================

vifm v0.8.1
-----------

New minor version delivers primarily various small improvements of different
kinds.  There is also improvement of navigation via named bookmarks (or tags),
which can ease keeping track of what is where, and an ability to apply
settings to specific directories or sub-trees (via combination of autocommands
and local options).

Thanks to everyone who was reporting issues during beta period.

Main changes:
 - added local options, which work until directory change;
 - added named bookmarks (paths are associated with tags);
 - added autocommands (with DirEnter event);
 - added ability to sort by regexp-extracted part of file name;
 - added builtin directory preview (similar to `tree`);
 - added a way to communicate menu contents to Vim quickfix;
 - added "more" mode that is used to handle status bar content that doesn't fit
   on the screen;
 - IPC got new (safe) implementation with listing/targeting of active instances,
   it's enabled by default again;
 - updating local view settings from vifmrc now affects both panes (:windo is
   not necessary);
 - more predictive cursor updates on directory reload;
 - improvements related to expression and command parsing.

More detailed list of changes.

Command-line mode:
 - added :setl[ocal] and :setg[lobal] commands to manage values of local options
   that are specific to current directory and are reset on directory change,
   similar to local options of Vim;
 - added :pu[t] command that inserts files into current directory (thanks to
   mvucBmM0);
 - added :winc[md] command-line command (thanks to fogine);
 - added exclamation mark to :shell to suppress spawning new teminal multiplexer
   pane (patch by Cosmin Popescu, a.k.a. cosminadrianpopescu).

:set command and options:
 - added :set foo+=bar syntax for string options (append value);
 - added 'deleteprg' option, which specifies program to run on files that are
   permanently removed;
 - added 'dirsize' option to control how size of directories is displayed in
   file views.  This enables one to see number of files in a directory rather
   than its size (thanks to Martin Fischer);
 - added optional %u and %U macros to 'findprg', 'grepprg', and 'locateprg' that
   allow immediate redirection of command output into custom view without
   opening a menu (thanks to filterfalse);
 - added 'iooptions' option to configure file system operations.  Contains only
   "fastfilecloning" for btrfs so far (thanks to aleksejrs);
 - added special treatment for "*" as value of 'slowfs', which might be useful
   in case of very slow handling of requests to mounts enumeration (patch by
   Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - added handling of "%u" in trash specification on *nix, which is replaced with
   real user ID (thanks to Regis);
 - allow 'shell' to specify a shell argument on *nix (thanks to loongw);
 - added 'sortgroups' option and "groups" sorting key, which allow sorting by
   parts of file names (thanks to aleksejrs);
 - added 'title' option to control whether title of terminal should be set.
   Enabled by default if old title can be restored (thanks to Svyatoslav Mishyn,
   a.k.a. juef);
 - make "p" in 'tuioptions' affect padding in quick view and view mode;
 - changed 'fusehome' default from temporary directory to data directory (that
   is $XDG_DATA_HOME/.local/share/fuse/ or $VIFM/fuse/ depending on which parent
   directory exists, the second one exists by definition, but first might not)
   (thanks to aleksejrs and to Hendrik Jaeger, a.k.a. henk);
 - changed default value of 'trashdir' on *nix again, this time to
   "%r/.vifm-Trash-%u,$VIFM/Trash,%r/.vifm-Trash".  This way it's safer for
   privacy, although using %r is not very safe in general (thanks to Regis).

Configuration:
 - make :set, :filter and :normal zo (and alike) in vifmrc affect all views,
   thus obsoleting use of :winrun or :windo for this purpose (they still work,
   the new way is a simpler and more obvious one).  This is related to commands
   executed during vifmrc processing (not those in the right-hand side of
   mappings, commands, etc.);
 - automatically create ~/.vifm/scripts containing small README file if the
   directory doesn't exist on startup (thanks to fogine).

Core:
 - added autocommands (DirEnter event and :au[tocmd] command) (thanks to
   filterfalse).

File operations:
 - added retry/ignore/abort prompt for file/directory removal when 'syscalls'
   is on (thanks to Robert Sarkozi);
 - make use of file cloning feature of btrfs when possible and enabled in
   'iooptions' (thanks to aleksejrs);
 - preserve file timestamps on copying files with 'syscalls' on (thanks to
   mvucBmM0);
 - employ inotify on GNU/Linux for more precise watching directories for
   changes;
 - copy timestamps and permissions on merging directories (thanks to willemw12).

Navigation:
 - added named bookmarks (paths are associated with tags).  This adds :bmark,
   :bmarks, :bmgo and :delbmarks command-line commands.  Also there is new
   "bmarks" value for 'vifminfo' (thanks to Schmalzhaf Stefan).

Normal and visual modes:
 - accept [count] for "h" and "gh";
 - added zr normal mode key to reset local filter (thanks to filterfalse);
 - ctrl-W | and Ctrl-W _ now can set window size to given count (thanks to
   filterfalse).

Key bindings:
 - remapping of builtin keys that are followed by selectors (e.g.
   `:nnoremap d y`) (thanks to mvucBmM0).

Color schemes:
 - changed default colorscheme to invert colors of the current line.

Documentation:
 - documented %= for 'statusline' and 'rulerformat';
 - make --select option more prominent in documentation (thanks to Svyatoslav
   Mishyn, a.k.a. juef);
 - documented difference between paths in menu with and without trailing slash
   (thanks to filterfalse).

Macros:
 - added %pc macro that splits preview command in two pices: preview command and
   clear command (thanks to Tomek K., a.k.a. TomiCode).

Menus and dialogs:
 - added B key to menus, which acts like b, but creates unsorted (very custom)
   view (thanks to filterfalse);
 - added "v" key to menu mode that loads current contents into quickfix list of
   editor (Vim compatible one is assumed) (thanks to filterfalse);
 - added handling of dd in :trashes, :trashes? and :lstrashes, which either
   deletes an item in trash or empties trash (thanks to Svyatoslav Mishyn,
   a.k.a. juef);
 - somewhat more informative error titles on issues during file operations;
 - provide conflict resolution options in a dialog rather than on the
   command-line, which is hard to read with so many options;
 - expand "~" in menus on navigation.

Packaging:
 - removed vifmrc-converter.  It's been around for four years and not needed any
   more (thanks to filterfalse);
 - removed contents of autoconf.sh, autoreconf covers what was there (there is a
   notice in that script now about it just in case) (thanks to Hendrik Jaeger,
   a.k.a. henk);
 - added --with-sanitize=basic|thread|leak option to configure script;
 - added missing script that's necessary for %s macro in GNU screen.  Was lost
   for a long time;
 - work around compilation on systems where MAX_ARG_STRLEN is defined, but
   unusable (thanks to Marcin Juszkiewicz, a.k.a. hrw, Michel Normand and
   Michael Vetter, a.k.a. jubalh);
 - put right-hand side of user-defined commands into separate scope of
   if-else-endif expressions.  This prevents affecting of regular input by
   malformed user-defined command.

Scripting:
 - added :elseif command (thanks to filterfalse);
 - added &option syntax for :let command;
 - added && and || operators to expression parser (thanks to filterfalse);
 - added getpanetype() builtin function that retrieves type of current pane
   (thanks to filterfalse);
 - added layoutis() builtin function that answers queries about current
   interface configuration (thanks to fogine);
 - added paneisat() builtin function that answers queries about current pane
   position (thanks to fogine);
 - added inline comments to allow less verbose commenting in configuration;
 - rewrote expression parser to prevent side-effects from occurring until syntax
   is checked.

TUI (Text User Interface):
 - added match numbers to search messages on status bar (patch by Cosmin
   Popescu, a.k.a. cosminadrianpopescu);
 - added dynamic view column alignment (specified by "*", just like "-" for left
   alignment) (patch by Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - added "more" mode that is used to handle status bar content that doesn't fit
   on the screen (thanks to Bruce Hunsaker, a.k.a. hunsakerbn, and Svyatoslav
   Mishyn, a.k.a. juef);
 - added builtin directory preview (thanks to Damian Ariel Perticone and
   Alexandre Viau);
 - added "fileext" sorting key, which sorts files by extensions and directories
   by name (patch by Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - added "nitems" sorting, which sorts by number of items in a directory (thanks
   to filterfalse);
 - added "nlinks" sorting key to display number of hard links to a file on *nix
   systems (thanks to filterfalse);
 - normalize surrounding spaces in menu and dialog titles;
 - lower minimum supported terminal width and height from 30x10 to 20x5;
 - update cursor position on file disappearing in more predictable way.  Use the
   closes file to the previously active one that still exists (thanks to
   ranousse);
 - display lower bound on item count in status bar progress messages (e.g. on
   :grep).

Important fixes:
 - assume UTF-8 sequences can be broken (thanks to Svyatoslav Mishyn, a.k.a.
   juef);
 - made setting title inside terminal multiplexers (when terminal type is
   "screen*") work;
 - check file system sensitivity on OS X (thanks to loongw);
 - fixed startup on Windows 10 (thanks to th1rdey3 and Robert Sarkozi);
 - fixed swapped absolute/relative link creation on :alink/:rlink commands
   (patch by MadMaverick9);
 - multiple fixes for custom views (thanks to filterfalse);
 - more careful treating of files with colons in their names for menus and
   custom views (thanks to aleksejrs);
 - fixed ranges for :yank, 0.8 regression (thanks to Marius Schmidl);
 - fixed crash on copy-like operations that move several files into subdirectory
   of another view (thanks to Marius Schmidl);
 - fixed creation of intermediate directories on merging directories (thanks to
   willemw12).

Vim-plugin:
 - added set of :*Vim commands to vifm run from Vim plugin, which overrule
   initial :*Vifm command behaviour (thanks to Ross Hadden, a.k.a. rosshadden);
 - changed plugin to do not depend on location of vifm.  g:vifm_home is ignored
   from now on (thanks to aleksejrs).

Only on Windows:
 - display directory size on Windows more correctly;
 - improvements in running commands with special characters and/or spaces
   (thanks to Stas Malavin).

Other changes:
 - added handling of "-" command-line argument specified in place of directory
   path as instruction to read list of files from stdin;
 - added --server-list and --server-name command-line options that enumerates
   names of currently running vifm servers and sets name of target/this instance
   respectively;
 - added optional argument for --logging parameter that specifies path to
   startup log (thanks to Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - invalidate directory size (calculated via ga/gA) if noticed that directory
   was changed.  This affects all parent directories as well, way easier to see
   what needs recalculation after file moving/removal;
 - warn about --remote command being disabled at build-time (thanks to
   Svyatoslav Mishyn, a.k.a. juef);
 - do not finish argument parsing after finding --help or --version, continue
   and validate the rest of command-line (thanks to Svyatoslav Mishyn, a.k.a.
   juef);
 - display incomplete file name on rename instead of failing with error on
   Unicode conversion issues.

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

January 02, 2016
================

vifm v0.8.1 beta testing has started
------------------------------------

New minor version delivers primarily various small improvements of different
kinds.  There is also improvement of navigation via named bookmarks (or tags),
which can ease keeping track of what is where, and an ability to apply
settings to specific directories or sub-trees (via combination of autocommands
and local options).

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added local options, which work until directory change;
 - added named bookmarks (paths are associated with tags);
 - added autocommands (with DirEnter event);
 - added ability to sort by regexp-extracted part of file name;
 - added builtin directory preview (similar to `tree`);
 - added a way to communicate menu contents to Vim quickfix;
 - IPC got new (safe) implementation with listing/targeting of active instances,
   it's enabled by default again;
 - updating local view settings from vifmrc now affects both panes (:windo is
   not necessary);
 - more predictive cursor updates on directory reload;
 - improvements related to expression and command parsing.

More detailed list of changes.

Command-line mode:
 - added :setl[ocal] and :setg[lobal] commands to manage values of local options
   that are specific to current directory and are reset on directory change,
   similar to local options of Vim;
 - added :pu[t] command that inserts files into current directory (thanks to
   mvucBmM0);
 - added :winc[md] command-line command (thanks to fogine);
 - added exclamation mark to :shell to suppress spawning new teminal multiplexer
   pane (patch by Cosmin Popescu, a.k.a. cosminadrianpopescu).

:set command and options:
 - added :set foo+=bar syntax for string options (append value);
 - added 'deleteprg' option, which specifies program to run on files that are
   permanently removed;
 - added 'dirsize' option to control how size of directories is displayed in
   file views.  This enables one to see number of files in a directory rather
   than its size (thanks to Martin Fischer);
 - added optional %u and %U macros to 'findprg', 'grepprg', and 'locateprg' that
   allow immediate redirection of command output into custom view without
   opening a menu (thanks to filterfalse);
 - added 'iooptions' option to configure file system operations.  Contains only
   "fastfilecloning" for btrfs so far (thanks to aleksejrs);
 - added special treatment for "*" as value of 'slowfs', which might be useful
   in case of very slow handling of requests to mounts enumeration (patch by
   Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - added handling of "%u" in trash specification on *nix, which is replaced with
   real user ID (thanks to Regis);
 - allow 'shell' to specify a shell argument on *nix (thanks to loongw);
 - added 'sortgroups' option and "groups" sorting key, which allow sorting by
   parts of file names (thanks to aleksejrs);
 - make "p" in 'tuioptions' affect padding in quick view and view mode;
 - changed 'fusehome' default from temporary directory to data directory (that
   is $XDG_DATA_HOME/.local/share/fuse/ or $VIFM/fuse/ depending on which parent
   directory exists, the second one exists by definition, but first might not)
   (thanks to aleksejrs and to Hendrik Jaeger, a.k.a. henk);
 - changed default value of 'trashdir' on *nix again, this time to
   "%r/.vifm-Trash-%u,$VIFM/Trash,%r/.vifm-Trash".  This way it's safer for
   privacy, although using %r is not very safe in general (thanks to Regis).

Configuration:
 - make :set, :filter and :normal zo (and alike) in vifmrc affect all views,
   thus obsoleting use of :winrun or :windo for this purpose (they still work,
   the new way is a simpler and more obvious one).  This is related to commands
   executed during vifmrc processing (not those in the right-hand side of
   mappings, commands, etc.);
 - automatically create ~/.vifm/scripts containing small README file if the
   directory doesn't exist on startup (thanks to fogine).

Core:
 - added autocommands (DirEnter event and :au[tocmd] command) (thanks to
   filterfalse).

File operations:
 - added retry/ignore/abort prompt for file/directory removal when 'syscalls'
   is on (thanks to Robert Sarkozi);
 - make use of file cloning feature of btrfs when possible and enabled in
   'iooptions' (thanks to aleksejrs);
 - preserve file timestamps on copying files with 'syscalls' on (thanks to
   mvucBmM0);
 - employ inotify on GNU/Linux for more precise watching directories for
   changes.

Navigation:
 - added named bookmarks (paths are associated with tags).  This adds :bmark,
   :bmarks, :bmgo and :delbmarks command-line commands.  Also there is new
   "bmarks" value for 'vifminfo' (thanks to Schmalzhaf Stefan).

Normal and visual modes:
 - accept [count] for "h" and "gh";
 - added zr normal mode key to reset local filter (thanks to filterfalse);
 - ctrl-W | and Ctrl-W _ now can set window size to given count (thanks to
   filterfalse).

Key bindings:
 - remapping of builtin keys that are followed by selectors (e.g.
   `:nnoremap d y`) (thanks to mvucBmM0).

Color schemes:
 - changed default colorscheme to invert colors of the current line.

Documentation:
 - documented %= for 'statusline' and 'rulerformat';
 - make --select option more prominent in documentation (thanks to Svyatoslav
   Mishyn, a.k.a. juef);
 - documented difference between paths in menu with and without trailing slash
   (thanks to filterfalse).

Macros:
 - added %pc macro that splits preview command in two pices: preview command and
   clear command (thanks to Tomek K., a.k.a. TomiCode).

Menus and dialogs:
 - added B key to menus, which acts like b, but creates unsorted (very custom)
   view (thanks to filterfalse);
 - added "v" key to menu mode that loads current contents into quickfix list of
   editor (Vim compatible one is assumed) (thanks to filterfalse);
 - added handling of dd in :trashes, :trashes? and :lstrashes, which either
   deletes an item in trash or empties trash (thanks to Svyatoslav Mishyn,
   a.k.a. juef);
 - somewhat more informative error titles on issues during file operations;
 - provide conflict resolution options in a dialog rather than on the
   command-line, which is hard to read with so many options;
 - expand "~" in menus on navigation.

Packaging:
 - removed vifmrc-converter.  It's been around for four years and not needed any
   more (thanks to filterfalse);
 - removed contents of autoconf.sh, autoreconf covers what was there (there is a
   notice in that script now about it just in case) (thanks to Hendrik Jaeger,
   a.k.a. henk);
 - added --with-sanitize=basic|thread|leak option to configure script;
 - added missing script that's necessary for %s macro in GNU screen.  Was lost
   for a long time;
 - work around compilation on systems where MAX_ARG_STRLEN is defined, but
   unusable (thanks to Marcin Juszkiewicz, a.k.a. hrw, Michel Normand and
   Michael Vetter, a.k.a. jubalh);
 - put right-hand side of user-defined commands into separate scope of
   if-else-endif expressions.  This prevents affecting of regular input by
   malformed user-defined command.

Scripting:
 - added :elseif command (thanks to filterfalse);
 - added &option syntax for :let command;
 - added && and || operators to expression parser (thanks to filterfalse);
 - added getpanetype() builtin function that retrieves type of current pane
   (thanks to filterfalse);
 - added layoutis() builtin function that answers queries about current
   interface configuration (thanks to fogine);
 - added paneisat() builtin function that answers queries about current pane
   position (thanks to fogine);
 - added inline comments to allow less verbose commenting in configuration;
 - rewrote expression parser to prevent side-effects from occurring until syntax
   is checked.

TUI (Text User Interface):
 - added match numbers to search messages on status bar (patch by Cosmin
   Popescu, a.k.a. cosminadrianpopescu);
 - added dynamic view column alignment (specified by "*", just like "-" for left
   alignment) (patch by Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - added "more" mode that is used to handle status bar content that doesn't fit
   on the screen (thanks to Bruce Hunsaker, a.k.a. hunsakerbn, and Svyatoslav
   Mishyn, a.k.a. juef);
 - added builtin directory preview (thanks to Damian Ariel Perticone and
   Alexandre Viau);
 - added "fileext" sorting key, which sorts files by extensions and directories
   by name (patch by Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - added "nitems" sorting, which sorts by number of items in a directory (thanks
   to filterfalse);
 - added "nlinks" sorting key to display number of hard links to a file on *nix
   systems (thanks to filterfalse);
 - normalize surrounding spaces in menu and dialog titles;
 - lower minimum supported terminal width and height from 30x10 to 20x5;
 - update cursor position on file disappearing in more predictable way.  Use the
   closes file to the previously active one that still exists (thanks to
   ranousse);
 - display lower bound on item count in status bar progress messages (e.g. on
   :grep).

Important fixes:
 - assume UTF-8 sequences can be broken (thanks to Svyatoslav Mishyn, a.k.a.
   juef);
 - made setting title inside terminal multiplexers (when terminal type is
   "screen*") work;
 - check file system sensitivity on OS X (thanks to loongw);
 - fixed startup on Windows 10 (thanks to th1rdey3 and Robert Sarkozi);
 - fixed swapped absolute/relative link creation on :alink/:rlink commands
   (patch by MadMaverick9);
 - multiple fixes for custom views (thanks to filterfalse);
 - more careful treating of files with colons in their names for menus and
   custom views (thanks to aleksejrs);
 - fixed ranges for :yank, 0.8 regression (thanks to Marius Schmidl);
 - fixed crash on copy-like operations that move several files into subdirectory
   of another view (thanks to Marius Schmidl);
 - fixed creation of intermediate directories on merging directories (thanks to
   willemw12).

Vim-plugin:
 - added set of :*Vim commands to vifm run from Vim plugin, which overrule
   initial :*Vifm command behaviour (thanks to Ross Hadden, a.k.a. rosshadden);
 - changed plugin to do not depend on location of vifm.  g:vifm_home is ignored
   from now on (thanks to aleksejrs).

Only on Windows:
 - display directory size on Windows more correctly;
 - improvements in running commands with special characters and/or spaces
   (thanks to Stas Malavin).

Other changes:
 - added handling of "-" command-line argument specified in place of directory
   path as instruction to read list of files from stdin;
 - added --server-list and --server-name command-line options that enumerates
   names of currently running vifm servers and sets name of target/this instance
   respectively;
 - added optional argument for --logging parameter that specifies path to
   startup log (thanks to Cosmin Popescu, a.k.a. cosminadrianpopescu);
 - invalidate directory size (calculated via ga/gA) if noticed that directory
   was changed.  This affects all parent directories as well, way easier to see
   what needs recalculation after file moving/removal;
 - warn about --remote command being disabled at build-time (thanks to
   Svyatoslav Mishyn, a.k.a. juef);
 - do not finish argument parsing after finding --help or --version, continue
   and validate the rest of command-line (thanks to Svyatoslav Mishyn, a.k.a.
   juef);
 - display incomplete file name on rename instead of failing with error on
   Unicode conversion issues.

See change log for the full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

July 09, 2015
=============

vifm v0.8
---------

New version brings several useful improvements of different kinds.  The most
substantial addition is custom views that allow one to combine files from
several directories in one view, which in turn enables processing of
search/grep/etc. results similar to handling contents of a regular directory.

Thanks to everyone who was reporting issues during beta period.

Also reminding about #vifm@Freenode IRC channel, color schemes preview at
http://vifm.info/colorschemes.shtml and introducing http://q2a.vifm.info Q&A
site for general usage questions.

Main changes:
 - added filename specific highlight (with a script to convert ls options);
 - added custom views, which contrary to regular views can contain files that do
   not belong to the same directory;
 - added job bar to display active backgrounded file operations;
 - added command-line mode abbreviations;
 - added global configuration and color schemes directory;
 - added live search match highlighting;
 - added optional per-file progress for file operations;
 - added full path patterns ({{globs}} and //regexp//);
 - added command-line options to control file/directory selection and selection
   processing to make it easier to use vifm as a file picker;
 - color schemes got ".vifm" extension, but the old-style names will still work
   for now;
 - XDG specification support;
 - ability to use terminal applications to preview graphics (e.g.
   w3mimgdisplay).

File operations:
 - added per-file overwrite confirmation on directory merging (thanks to
   willemw12);
 - added detailed list of errors when 'syscalls' is used (thanks to willemw12).

Key bindings:
 - added F key to less-like (file view) mode, which acts similar to `tail -F` or
   F key in less (thanks to Daniel Dettlaff, a.k.a. dmilith);
 - added b key to menu mode that creates custom view filled with menu items
   filtering out those that are not paths;
 - added zd normal and visual modes key to exclude items from custom views;
 - optional per-file progress in dialog mode activated by hitting "i" while
   operation is being performed.

:set command and options:
 - added 'chaselinks' option to automatically expand all symbolic links in path
   of a view (might not work on Windows) (thanks to filterfalse);
 - added 'mintimeout' option.  It enables controlling responsiveness on external
   events by Vifm (thanks to hofheinz);
 - added 'wordchars' option to specify which characters in command-line mode
   should be considered as part of a word (thanks to filterfalse);
 - added ^= operation for charset options;
 - added %[ and %] macros for 'statusline'/'ruler' (thanks to ranousse);
 - added "p" to 'shortmess' option to control tilde shortening of path in view
   titles (thanks to Martin Fischer);
 - changed default value of 'trashdir' from "$VIFM/Trash" to
   "%r/.vifm-Trash,$VIFM/Trash" (thanks to Joseph LP, a.k.a. ootput);
 - normalized sorting keys/view column names: "type" -> "dir", display real mode
   in octal for "mode", make "type" actually display file type (as "mode" did
   before) (thanks to Michal Belica, a.k.a. beli-sk);
 - united last pattern of :substitute command with search history (thanks to
   filterfalse).

Command-line mode:
 - added :highlight {pattern} for filename specific highlight (thanks to Ink,
   a.k.a. inknoir, filterfalse and Michael Maddern, a.k.a. madders);
 - added :cabbrev, :cnoreabbrev and :cunabbrev commands to manage command-line
   mode abbreviations (thanks to filterfalse);
 - added Ctrl-X / (slash) key to that inserts last search pattern into current
   cursor position (thanks to filterfalse);
 - added Ctrl-] key to trigger abbreviation expansion;
 - added single-argument form of :file[x]type and :fileviewer commands that
   lists (in menu mode) currently registered patterns that match specified file
   name;
 - added :cq[uit] command to exit with non-zero exit code and also abort
   directory choosing (thanks to Jeet Sukumaran, a.k.a. jeetsukumaran);
 - added :trashes? to display sizes of each non-empty trash directories (thanks
   to Svyatoslav Mishyn, a.k.a. juef);
 - added regexp patterns to :file[x]type and :fileviewer commands (thanks to
   filterfalse);
 - added :redr[aw] command to force immediate redraw (thanks to filterfalse);
 - allow non-printable characters to be arguments of :commands (thanks to
   filterfalse);
 - extended :sync command to support selective synchronization (user can choose
   among location, cursor position, local options and filters) (thanks to
   filterfalse).

Completion:
 - complete `clear` subcommand of :highlight.

Angle bracket notation:
 - added <lt> angle bracket notation (less-than character, '<') (thanks to
   filterfalse);
 - map <c-h> and <bs> to different key codes (thanks to fogine).  This is caused
   by inconsistency among terminals, map to both keys and it should work
   everywhere.

Macros:
 - added %px, %py, %pw and %ph macros that describe location and dimensions of
   preview area to use in external commands (thanks to Stephano, a.k.a. cao);
 - added %u and %U macros to redirect command output directly into custom view.
   The second one allows for more customization of file list, which is absence
   of sorting for now (thanks to filterfalse);
 - no more unjustified inconsistency in processing macros in :! and :file[x]type
   commands (thanks to Miodrag Tokić, a.k.a. loonies).

Scripting:
 - added system() builtin function that executes command via shell and returns
   its output;
 - added full path patterns ({{globs}} and //regexp//) (thanks to astrell);
 - report error on wrong expression in :if statement and misplaced :else/:endif
   on file sourcing.

Color scheme:
 - added JobLine highlight group for the job bar.

Configuration:
 - added fallback to use "XDG Base Directory Specification" when failed to find
   configuration in other places (thanks to Miodrag Tokić, a.k.a. loonies);
 - added global configuration {prefix}/etc/vifm/vifmrc and color schemes
   {prefix}/etc/vifm/colors/* (thanks to astrell and Michael Vetter, a.k.a.
   jubalh).

Performance:
 - significantly reduced amount of work performed by Vifm in idle state (thanks
   to hofheinz);
 - quit fast on --help/--version (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - throw away dead directories in directory histories on merging vifminfo files.
   Otherwise clearing such directories on :history is almost useless.

Menus and dialogs:
 - added handling of Ctrl-L to sort dialog (thanks to filterfalse);
 - added device id (major and minor numbers) to file info dialog;
 - made calculation of directory size visible in :jobs menu;
 - parse output of mandoc version of apropos in :apropos (thanks to Svyatoslav
   Mishyn, a.k.a. juef);
 - display RFC 2822 date without time zon in file info (thanks to Svyatoslav
   Mishyn, a.k.a. juef).

TUI (Text User Interface):
 - added search match highlighting for file names (thanks to Svyatoslav Mishyn,
   a.k.a. juef, and willemw12);
 - added job bar that displays backgrounded file operations if any (thanks to
   geo909);
 - redraw UI on resize during file operation when 'syscalls' is set;
 - redraw UI on resize when dialog is active;
 - dynamic dialog dimensions (minimum %30 percent of the screen rather than
   screen-wide all the time) (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - auto-resize position field on the status bar to fit the text (thanks to
   ranousse);
 - append unused space in view columns to the last one with percent sizing type
   if any (thanks to fogine).

Documentation:
 - manual page fixes/improvements (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - wrapped option names with single quotes in the man page to make it easier to
   search for options by their names.

Packaging:
 - added one more light color scheme to assets (in two variations astrell-root
   and astrell-user) (thanks to astrell);
 - added lookup for mandoc on *nix to perform manual page to plain text
   transformation (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - added OS X version of sample vifmrc file.  Now this one will be used on first
   run on OS X (thanks to Larry Hynes, a.k.a. larryhynes);
 - added dircolors -> vifm conversion script (thanks to Ink, a.k.a. inknoir,
   Hendrik Jaeger, a.k.a. henk, and Michael Maddern, a.k.a. madders);
 - added .vifm extension to color schemes (initial rename is performed
   automatically) (thanks Michael Vetter, a.k.a. jubalh);
 - added script to update timestamps, so that build system won't be regenerated
   without real reason.  One might want to run it when building from git
   checkout, which doesn't preserve correct timestamps;
 - install AUTHORS, COPYING, ChangeLog, INSTALL, NEWS, README and TODO to
   {prefix}/share/doc/vifm.  Install color schemes to
   {prefix}/share/vifm/colors.  Otherwise these are not available after
   installation;
 - made configure script lookup curs_set in libtinfo;
 - moved checks for build-time tools existence from Makefile to configure
   script;
 - made tests less dependent on environment (thanks to Hendrik Jaeger, a.k.a.
   henk).

Only on Windows:
 - automatically install sample vifmrc and help file on first start;
 - switch to utf-8 internal representation of paths.  This fixes issues when
   file name encoding doesn't match system encoding (thanks to Stas Panteleev).

Important fixes:
 - fixed undesired file removal on overwriting them with themselves (data loss
   after confirmation of overwriting files when destination matches source)
   (thanks to Сергей Соловьёв (Sergej Soloviov));
 - fixed crash on navigation to end of line in command-line mode (thanks to
   Christian Fillion, a.k.a. cfillion);
 - fixed `:help` (no arguments) when 'vimhelp' is on and automatically installed
   Vim documentation is used (thanks to ranousse);
 - better handling of case related operations;
 - fixed ":vs .." which used to use wrong base directory;
 - fixed assertion on including "type" in 'viewcolumns' value (thanks to Michal
   Belica, a.k.a. beli-sk);
 - better FUSE handling on OS X (thanks to Michael Maddern, a.k.a. madders);
 - fixed (deep) directory merging (thanks to willemw12);
 - fixed build and work on OpenBSD (at least to some degree that curses
   implementation there allows).  There might be some troubles with non-ascii
   characters (thanks to hofheinz and Brian Callahan, a.k.a. ibara);
 - fixed copying of fifo, socket and device files with 'syscalls' enabled.
   Thanks to Svyatoslav Mishyn (a.k.a. juef).

Vim-plugin:
 - added K mapping to Vim plugin (quick navigation to documentation, e.g. from
   vifmrc).  Patch by filterfalse.

Other changes:
 - added --delimiter command-line option.  Configures delimiter string on
   writing out list of paths (like on `-f` switch) (thanks to Jeet Sukumaran,
   a.k.a. jeetsukumaran);
 - added --choose-files and --choose-dir command-line switches to specify output
   location for names of selected files or last visited directory
   respectively (thanks to Jeet Sukumaran, a.k.a. jeetsukumaran);
 - added --on-choose command-line switch to execute a command on selection
   rather than opening it (thanks to Ross Hadden, a.k.a. rosshadden);
 - added %FOREGROUND FUSE mounting option, which supersedes %CLEAR and fixes
   issue with passing input to FUSE mounter (thanks to Johannes, a.k.a. johannesmeng);
 - removed per-view last search pattern.  Don't worry, you probably won't even
   notice it: this doesn't affect regular use case, rather more exotic one,
   which is hard to notice;
 - better handling or unexpectedly unavailable directories on startup and while
   running (thanks to willemw12);
 - define $VIFM_FUSE_FILE environment variable for external commands to
   communicate path to file used to initiate FUSE mounting of directory we're
   in (thanks to astrell);
 - allowed having multiple file viewers with same rules for choosing them at
   run-time as for file associations (thanks to filterfalse);
 - redirect both standard output and error streams from viewers (already was the
   case for Windows);
 - handle commands that are too long to be passed directly to the shell by
   breaking them into list of arguments if possible (thanks to filterfalse).

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

June 19, 2015
=============

vifm v0.8 beta testing has started
----------------------------------

New version brings several useful improvements of different kinds.  The most
substantial addition is custom views that allow one to combine files from
several directories in one view, which in turn enables processing of
search/grep/etc. results similar to handling contents of a regular directory.

That change alone affected internal structure quite seriously which combined
with operations on system calls from the previous release distant new version
far enough from 0.7 to name it 0.8.

Version change also gives one a moral right to introduce incompatible changes.
So if anyone remembers me postponing changing defaults or something like that
and is still waiting on it, please send a reminder (unfortunately I was
careless enough to didn't make detailed list of such things).  As of now the
following items are under evaluation:
 - removing "options", "filetypes", "commands" from 'vifminfo' option (not a
   big deal, but it's not really useful as well, and maybe potentially
   harmful);
 - removing 'trash' option as it effectively affects quite a lot things and is
   better to be enabled;
 - have 'hlsearch' off by default as normally search doesn't select anything
   and user can accidentally run some operation on too many files with default
   setup.

Please see the README file in packages for links where feedback can be
provided.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added filename specific highlight;
 - added custom views, which contrary to regular views can contain files that do
   not belong to the same directory;
 - added job bar to display active backgrounded file operations;
 - added command-line mode abbreviations;
 - added global configuration and color schemes directory;
 - added live search match highlighting;
 - added optional per-file progress for file operations;
 - added full path patterns ({{globs}} and //regexp//);
 - added command-line options to control file/directory selection and selection
   processing to make it easier to use vifm as a file picker;
 - color schemes got ".vifm" extension, but the old-style names will still work
   for now;
 - XDG specification support.

File operations:
 - added per-file overwrite confirmation on directory merging (thanks to
   willemw12);
 - added detailed list of errors when 'syscalls' is used (thanks to willemw12).

Key bindings:
 - added F key to less-like (file view) mode, which acts similar to `tail -F` or
   F key in less (thanks to Daniel Dettlaff, a.k.a. dmilith);
 - added b key to menu mode that creates custom view filled with menu items
   filtering out those that are not paths;
 - added zd normal and visual modes key to exclude items from custom views;
 - optional per-file progress in dialog mode activated by hitting "i" while
   operation is being performed.

:set command and options:
 - added 'chaselinks' option to automatically expand all symbolic links in path
   of a view (might not work on Windows) (thanks to filterfalse);
 - added 'mintimeout' option.  It enables controlling responsiveness on external
   events by Vifm (thanks to hofheinz);
 - added 'wordchars' option to specify which characters in command-line mode
   should be considered as part of a word (thanks to filterfalse);
 - added ^= operation for charset options;
 - added %[ and %] macros for 'statusline'/'ruler' (thanks to ranousse);
 - added "p" to 'shortmess' option to control tilde shortening of path in view
   titles (thanks to Martin Fischer);
 - changed default value of 'trashdir' from "$VIFM/Trash" to
   "%r/.vifm-Trash,$VIFM/Trash" (thanks to Joseph LP, a.k.a. ootput);
 - normalized sorting keys/view column names: "type" -> "dir", display real mode
   in octal for "mode", make "type" actually display file type (as "mode" did
   before) (thanks to Michal Belica, a.k.a. beli-sk);
 - united last pattern of :substitute command with search history (thanks to
   filterfalse).

Command-line mode:
 - added :highlight {pattern} for filename specific highlight (thanks to Ink,
   a.k.a. inknoir, filterfalse and Michael Maddern, a.k.a. madders);
 - added :cabbrev, :cnoreabbrev and :cunabbrev commands to manage command-line
   mode abbreviations (thanks to filterfalse);
 - added Ctrl-X / (slash) key to that inserts last search pattern into current
   cursor position (thanks to filterfalse);
 - added Ctrl-] key to trigger abbreviation expansion;
 - added single-argument form of :file[x]type and :fileviewer commands that
   lists (in menu mode) currently registered patterns that match specified file
   name;
 - added :cq[uit] command to exit with non-zero exit code and also abort
   directory choosing (thanks to Jeet Sukumaran, a.k.a. jeetsukumaran);
 - added :trashes? to display sizes of each non-empty trash directories (thanks
   to Svyatoslav Mishyn, a.k.a. juef);
 - added regexp patterns to :file[x]type and :fileviewer commands (thanks to
   filterfalse);
 - added :redr[aw] command to force immediate redraw (thanks to filterfalse);
 - allow non-printable characters to be arguments of :commands (thanks to
   filterfalse);
 - extended :sync command to support selective synchronization (user can choose
   among location, cursor position, local options and filters) (thanks to
   filterfalse).

Completion:
 - complete `clear` subcommand of :highlight.

Angle bracket notation:
 - added <lt> angle bracket notation (less-than character, '<') (thanks to
   filterfalse);
 - map <c-h> and <bs> to different key codes (thanks to fogine).  This is caused
   by inconsistency among terminals, map to both keys and it should work
   everywhere.

Macros:
 - added %px, %py, %pw and %ph macros that describe location and dimensions of
   preview area to use in external commands (thanks to Stephano, a.k.a. cao);
 - added %u and %U macros to redirect command output directly into custom view.
   The second one allows for more customization of file list, which is absence
   of sorting for now (thanks to filterfalse);
 - no more unjustified inconsistency in processing macros in :! and :file[x]type
   commands (thanks to Miodrag Tokić, a.k.a. loonies).

Scripting:
 - added system() builtin function that executes command via shell and returns
   its output;
 - added full path patterns ({{globs}} and //regexp//) (thanks to astrell);
 - report error on wrong expression in :if statement and misplaced :else/:endif
   on file sourcing.

Color scheme:
 - added JobLine highlight group for the job bar.

Configuration:
 - added fallback to use "XDG Base Directory Specification" when failed to find
   configuration in other places (thanks to Miodrag Tokić, a.k.a. loonies);
 - added global configuration {prefix}/etc/vifm/vifmrc and color schemes
   {prefix}/etc/vifm/colors/* (thanks to astrell and Michael Vetter, a.k.a.
   jubalh).

Performance:
 - significantly reduced amount of work performed by Vifm in idle state (thanks
   to hofheinz);
 - quit fast on --help/--version (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - throw away dead directories in directory histories on merging vifminfo files.
   Otherwise clearing such directories on :history is almost useless.

Menus and dialogs:
 - made calculation of directory size visible in :jobs menu;
 - parse output of mandoc version of apropos in :apropos (thanks to Svyatoslav
   Mishyn, a.k.a. juef).

TUI (Text User Interface):
 - added search match highlighting for file names (thanks to Svyatoslav Mishyn,
   a.k.a. juef, and willemw12);
 - added job bar that displays backgrounded file operations if any (thanks to
   geo909);
 - redraw UI on resize during file operation when 'syscalls' is set;
 - redraw UI on resize when dialog is active;
 - dynamic dialog dimensions (minimum %30 percent of the screen rather than
   screen-wide all the time) (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - auto-resize position field on the status bar to fit the text (thanks to
   ranousse).

Documentation:
 - manual page fixes/improvements (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - wrapped option names with single quotes in the man page to make it easier to
   search for options by their names.

Packaging:
 - added one more light color scheme to assets (in two variations astrell-root
   and astrell-user) (thanks to astrell);
 - added lookup for mandoc on *nix to perform manual page to plain text
   transformation (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - added OS X version of sample vifmrc file.  Now this one will be used on first
   run on OS X (thanks to Larry Hynes, a.k.a. larryhynes);
 - added dircolors -> vifm conversion script (thanks to Ink, a.k.a. inknoir,
   Hendrik Jaeger, a.k.a. henk, and Michael Maddern, a.k.a. madders);
 - added .vifm extension to color schemes (initial rename is performed
   automatically) (thanks Michael Vetter, a.k.a. jubalh);
 - install AUTHORS, COPYING, ChangeLog, INSTALL, NEWS, README and TODO to
   {prefix}/share/doc/vifm.  Install color schemes to
   {prefix}/share/vifm/colors.  Otherwise these are not available after
   installation;
 - made configure script lookup curs_set in libtinfo;
 - moved checks for build-time tools existence from Makefile to configure script;
 - made tests less dependent on environment (thanks to Hendrik Jaeger, a.k.a.
   henk).

Only on Windows:
 - automatically install sample vifmrc and help file on first start;
 - switch to utf-8 internal representation of paths.  This fixes issues when
   file name encoding doesn't match system encoding (thanks to Stas Panteleev).

Major fixes:
 - fixed undesired file removal on overwriting them with themselves (data loss
   after confirmation of overwriting files when destination matches source)
   (thanks to Сергей Соловьёв (Sergej Soloviov));
 - fixed crash on navigation to end of line in command-line mode (thanks to
   Christian Fillion, a.k.a. cfillion);
 - fixed `:help` (no arguments) when 'vimhelp' is on and automatically installed
   Vim documentation is used (thanks to ranousse);
 - better handling of case related operations;
 - fixed ":vs .." which used to use wrong base directory;
 - fixed assertion on including "type" in 'viewcolumns' value (thanks to Michal
   Belica, a.k.a. beli-sk);
 - better FUSE handling on OS X (thanks to Michael Maddern, a.k.a. madders).

Vim-plugin:
 - added K mapping to Vim plugin (quick navigation to documentation, e.g. from
   vifmrc).  Patch by filterfalse.

Other changes:
 - added --delimiter command-line option.  Configures delimiter string on
   writing out list of paths (like on `-f` switch) (thanks to Jeet Sukumaran,
   a.k.a. jeetsukumaran);
 - added --choose-files and --choose-dir command-line switches to specify output
   location for names of selected files or last visited directory
   respectively (thanks to Jeet Sukumaran, a.k.a. jeetsukumaran);
 - added --on-choose command-line switch to execute a command on selection
   rather than opening it (thanks to Ross Hadden, a.k.a. rosshadden);
 - added %FOREGROUND FUSE mounting option, which supersedes %CLEAR and fixes
   issue with passing input to FUSE mounter (thanks to Johannes, a.k.a.
   johannesmeng);
 - removed per-view last search pattern.  Don't worry, you probably won't even
   notice it: this doesn't affect regular use case, rather more exotic one,
   which is hard to notice;
 - better handling or unexpectedly unavailable directories on startup and while
   running (thanks to willemw12);
 - define $VIFM_FUSE_FILE environment variable for external commands to
   communicate path to file used to initiate FUSE mounting of directory we're
   in (thanks to astrell);
 - allowed having multiple file viewers with same rules for choosing them at
   run-time as for file associations (thanks to filterfalse);
 - redirect both standard output and error streams from viewers (already was the
   case for Windows);
 - handle commands that are too long to be passed directly to the shell by
   breaking them into list of arguments if possible (thanks to filterfalse).

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 25, 2014
================

Vifm v0.7.8 release
-------------------

New version adds a couple of major features, allows for some more customizations
and makes usual operations more convenient.  Finally, file system operations got
progress (it's disabled by default, new implementation needs to be tested in
different environments to become the primary one). Another frequently asked
feature is multiblock selection ("extended visual mode" if you wish). Vifm also
became friendlier to authors of colorschemes and those who'd like to customize
UI a bit more.

Main changes:
 - added multiblock "selection" (in quotes because it's also block deselection
   and inversion of selection for completeness);
 - added progress bar for file operations.  Available only if 'syscalls' option
   is set  (please be careful with that, check basic operations on temp files
   before using this with important data);
 - added names for 256 colors, highlight group for inactive cursor,
   ":highlight clear" command;
 - some improvements for cancelling operations;
 - better implementation of emptying trash directories;
 - new types of conflict resolution;
 - several extensions for filtering with user-defined commands;
 - more customizable UI (borders, padding);
 - smarter path completion;
 - separated Vifm and Vim plugin documentation;
 - a couple of extensions for Vim plugin (for mail and bulk file renaming).

Core:
 - added cancellation (handling of Ctrl-C) for FUSE mounting (but not
   unmounting);
 - added progress for long-running file system operations.  Available only if
   'syscalls' option is set;
 - added "[a]ppend the end" conflict resolution option (appends the rest of
   file, e.g. if previous operation was terminated) (thanks to Sergei
   Shilovsky).  Available only if 'syscalls' option is set;
 - added merge all option for name conflict resolution.  Same as "merge", but
   remembers the choice for future conflicts of directories (thanks to
   willemw12);
 - added skip all option for name conflict resolution (thanks to Miodrag
   Tokić (a.k.a. loonies));
 - changed "overwrite all" key from "a" to "O" for consistency (thanks to
   willemw12);
 - implemented creation, removal, copying, moving of files with system calls.
   Available only if 'syscalls' option is set;
 - rewrote trash content removal with system calls in background thread (thanks
   to lyuts and ckester).  It's also now visible in :jobs menu;
 - several improvements for :lstrash menu (thanks to filterfalse);
 - more reliable Ctrl-C detection.

Normal and visual modes:
 - added av normal mode shortcut that activates selection amending mode (thanks
   to ranousse, Michelle Bonk (a.k.a. unixtechie));
 - added/updated av/v/V visual mode keys to switch type of current visual mode;
 - added Ctrl-G key to visual selection amending mode, which switches kind of
   amending (append/remove/invert);
 - added ga and gA keys to visual mode (thanks to geo909);
 - separate visual selection marks ('< and '>), which allows to restore it via
   gv in both panes (thanks to filterfalse);
 - implement "(" and ")" keys for "perms" and "type" sorting keys (thanks to
   filterfalse);
 - skip nonexistent directories on Ctrl-O/Ctrl-I;
 - repeat search with last used search pattern on empty pattern of the search
   mode;
 - taught ga/gA commands to handle selection (thanks to geo909).

Command-line mode:
 - added i and I flags to :filter command to control filter case
   sensitivity (thanks to filterfalse);
 - added filter flags to output of :filter? command and formatted output as a
   table;
 - added ":highlight clear" to reset to builtin colors;
 - added =pattern special form of user-defined command that sets local filter to
   the given value (alike "/pattern" and "filter value") (thanks to
   filterfalse);
 - made :filter command consider trailing slash for symbolic links that point to
   directories (thanks to filterfalse);
 - allowed use of :filter syntax in user-defined filter commands (e.g.
   "command conf filter/.*\.cfg$/");
 - made +/- operands after semicolon in command-line range adjust base range end
   position rather than base cursor position as Vim does (thanks to
   filterfalse).

:set command and options:
 - added 'syscalls' boolean option.  Chooses external tools/system calls
   implementation.  {EXPERIMENTAL}, {WORK-IN-PROGRESS}, although no data loss so
   far.  The option will be eventually removed.  Mostly *nix-like systems are
   affected;
 - added 'cdpath' option (thanks to Bruce Hunsaker (a.k.a. hunsakerbn));
 - added 'tuioptions' option.  Controls padding of file lists in panels and
   visibility of side borders (thanks to Bruce Hunsaker (a.k.a. hunsakerbn) and
   Svyatoslav Mishyn (a.k.a. juef));
 - added 'fillchars' option.  Configures fill character for vertical
   borders (thanks to Svyatoslav Mishyn (a.k.a. juef));
 - extended 'slowfs' option format to allow path prefixes (in particular, it's
   useful for autofs) (thanks to Евгений Жаров (a.k.a. ezharov)).

Scripting:
 - added logical NOT unary operator ("!");
 - added executable() builtin function that checks whether executable exists at
   given path or in one of directories listed in $PATH;
 - added has() builtin function that checks whether particular property is
   enabled (two properties for now: "unix" and "win") (thanks to filterfalse);
 - made expand() builtin function expand environment variables (thanks to
   filterfalse).

Performance:
 - optimized speed of checking existence of a directory (important on displaying
   directory history);
 - automatically remove non-existent directories from directory history on
   :history command to speed up future operations (this clean up is very cheap
   on composing menu).

Completion:
 - added function name completion on command-line;
 - smart completion for paths.  Allows completion of quoted arguments (both
   ' and " types of quotes) and considers argument type context by performing
   escaping when needed.

Documentation:
 - added full command names to the manual page to ease searching them (thanks to
   y2kbugger);
 - documented how to use 256 colors in :highlight command (thanks to Michael
   Vetter (a.k.a. jubalh));
 - made it possible to hide Vifm's documentation from Vim when it's not run by
   Vifm's :help command (thanks to ranousse);
 - separated Vifm's vimdoc from plugin documentation.

TUI (Text User Interface):
 - added more human-friendly (xterm-like) names for 256 colors (thanks to
   Michael Vetter (a.k.a. jubalh));
 - added OtherLine highlight group for cursor of inactive pane (thanks to
   Svyatoslav Mishyn (a.k.a. juef));
 - more accurate scheduling of view updates.

Vim:
 - added file additional mail filetype plugin for Vim (thanks to Pavneet Arora).
   It allows one to pick attachments via Vifm on <localleader>a shortcut;
 - added file renaming filetype plugin for Vim (thanks to Factorial Prime).  It
   displays list of original file names in a vertical split;
 - provided additional repository for Vim
   plugin (https://github.com/vifm/vifm.vim);
 - make Vim plugin use cmd.exe as default shell on Windows (thanks to Jonathan
   Da Silva);
 - various minor syntax highlight improvements (wrapped lines, numbers,
   options).

Packaging:
 - added Vim plugin directory to share/vifm/vim on `make install` (thanks
   Svyatoslav Mishyn (a.k.a. juef));
 - removed ltmain.sh script, which is part of libtool that's not used
   anymore (thanks to Hendrik Jaeger (a.k.a. henk));
 - renamed configure.in to configure.ac (thanks to Hendrik Jaeger (a.k.a.
   henk));
 - "make clean" now removes "tags" files for Vim documentation generated
   during build (thanks to Hendrik Jaeger (a.k.a. henk)).

Major fixes:
 - fixed segmentation fault on running vifm with single argument if restored
   cursor is in the right pane (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - fixed segmentation fault during startup in a small terminal on OS X (thanks
   to Daniel Dettlaff (a.k.a. dmilith));
 - fixed segmentation fault on no view history and ":set autochpos" in
   vifmrc (thanks to ranousse);
 - fixed unexpectedly broken compilation on FreeBSD (thanks to Daniel
   Dettlaff (a.k.a. dmilith));
 - fixed :!! command, seems to be not working for a while;
 - fixed segmentation fault on Alt-. command in command-line mode (since 0.7.7).

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 11, 2014
================

vifm v0.7.8 beta testing has started
------------------------------------

New version adds a couple of major features, allows for some more customizations
and makes usual operations more convenient.  Finally, file system operations got
progress (it's disabled by default, new implementation needs to be tested in
different environments to become the primary one). Another frequently asked
feature is multiblock selection ("extended visual mode" if you wish). Vifm also
became friendlier to authors of colorschemes and those who'd like to customize
UI a bit more.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added multiblock "selection" (in quotes because it's also block deselection
   and inversion of selection for completeness);
 - added progress bar for file operations.  Available only if 'syscalls' option
   is set  (please be careful with that, check basic operations on temp files
   before using this with important data);
 - added names for 256 colors, highlight group for inactive cursor,
   ":highlight clear" command;
 - some improvements for cancelling operations;
 - better implementation of emptying trash directories;
 - new types of conflict resolution;
 - several extensions for filtering with user-defined commands;
 - more customizable UI (borders, padding);
 - smarter path completion;
 - separated Vifm and Vim plugin documentation;
 - a couple of extensions for Vim plugin (for mail and bulk file renaming).

Core:
 - added cancellation (handling of Ctrl-C) for FUSE mounting (but not
   unmounting);
 - added progress for long-running file system operations.  Available only if
   'syscalls' option is set;
 - added "[a]ppend the end" conflict resolution option (appends the rest of
   file, e.g. if previous operation was terminated) (thanks to Sergei
   Shilovsky).  Available only if 'syscalls' option is set;
 - added merge all option for name conflict resolution.  Same as "merge", but
   remembers the choice for future conflicts of directories (thanks to
   willemw12);
 - changed "overwrite all" key from "a" to "O" for consistency (thanks to
   willemw12);
 - implemented creation, removal, copying, moving of files with system calls.
   Available only if 'syscalls' option is set;
 - rewrote trash content removal with system calls in background thread (thanks
   to lyuts and ckester).  It's also now visible in :jobs menu;
 - several improvements for :lstrash menu (thanks to filterfalse);
 - more reliable Ctrl-C detection.

Normal and visual modes:
 - added av normal mode shortcut that activates selection amending mode (thanks
   to ranousse, Michelle Bonk (a.k.a. unixtechie));
 - added/updated av/v/V visual mode keys to switch type of current visual mode;
 - added Ctrl-G key to visual selection amending mode, which switches kind of
   amending (append/remove/invert);
 - separate visual selection marks ('< and '>), which allows to restore it via
   gv in both panes (thanks to filterfalse);
 - implement "(" and ")" keys for "perms" and "type" sorting keys (thanks to
   filterfalse);
 - skip nonexistent directories on Ctrl-O/Ctrl-I;
 - repeat search with last used search pattern on empty pattern of the search
   mode.

Command-line mode:
 - added i and I flags to :filter command to control filter case
   sensitivity (thanks to filterfalse);
 - added filter flags to output of :filter? command and formatted output as a
   table;
 - added ":highlight clear" to reset to builtin colors;
 - added =pattern special form of user-defined command that sets local filter to
   the given value (alike "/pattern" and "filter value") (thanks to
   filterfalse);
 - made :filter command consider trailing slash for symbolic links that point to
   directories (thanks to filterfalse);
 - allowed use of :filter syntax in user-defined filter commands (e.g.
   "command conf filter/.*\.cfg$/");
 - made +/- operands after semicolon in command-line range adjust base range end
   position rather than base cursor position as Vim does (thanks to
   filterfalse).

:set command and options:
 - added 'syscalls' boolean option.  Chooses external tools/system calls
   implementation.  {EXPERIMENTAL}, {WORK-IN-PROGRESS}, although no data loss so
   far.  The option will be eventually removed.  Mostly *nix-like systems are
   affected;
 - added 'cdpath' option (thanks to Bruce Hunsaker (a.k.a. hunsakerbn));
 - added 'tuioptions' option.  Controls padding of file lists in panels and
   visibility of side borders (thanks to Bruce Hunsaker (a.k.a. hunsakerbn) and
   Svyatoslav Mishyn (a.k.a. juef));
 - added 'fillchars' option.  Configures fill character for vertical
   borders (thanks to Svyatoslav Mishyn (a.k.a. juef));
 - extended 'slowfs' option format to allow path prefixes (in particular, it's
   useful for autofs) (thanks to Евгений Жаров (a.k.a. ezharov)).

Scripting:
 - added logical NOT unary operator ("!");
 - added executable() builtin function that checks whether executable exists at
   given path or in one of directories listed in $PATH;
 - added has() builtin function that checks whether particular property is
   enabled (two properties for now: "unix" and "win") (thanks to filterfalse);
 - made expand() builtin function expand environment variables (thanks to
   filterfalse).

Performance:
 - optimized speed of checking existence of a directory (important on displaying
   directory history);
 - automatically remove non-existent directories from directory history on
   :history command to speed up future operations (this clean up is very cheap
   on composing menu).

Completion:
 - added function name completion on command-line;
 - smart completion for paths.  Allows completion of quoted arguments (both
   ' and " types of quotes) and considers argument type context by performing
   escaping when needed.

Documentation:
 - added full command names to the manual page to ease searching them (thanks to
   y2kbugger);
 - documented how to use 256 colors in :highlight command (thanks to Michael
   Vetter (a.k.a. jubalh));
 - made it possible to hide Vifm's documentation from Vim when it's not run by
   Vifm's :help command (thanks to ranousse);
 - separated Vifm's vimdoc from plugin documentation.

TUI (Text User Interface):
 - added more human-friendly (xterm-like) names for 256 colors (thanks to
   Michael Vetter (a.k.a. jubalh));
 - added OtherLine highlight group for cursor of inactive pane (thanks to
   Svyatoslav Mishyn (a.k.a. juef)).

Vim:
 - added file additional mail filetype plugin for Vim (thanks to Pavneet Arora).
   It allows one to pick attachments via Vifm on <localleader>a shortcut;
 - added file renaming filetype plugin for Vim (thanks to Factorial Prime).  It
   displays list of original file names in a vertical split;
 - provided additional repository for Vim
   plugin (https://github.com/vifm/vifm.vim);
 - make Vim plugin use cmd.exe as default shell on Windows (thanks to Jonathan
   Da Silva);
 - various minor syntax highlight improvements (wrapped lines, numbers,
   options).

Packaging:
 - added Vim plugin directory to share/vifm/vim on `make install` (thanks
   Svyatoslav Mishyn (a.k.a. juef));
 - removed ltmain.sh script, which is part of libtool that's not used
   anymore (thanks to Hendrik Jaeger (a.k.a. henk));
 - renamed configure.in to configure.ac (thanks to Hendrik Jaeger (a.k.a.
   henk)).

Major fixes:
 - fixed segmentation fault on running vifm with single argument if restored
   cursor is in the right pane (thanks to Svyatoslav Mishyn, a.k.a. juef);
 - fixed segmentation fault during startup in a small terminal on OS X (thanks
   to Daniel Dettlaff (a.k.a. dmilith));
 - fixed segmentation fault on no view history and ":set autochpos" in
   vifmrc (thanks to ranousse);
 - fixed unexpectedly broken compilation on FreeBSD (thanks to Daniel
   Dettlaff (a.k.a. dmilith));
 - fixed :!! command, seems to be not working for a while;
 - fixed segmentation fault on Alt-. command in command-line mode (since 0.7.7).

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

May 16, 2014
============

vifm v0.7.7 release
-------------------

New version provides more customizations for several existing features
and more convenient interaction with them.

Thanks to all contributors and especially those who tried beta version.

Main changes:
 - vifm has had support for navigation by file number for years, finally it
   can display those numbers;
 - support of trash directories got better with ability to have trash per
   mount point and new trash menus;
 - command-line mode now has Ctrl-X prefixed keys that insert parts of
   filenames and filters (kind of Ctrl-R in Vim);
 - bookmarks are now timestamped for more predictable management (mainly
   deletion and overwriting);
 - for security reasons remote commands are now disabled at configuration
   stage by default;
 - most of long-running operations (:find, :copy, etc.) now can be cancelled
   by pressing Ctrl-C;
 - menus with list of files got unified "gf" (for navigation) and "e" (for
   editing) shortcuts;
 - several fixes and %n macro for better integration with terminal
   multiplexers;
 - ability to sort list view with disabled grouping of directories;
 - expression parser was extended in a couple of ways;
 - added three more sample color schemes.

Configuration:
 - added --enable-remote-cmd switch to configure script disabled by default, as
   current implementation of the feature is insecure.

Menus and dialogs:
 - added "gf" (go to file) and "e" (open in editor) keys to :grep, :find,
   :locate and user menu with navigation (%M macro).

Macros:
 - added %A macro to 'findprg' and 'grepprg' options, which is expanded to
   unmodified list of arguments (thanks to Robert Sarkozi);
 - added %n macro which suppresses using of terminal multiplexer in a command
   (user-defined :command, :!command or :file[x]type action).

Key bindings:
 - added Ctrl-W z key to normal and view modes, which closes preview pane or
   view modes (thanks to filterfalse).

:set command and options:
 - added "type" key to the 'sort' option to allow controlling grouping of
   directories (thanks to Daniel R., a.k.a. reicheltd);
 - added 'number', 'relativenumber' and 'numberwidth' options to control
   displaying of file numbers (thanks to filterfalse and greye);
 - extended 'trashdir' to handle list of path, some of which can specify
   location of trash directories local to each mount point (thanks to
   smpolymen and Sergei Shilovsky).

Command-line mode related changes:
 - added Ctrl-X a/c/d/e/m/r/t/= keys to command-line mode that insert parts
   of file names and values of filters (see related documentation) (thanks to
   ranousse and filterfalse);
 - added :lstrash command-line command, which displays list of files in trash
   (thanks to Sergei Shilovsky);
 - added :trashes command-line command, which lists all non-empty trash
   directories (thanks to Sergei Shilovsky);
 - treat semicolon (";") as a valid range separator for command-line commands;
 - allow empty ranges for command without name (as in :4).

Angle bracket notation:
 - added <nop> angle bracket notation (thanks to filterfalse).

Scripting:
 - added &option syntax for expressions (returns value of an option);
 - extended parser to support integer number constants and unary minus and
   plus operators;
 - extended parser to support <, <=, >= and > comparison operators for strings
   and integers.

Performance:
 - optimized file name comparison on sorting.

Documentation:
 - documented special bookmarks;
 - more verbose documentation on :filextype and its usage.

Color scheme related changes:
 - added sample light color scheme (provided by Daniel R., a.k.a. reicheltd);
 - added sample dark solarized color scheme (provided by Stéphane, a.k.a.
   istib);
 - added zenburn color scheme (provided by Svyatoslav Mishyn, a.k.a. juef).

TUI (Text User Interface):
 - handle backspace in preview window as terminal emulators do (thanks to Svenn
   Are Bjerkem, a.k.a. svenn).

Only on Windows:
 - added handling of paths with backward slashes for :find/:locate/:grep/%M
   menus on Windows (thanks to Robert Sarkozi);
 - fixed extending filetypes that are missing macro on Windows when cmd.exe
   shell is used (thanks to Daniel Polanco, a.k.a. dlpolanco);
 - fixed work with filenames contining special symbols on Windows with cmd.exe
   shell (thanks to Daniel Polanco, a.k.a. dlpolanco);
 - fixed testing whether application uses GUI on Windows when path contains
   spaces;
 - fixed extra escaping on prompt filename completion on Windows.

Other changes:
 - added cancellation handling for file system operations and invocations of
   external applications (works best on *nix systems) (thanks to Milan Svoboda,
   a.k.a. tex);
 - made bookmarks merging smarter by storing timestamps.  Removing bookmarks
   now works as expected.  Bookmarks overwriting by another instance shouldn't
   happen anymore.  (Thanks to Michael Maddern, a.k.a. madders.)

Major fixes:
 - fixed file descriptor leak on finishing background tasks (thanks to
   anonymous from linux.org.ru);
 - fixed several bugs that led to segmentation fault;
 - fixed copying/moving files after picking "Overwrite all" conflict resolution
   option (thanks to Stas Malavin).

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

April 30, 2014
==============

vifm v0.7.7 beta testing has started
------------------------------------

New version provides more customizations for several existing features
and more convenient interaction with them.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - vifm has had support for navigation by file number for years, finally it
   can display those numbers;
 - support of trash directories got better with ability to have trash per
   mount point and new trash menus;
 - command-line mode now has Ctrl-X prefixed keys that insert parts of
   filenames and filters (kind of Ctrl-R in Vim);
 - bookmarks are now timestamped for more predictable management (mainly
   deletion and overwriting);
 - for security reasons remote commands are now disabled at configuration
   stage by default;
 - most of long-running operations (:find, :copy, etc.) now can be cancelled
   by pressing Ctrl-C;
 - menus with list of files got unified "gf" (for navigation) and "e" (for
   editing) shortcuts;
 - several fixes and %n macro for better integration with terminal
   multiplexers;
 - ability to sort list view with disabled grouping of directories;
 - expression parser was extended in a couple of ways;
 - added three more sample color schemes.

Configuration:
 - added --enable-remote-cmd switch to configure script disabled by default, as
   current implementation of the feature is insecure.

Menus and dialogs:
 - added "gf" (go to file) and "e" (open in editor) keys to :grep, :find,
   :locate and user menu with navigation (%M macro).

Macros:
 - added %A macro to 'findprg' and 'grepprg' options, which is expanded to
   unmodified list of arguments (thanks to Robert Sarkozi);
 - added %n macro which suppresses using of terminal multiplexer in a command
   (user-defined :command, :!command or :file[x]type action).

Key bindings:
 - added Ctrl-W z key to normal and view modes, which closes preview pane or
   view modes (thanks to filterfalse).

:set command and options:
 - added "type" key to the 'sort' option to allow controlling grouping of
   directories (thanks to Daniel R., a.k.a. reicheltd);
 - added 'number', 'relativenumber' and 'numberwidth' options to control
   displaying of file numbers (thanks to filterfalse and greye);
 - extended 'trashdir' to handle list of path, some of which can specify
   location of trash directories local to each mount point (thanks to
   smpolymen and Sergei Shilovsky).

Command-line mode related changes:
 - added Ctrl-X a/c/d/e/m/r/t/= keys to command-line mode that insert parts
   of file names and values of filters (see related documentation) (thanks to
   ranousse and filterfalse);
 - added :lstrash command-line command, which displays list of files in trash
   (thanks to Sergei Shilovsky);
 - added :trashes command-line command, which lists all non-empty trash
   directories (thanks to Sergei Shilovsky);
 - treat semicolon (";") as a valid range separator for command-line commands;
 - allow empty ranges for command without name (as in :4).

Angle bracket notation:
 - added <nop> angle bracket notation (thanks to filterfalse).

Scripting:
 - added &option syntax for expressions (returns value of an option);
 - extended parser to support integer number constants and unary minus and
   plus operators;
 - extended parser to support <, <=, >= and > comparison operators for strings
   and integers.

Performance:
 - optimized file name comparison on sorting.

Documentation:
 - documented special bookmarks.

Color scheme related changes:
 - added sample light color scheme (provided by Daniel R., a.k.a. reicheltd);
 - added sample dark solarized color scheme (provided by Stéphane, a.k.a.
   istib);
 - added zenburn color scheme (provided by Svyatoslav Mishyn, a.k.a. juef).

TUI (Text User Interface):
 - handle backspace in preview window as terminal emulators do (thanks to Svenn
   Are Bjerkem, a.k.a. svenn).

Only on Windows:
 - added handling of paths with backward slashes for :find/:locate/:grep/%M
   menus on Windows (thanks to Robert Sarkozi);
 - fixed extending filetypes that are missing macro on Windows when cmd.exe
   shell is used (thanks to Daniel Polanco, a.k.a. dlpolanco);
 - fixed work with filenames contining special symbols on Windows with cmd.exe
   shell (thanks to Daniel Polanco, a.k.a. dlpolanco);
 - fixed testing whether application uses GUI on Windows when path contains
   spaces;
 - fixed extra escaping on prompt filename completion on Windows.

Other changes:
 - added cancellation handling for file system operations and invocations of
   external applications (works best on *nix systems) (thanks to Milan Svoboda,
   a.k.a. tex);
 - made bookmarks merging smarter by storing timestamps.  Removing bookmarks
   now works as expected.  Bookmarks overwriting by another instance shouldn't
   happen anymore.  (Thanks to Michael Maddern, a.k.a. madders.)

Major fixes:
 - fixed file descriptor leak on finishing background tasks (thanks to
   anonymous from linux.org.ru);
 - fixed several bugs that led to segmentation fault.

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 31, 2013
================

vifm v0.7.6 release
-------------------

New minor version brings better integration with environment and external tools
as well as enhances file filtering capabilities in several ways.  Apart from
that, old features were tweaked and some build issues and bugs were resolved.
New Win32 and Win64 single-executable (no DLLs) packages appear first time with
this release.

This time beta stage was quite fruitful.  Thanks to all who installed and tried
beta versions, and special thanks to filterfalse.

Main changes:
 - added interactive local filter;
 - added external editing of command-line content with 'vicmd';
 - added integration with tmux;
 - added options to configure external commands for :apropos, :find, :grep
   and :locate commands;
 - added desktop entry file (\*nix only) and updated application icon;
 - fixed build for some combinations of OS/environments (OS X, 32/64-bit
   cygwin, Windows).

Notice: if you mapped q key to something, new q:, q/, q? and q= keys won't be
available; suggested solution is to change the mapping to qq.

More detailed list of changes.

Performance:
 - increased performance of (re)loading content for view mode (thanks to Robert
   Sarkozi).

Key bindings:
 - process [count] passed to gUU, gU<selector>, gUgU, gu<selector>, guu and gugu
   commands;
 - made all Ctrl-W x keys available in view mode (thanks to filterfalse);
 - changed meaning of the R key in view mode from redrawing view to reloading it
   preserving scroll position (thanks to Robert Sarkozi).

Normal and visual modes related changes:
 - added q:, q/, q? and q= keys (q= is defined for normal mode only) to prompt
   for command-line in external editor;
 - added "=" normal mode key, which activates file name filtering.

Command-line mode related changes:
 - added "=" and "filter" values for :history command, to show history of local
   filter;
 - added Ctrl-G key to start editing in external editor (for editing command,
   search pattern and file renames);
 - added optional argument for :invert command to control more kinds of
   inversion (thanks to filterfalse);
 - better order of command validity checks;
 - show better error message on unmatched quotes in command arguments;
 - store cancelled prompt input in prompt history;
 - check destination path existence before changing directory to it on :sync
   command;
 - use last search pattern as filename filter when :filter command gets an empty
   argument (:filter//, :filter"", :filter'') (thanks to filterfalse);
 - match only filename against pattern in :fileviewer instead of full path.

:set command and options:
 - added 'aproposprg', 'findprg', 'grepprg' and 'locateprg' options to specify
   external commands format;
 - added "fhistory" to 'vifminfo', which controls storing of local filter
   history;
 - added "f" flag to 'cpoptions' option.  It controls initial state of filename
   filter inversion for :filter[!] {regex} command (thanks to filterfalse);
 - from now on not absolute paths for the 'fusehome' options are rejected;
 - expand environment variables in values of the 'fusehome' and 'trashdir'
   options (thanks to filterfalse);
 - more adequate reaction on setting 'trashdir' option to wrong value;
 - do not reset selection on search when 'hlsearch' is reset (thanks to
   filterfalse).

File filtering:
 - distinguish files and directories in filename filter by appending a slash to
   names of directories;
 - separated file name filter into manual and automatic, mainly for convenience.

TUI (Text User Interface):
 - preserve current cursor position on view resorting;
 - force split-view when two paths are specified on command-line (thanks to
   filterfalse);
 - consider 'classify' option on displaying file name in the status bar (thanks
   to Thomas Nemeth).

For Vim:
 - added syntax and filetype plugins for command-line editing buffers (thanks to
   filterfalse);
 - updated syntax file to highlight more elements (thanks to filterfalse).

Only on Windows:
 - filter files in case insensitive way on Windows;
 - don't wait finishing of GUI applications on Windows (thanks to Robert
   Sarkozi).

Other changes:
 - added integration with tmux (thanks to Seth VanHeulen, a.k.a. svanheulen);
 - added desktop entry file (thanks to Richard Benson);
 - added merge option for name conflict resolution, which allows for merging two
   directories overwriting files with matching names;
 - updated application icon (thanks to Richard Benson for making it);
 - don't overwrite directory stack stored in vifminfo on exit unless it was
   changed in current session;
 - improved documentation on several subjects;
 - display error after sourcing file with unmatched :if/:endif
   statements (thanks to filterfalse).

Major fixes:
 - fixed configuration when wcscasecmp(), wcsncasecmp() or set\_escdelay()
   functions is not available (thanks to Russell Urquhart);
 - fixed reserving of about 1 GiB piece of memory on 256-color terminals (sorry
   about that);
 - fixed running of executable with symbols that require escaping in their
   name (\*nix only).  Strangely enough, it wasn't noticed before;
 - fixed terminal hang after executing several external commands in a
   row (thanks to filterfalse);
 - fixed search of the first element in file list when displaying of parent
   directory is disabled;
 - fixed fails on running executables when 'fastrun' option is on (thanks to
   MadMaverick9).

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 24, 2013
================

vifm v0.7.6 beta testing continued
----------------------------------

First beta version revealed some issues with new functionality and
degradation of previously existing features.  That's why second beta
version is released.  Included fixes primary target Windows platform,
but some of them are related to \*nix systems as well.

Thanks to filterfalse and Robert Sarkozi for their help in finding and
solving those issues.

Additionally, Win64 build is available now.

See change log for quite short list of fixes and updates.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 17, 2013
================

vifm v0.7.6 beta testing has started
------------------------------------

New minor version brings better integration with environment and external tools
as well as enhances file filtering capabilities in several ways.  Apart from
that, old features were tweaked and some build issues and bugs were resolved.
New Win32 single-executable (no DLLs) package appears first time with this
release, Win64 package might also be available a bit later.

The beta stage will last about two weeks.  In case any serious bugs are found
during this period, another beta version might be released.

Main changes:
 - added interactive local filter;
 - added external editing of command-line content with 'vicmd';
 - added integration with tmux;
 - added options to configure external commands for :apropos, :find, :grep
   and :locate commands;
 - added desktop entry file (\*nix only) and updated application icon;
 - fixed build on some versions of OS X.

Notice: if you mapped q key to something, new q:, q/, q? and q= keys won't be
available; suggested solution is to change the mapping to qq.

More detailed list of changes.

Performance:
 - increased performance of (re)loading content for view mode (thanks to Robert
   Sarkozi).

Key bindings:
 - process [count] passed to gUU, gU<selector>, gUgU, gu<selector>, guu and gugu
   commands;
 - made all Ctrl-W x keys available in view mode (thanks to filterfalse);
 - changed meaning of the R key in view mode from redrawing view to reloading it
   preserving scroll position (thanks to Robert Sarkozi).

Normal and visual modes related changes:
 - added q:, q/, q? and q= keys (q= is defined for normal mode only) to prompt
   for command-line in external editor;
 - added "=" normal mode key, which activates file name filtering.

Command-line mode related changes:
 - added "=" and "filter" values for :history command, to show history of local
   filter;
 - added Ctrl-G key to start editing in external editor (for editing command,
   search pattern and file renames);
 - added optional argument for :invert command to control more kinds of
   inversion (thanks to filterfalse);
 - better order of command validity checks;
 - show better error message on unmatched quotes in command arguments;
 - store cancelled prompt input in prompt history;
 - check destination path existence before changing directory to it on :sync
   command;
 - use last search pattern as filename filter when :filter command gets an empty
   argument (:filter//, :filter"", :filter'') (thanks to filterfalse);
 - match only filename against pattern in :fileviewer instead of full path.

:set command and options:
 - added 'aproposprg', 'findprg', 'grepprg' and 'locateprg' options to specify
   external commands format;
 - added "fhistory" to 'vifminfo', which controls storing of local filter
   history;
 - added "f" flag to 'cpoptions' option.  It controls initial state of filename
   filter inversion for :filter[!] {regex} command (thanks to filterfalse);
 - from now on not absolute paths for the 'fusehome' options are rejected;
 - expand environment variables in values of the 'fusehome' and 'trashdir'
   options (thanks to filterfalse);
 - more adequate reaction on setting 'trashdir' option to wrong value;
 - do not reset selection on search when 'hlsearch' is reset (thanks to
   filterfalse).

File filtering:
 - distinguish files and directories in filename filter by appending a slash to
   names of directories;
 - separated file name filter into manual and automatic, mainly for convenience.

TUI (Text User Interface):
 - preserve current cursor position on view resorting;
 - force split-view when two paths are specified on command-line (thanks to
   filterfalse);
 - consider 'classify' option on displaying file name in the status bar (thanks
   to Thomas Nemeth).

For Vim:
 - added syntax and filetype plugins for command-line editing buffers (thanks to
   filterfalse);
 - updated syntax file to highlight more elements (thanks to filterfalse).

Only on Windows:
 - filter files in case insensitive way on Windows;
 - don't wait finishing of GUI applications on Windows (thanks to Robert
   Sarkozi).

Other changes:
 - added integration with tmux (thanks to Seth VanHeulen, a.k.a. svanheulen);
 - added desktop entry file (thanks to Richard Benson);
 - added merge option for name conflict resolution, which allows for merging two
   directories overwriting files with matching names;
 - updated application icon (thanks to Richard Benson for making it);
 - don't overwrite directory stack stored in vifminfo on exit unless it was
   changed in current session;
 - improved documentation on several subjects.

Major fixes:
 - fixed configuration when wcscasecmp(), wcsncasecmp() or set\_escdelay()
   functions is not available (thanks to Russell Urquhart);
 - fixed reserving of about 1 GiB piece of memory on 256-color terminals (sorry
   about that);
 - fixed running of executable with symbols that require escaping in their
   name (\*nix only).  Strangely enough, it wasn't noticed before;
 - fixed terminal hang after executing several external commands in a
   row (thanks to filterfalse);
 - fixed search of the first element in file list when displaying of parent
   directory is disabled;
 - fixed fails on running executables when 'fastrun' option is on (thanks to
   MadMaverick9).

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

May 10, 2013
============

vifm v0.7.5 release
-------------------

New version adds one major feature (parsing of escape codes), set of
improvements for existing ones and fixes for bugs.  There are also some changes
in build system and new extra files bundled with vifm.

Main changes:
 - removed using of libtool in build process on *nix-like systems;
 - added parsing of escape codes for the preview pane and less-like view;
 - added expand() builtin function;
 - added Gentoo ebuild and sample color schemes;
 - added macros that are expanded to register's content;
 - added dynamic loading of xlib;
 - added 'shortmess' option;
 - added pausing of shell on external commands fails on Windows;
 - fixed build issues on FreeBSD and OS X systems;
 - fixed for redrawing and searching in less-like mode;
 - fixed issues with :help command on Windows.

More detailed list of changes.

Configuration:
 - added --without/[with]-dyn-X11 flag to the configure script to control
   static/dynamic linking against libX11 library.  Thanks to Hendrik Jaeger
   (a.k.a. henk) for the idea;
 - don't use libtool in build process on *nix platforms (thanks to Merovius).

Documentation:
 - slightly updated plugin related documentation.

Macros:
 - added macros that are expanded to register's content (thanks to Florian
   Baumann, a.k.a. derflob).

:set command and options:
 - added 'shortmess' option and its first flag: "T" to shorten long status bar
   messages (thanks to ranousse);
 - added "perms" sorting key on *nix (proposed by Daniel Dettlaff, a.k.a.
   dmilith);
 - added new type of option (charset) and used it for 'cpoptions' and
   'shortmess' options;
 - made 'slowfs' option actually work on OS X (thanks to Daniel Dettlaff,
   a.k.a. dmilith).

Color scheme related changes:
 - added sample color schemes (proposed by Daniel Dettlaff, a.k.a. dmilith);
 - don't fallback to default colors on try to switch to a colorscheme, which is
   not supported by terminal.

TUI (Text User Interface):
 - added parsing of escape codes in the preview pane;
 - added parsing of escape codes in explore (less-like) mode;
 - don't redraw file list for explore window on resize;
 - less updates for window in explore mode on resize.

Menus and dialogs:
 - changed the way title of the permissions dialog is composed.

Command-line mode related changes:
 - allowed exclamation mark for the :sync command (to force synchronization of
   cursor position when used without arguments);
 - don't store last command-line command for the dot normal mode command
   between sessions.  Also it doesn't depend on command-line history anymore
   and can be used with completely disabled history;
 - made :execute process its arguments just like :echo command (thanks to
   Daniel Dettlaff, a.k.a. dmilith, which made me discover old behaviour);
 - don't accept arguments to the :help command when 'vimhelp' option is off.

Only on Windows:
 - pause on failed execution of a help command.  Thanks to filterfalse;
 - pause when execution of shell command fails (e.g. on
   `:!foobar-does-not-exist`).

Other changes:
 - added Gentoo ebuild.  Thanks to Oleg Gordienko (a.k.a. gordio);
 - added expand() builtin function to expand macros (thanks to Sebastian
   Cyprych for the use case);
 - less-like mode now highlights multiple matches in a line;
 - less-like mode is now updated immediately when one changes 'wrap' option;
 - save dot files filter state in vifminfo (thanks to Daniel Dettlaff, a.k.a.
   dmilith).

Major fixes:
 - building on FreeBSD and OS X (thanks to Daniel R., a.k.a. r1chelt, and
   Daniel Dettlaff, a.k.a. dmilith);
 - various changes in configuration using autotools;
 - removed using of libtool in build process on *nix-like systems;
 - vifminfo file update on Windows (broken in 0.7.4b);
 - various issues with displaying wide characters (e.g. Chinese);
 - ctrl-W H/J/K/L shortcuts and less-like view;
 - issues with calling Vim on :help command.  Thanks to filterfalse.

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

April 22, 2013
==============

vifm v0.7.5 beta testing has started
------------------------------------

New version adds one major feature (parsing of escape codes), set of
improvements for existing ones and fixes for bugs.  There are also some
changes in build system and new extra files bundled with vifm.

The beta stage will last about two weeks.  In case any bugs are found
during this period, another beta version will be released.

Main changes:
 - removed using of libtool in build process on *nix-like systems;
 - added parsing of escape codes for the preview pane and less-like view;
 - added expand() builtin function;
 - added Gentoo ebuild and sample color schemes;
 - added macros that are expanded to register's content;
 - added dynamic loading of xlib;
 - added 'shortmess' option;
 - fixed build issues on FreeBSD and OS X systems;
 - fixes for redrawing and searching in less-like mode.

More detailed list of changes.

Configuration:
 - added --without/[with]-dyn-X11 flag to the configure script to control
   static/dynamic linking against libX11 library.  Thanks to Hendrik Jaeger
   (a.k.a. henk) for the idea;
 - don't use libtool in build process on *nix platforms (thanks to Merovius).

Documentation:
 - slightly updated plugin related documentation.

Macros:
 - added macros that are expanded to register's content (thanks to Florian
   Baumann, a.k.a. derflob).

:set command and options:
 - added 'shortmess' option and its first flag: "T" to shorten long status bar
   messages (thanks to ranousse);
 - added "perms" sorting key on *nix (proposed by Daniel Dettlaff, a.k.a.
   dmilith);
 - added new type of option (charset) and used it for 'cpoptions' and
   'shortmess' options;
 - made 'slowfs' option actually work on OS X (thanks to Daniel Dettlaff,
   a.k.a. dmilith).

Color scheme related changes:
 - added sample color schemes (proposed by Daniel Dettlaff, a.k.a. dmilith);
 - don't fallback to default colors on try to switch to a colorscheme, which
   is not supported by terminal.

TUI (Text User Interface):
 - added parsing of escape codes in the preview pane;
 - added parsing of escape codes in explore (less-like) mode;
 - don't redraw file list for explore window on resize;
 - less updates for window in explore mode on resize.

Menus and dialogs:
 - changed the way title of the permissions dialog is composed.

Command-line mode related changes:
 - allowed exclamation mark for the :sync command (to force synchronization
   of cursor position when used without arguments);
 - don't store last command-line command for the dot normal mode command
   between sessions.  Also it doesn't depend on command-line history anymore
   and can be used with completely disabled history;
 - made :execute process its arguments just like :echo command (thanks to
   Daniel Dettlaff, a.k.a. dmilith, which made me discover old behaviour).

Other changes:
 - added Gentoo ebuild.  Thanks to Oleg Gordienko (a.k.a. gordio);
 - added expand() builtin function to expand macros (thanks to Sebastian
   Cyprych for the use case);
 - less-like mode now highlights multiple matches in a line;
 - less-like mode is now updated immediately when one changes 'wrap' option;
 - save dot files filter state in vifminfo (thanks to Daniel Dettlaff, a.k.a.
   dmilith).

Major fixes:
 - building on FreeBSD and OS X (thanks to Daniel R., a.k.a. r1chelt, and
   Daniel Dettlaff, a.k.a. dmilith);
 - various changes in configuration using autotools;
 - removed using of libtool in build process on *nix-like systems;
 - vifminfo file update on Windows (broken in 0.7.4b);
 - various issues with displaying wide characters (e.g. Chinese);
 - ctrl-W H/J/K/L shortcuts and less-like view.

See change log for full list of changes and by whom they were suggested.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

January 21, 2013
================

vifm v0.7.4b release
--------------------

This version is a minor bugfix release.  It doesn't contain any new
features.  The release fixes more than 17 bugs found since version
0.7.4a.

Two weeks since beta version was published have passed.  Since no bugs
were reported, the beta version is now released as 0.7.4b without
any changes except version number.

Fixes in this version are related to the following subjects:
 - interaction with the screen tool (thanks to Jing Liu);
 - working with registers (old, but unreported bugs);
 - rights elevation and dot directories on Windows;
 - processing of vifminfo file (thanks to Christoph, a.k.a informationen);
 - handling of colorscheme files (thanks to Charles Kauffman);
 - displaying of CJK characters (thanks to lcj);
 - 'classify' option (thanks to Thomas Nemeth).

See change log for full list of fixes.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

January 7, 2013
===============

vifm v0.7.4b beta testing has started
-------------------------------------

This version is a minor bugfix release.  It doesn't contain any new
features.  The release fixes more than 17 bugs found since version
0.7.4a.

Because of promise not to release anything without beta-testing,
even this bugfix release has a beta stage, which should last about
two weeks. In case some bugs will be found, a second beta will be
released in a week.

Fixes are related to the following subjects:
 - interaction with the screen tool (thanks to Jing Liu);
 - working with registers (old, but unreported bugs);
 - rights elevation and dot directories on Windows;
 - processing of vifminfo file (thanks to Christoph, a.k.a informationen);
 - handling of colorscheme files (thanks to Charles Kauffman);
 - displaying of CJK characters (thanks to lcj);
 - 'classify' option (thanks to Thomas Nemeth).

See change log for full list of fixes.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 22, 2012
================

vifm v0.7.4a
------------

0.7.4 package contains configuration files of autotools of different
versions.  As a result it's not always possible to build vifm 0.7.4 by
running `./configure && make`.  The author is sorry about wasted time
of users spent on building vifm with partially broken build system.

Anyway this mistake has also a good point.  0.7.4a fixes several bugs,
some of which are related to new features.

See change log for full list of fixes.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

October 18, 2012
================

vifm v0.7.4
-----------

0.7.4 is a minor release, which improves existing features as well as adds
some new ones.

There are two main directions in which improvements were made.  One of them
is TUI, which now has support of multiple columns and ls-like view as well as
customizable file name decoration (prefix and suffix).  The second one is
connected with command interpreter, which now supports builtin functions,
conditional operators and conditional execution of commands
(using if-else-endif statements).  Additionally, vifm's memory footprint was
made smaller and running of programs associated with files made smarter
(won't stop until existing program is found).

Main changes:
 - new multicolumn view;
 - new ls-like view (see 'lsview' option) and related keys for it;
 - prefixes and suffixes of files of different types are configurable now;
 - smarter handling of file associations (now vifm will try to find existing
   program);
 - some basic means to do scripting (if-else-endif statements, builtin
   functions, comparison operators);
 - reduced history memory consumption;
 - better configure script, which now checks more stuff (and does it in a
   more accurate way) needed to build vifm.

More detailed list of changes.

Configuration:
 - removed compile-time compatibility mode (the compatibility-mode switch),
   now "f" flag in 'cpoptions' does the same;
 - added --without/[with]-X11 configure script option;
 - configure script now checks much more then before;
 - better make files (thanks to Hendrik Jaeger).

Only on Windows:
 - replaced gl normal mode mapping for Windows with gr because of conflict
   (with 'lsview');
 - allow paths in :file[x]type command that contain spaces to be doublequoted
   on Windows.

Normal and visual modes related changes:
 - added Ctrl-W H/J/K/L normal mode keys;
 - added gh, gj, gk and gl keys for normal and visual modes;
 - added 0, ^ and $ keys for normal and visual modes, which also work as
   selectors in normal mode.

Command-line mode related changes:
 - added Ctrl-T handling in command line to swap characters;
 - added Meta-. handling in command line to paste last parts of previous
   commands;
 - added :echo command;
 - added :if, :else and :endif commands;
 - added support for `==` and `!=` operators;
 - added :normal command;
 - added mapping commands for view and menu modes;
 - changed relative path base for :split and :vsplit commands;
 - expand macros for user defined commands.

:set command and options:
 - added 'viewcolumns' local option to control view columns;
 - added 'lsview' option to control ls-like view look;
 - added 'dotdirs' option to control visibility of "../" directory;
 - added 'classify' option to set prefixes and suffixes for different file
   types;
 - added %E 'statusline' option macro, which means size of all selected files
   or current file, if no files are selected;
 - added "t" flag to 'cpoptions' option (replaces compile-time compatibility
   mode).

Completion:
 - added completion for :set option= even for options without variants;
 - complete only directory names for :split and :vsplit commands;
 - escape pipe character during :file completion;
 - complete :set for short and full option names like Vim does (e.g. 'so'
   should be expanded to 'sort', not only 'scrolloff').

TUI (Terminal User Interface):
 - added status bar messages for :apropos, :find and :locate commands;
 - flicker less on :restart command;
 - don't show Ctrl-C part in information message boxes where it doesn't make
   sense;
 - reduce delay between terminal resize and TUI redrawing;
 - fixed background bold (light) colors in linux native console.

Color scheme related changes:
 - added light versions of color names.

Key bindings:
 - don't pause on '0' after Ctrl-W (count cannot start with zero);
 - multiply counts in front and in the middle of commands with Ctrl-W (as Vim
   does);
 - multiply counts in front of command and its selector (as Vim does).

Other changes:
 - added support for builtin functions and filetype() as the first one;
 - check current view of other pane on leaving FUSE mount directory an don't
   unmount if that file system is still in use;
 - try the rest of the programs for an association when the default one isn't
   found;
 - reduced memory consumption of view histories.

And fixes of bugs and memory leaks.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

June 23, 2012
=============

vifm v0.7.3a
------------

It happens some bugs are discovered just after making a new release.  And it
happened with vifm 0.7.3, which was tested, but apparently not enough.  So
0.7.3a is a bugfix release, which contains fixes for one serious bug and
several small ones as well as adds some more information to the documentation
and very small enhancements.

If you would like to be notified about future releases of vifm or some
important news related to vifm by email, consider subscribing to recently
created vifm-announce@lists.sourceforge.net read-only mailing list.  You can
do this by following this link.

Though this is a bugfix release it has some changes since v0.7.3 that should
be mentioned:

Completion:
 - better completion for :colorscheme command.

Documentation:
 - added a section about color schemes to the documentation;
 - documented that %m, %M, %s, %S and %i have bigger priority than &;
 - documented that %m, %M, %s, %S and %i are mutually exclusive;
 - documented treating of whitespace around option names in :set command.

:set command and options:
 - allowed whitespace after option name in :set command;
 - added checks for correct value of 'tabstop' and 'timeoutlen' options;
 - reset 'columns' and 'lines' options to real number of columns;
 - reset value of 'scrolloff' option to zero on attempt to assign a negative
   value to it;
 - faster execution of `:set sort=foo sortorder sortnumbers` in vifmrc.

TUI (Terminal User Interface):
 - faster redrawing of status bar with "-- VISUAL --" message after "Press
   Enter" message.

Command-line mode related changes:
 - expand tilde in the second argument of :colorscheme command;
 - forbid relative paths in :colorscheme command until vifm is completely
   loaded;
 - pass range given to alias to an aliased command.

Performance:
 - faster Ctrl-W x, Ctrl-W o, Ctrl-W s, Ctrl-W v, Ctrl-W =, Ctrl-W <,
   Ctrl-W >, Ctrl-W -, Ctrl-W +, Ctrl-W |, Ctrl-W _;
 - faster redraw on terminal resizing;
 - made file filtering using regular expressions work faster (matters when
   directory contains several thousands files);
 - draw quickview on startup only once.

Normal and visual modes related changes:
 - show correct number of selected files in visual mode after n and N keys.

And bug fixes.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

June 3, 2012
============

vifm v0.7.3 release
-------------------

If you would like to be notified about future releases of vifm or some
important news related to vifm by email, consider subscribing to recently
created vifm-announce@lists.sourceforge.net read-only mailing list.  You can
do this by following this link.

Changes since v0.7.2 in general:
 - removed support of moving items in the :file menu;
 - added description of :file programs;
 - improved messages in the TUI as well as it's redrawing in various
   scenarios;
 - changed behaviour of Enter key on a selected directories;
 - better work with PATH environment variable.

Changes since v0.7.2 in details:

Completion:
 - added completion for :copy, :clone, :move, :alink, :rlink and :rename
   commands;
 - added completion for :touch and :mkdir commands;
 - added completion for :split and :vsplit commands.

TUI (Terminal User Interface):
 - added Ctrl-L handling in file info (Ctrl-G) mode;
 - less blinking of the screen in various scenarios;
 - replace home directory with the tilde in terminal title;
 - corrected status bar messages about failed search;
 - better handling of multiline messages in status bar.

Normal and visual modes related changes:
 - leave leading zeros on Ctrl-A/X commands;
 - added "Y" key to visual mode as an alias for "yy";
 - open selected directories with l or Enter keys.

Configuration:
 - added --enable-desktop-files (enabled by default) configure option.

Only on Windows:
 - allow bookmarking of host names on Windows (e.g. //ZX-SPECTRUM);
 - show host's root in history menu (e.g. //ZX_SPECTRUM);
 - made :fileviewer command work.

Macros:
 - added macros expansion for :touch and :mkdir commands;
 - added %i macro to completely ignore output of external commands.

Command-line mode related changes:
 - added :finish command to use in sourced scripts;
 - improved :let command (allowed using of expressions at the right side of
   the statement);
 - properly handle when user alters PATH environment variable using :let
   command;
 - added description for :filetype, :filextype and :fileviewer commands;
 - save last typed but not executed command in command-line mode (this also
   includes searches).

Menus and dialogs:
 - removed possibility of moving items in :file menu;
 - added size of file in bytes in file info mode (Ctrl-G);
 - added q key to close menus.

Other changes:
 - added notes about automatic FUSE mounts to the documentation;
 - now vifm removes scripts (`$VIFM/scripts/**`) from PATH for :shell command;
 - use common search history for normal, visual and menu modes;
 - increased directory modification stamp precision on Unix.

Plus bug fixes of course.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

February 19, 2012
=================

vifm v0.7.2
-----------

Changes since v0.7.1 :set command and options:
 - added 'rulerformat' option;
 - added 'statusline' option;
 - added 'columns' and 'lines' options;
 - added 'trashdir' option (by Chris Skalenda).

Command-line mode related changes:
 - added optional argument for the :sync command;
 - added support for running :cmap, :nmap and :vmap with one argument;
 - added recursive mode for :rename command;
 - added :let and :unlet commands to work with environment variables;
 - added :windo and :winrun commands;
 - never change active view on :restart command;
 - allowed using of macros with :clone command.

Angle bracket notation:
 - added <esc>.

Only on Windows:
 - added embedded icon;
 - added file properties dialog;
 - show "Sorting directory..." message only for big directories;
 - change console title;
 - made determining of home directory more intelligent;
 - made 'sortnumbers' work;
 - avoid unnecessary directory view updates (like after C key);
 - allow using of backward slashes in :rename command;
 - let :s and :gs filename modifiers change slash type;
 - properly quit vifm on console closing;
 - added :u filename modifier for UNC computer name;
 - added file attributes in status bar and file info view.

Normal and visual modes related changes:
 - added ctrl-w p, ctrl-w b and ctrl-w t normal mode keys.

Configuration:
 - added $VIFM and $MYVIFMRC environment variables;
 - now vifm will add all subdirectories of ~/.vifm/scripts to PATH;
 - better check for old-style color schemes file.

For Vim:
 - added g:vifm_exec_args variable for the plugin.

Other changes:
 - added --select command line argument;
 - added --remote command line argument;
 - added support for character classes in globals;
 - restore terminal title on exit;
 - reset dot and filename filters if they hide bookmarked file;
 - made vifm react faster on external changes.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

November 15, 2011
=================

vifm v0.7.1
-----------

Major changes since v0.7.0:
 - changed meaning of :split command (so replace it with :vsplit in your
   vifmrc);
 - added backgrounding of :copy, :move, :delete, ga and gA commands;
 - added horizontal splitting and keys to control size of the panes;
 - added less-like view mode;
 - made some changes to the Vim plugin;
 - windows version was made much more usable.

Changes in details

:set command and options:
 - added 'scrollbind', 'wrapscan', 'incsearch', 'cpoptions', 'laststatus' and
   'tabstop' options;
 - make 'ignorecase' and 'smartcase' affect f and F;
 - don't use position in the view on ' key, when 'autochpos' is off.

Angle bracket notation:
 - added support for more angle bracket notations in mappings (<bs>, <tab>,
   <s-tab>, <home>, <end>, <left>, <right>, <up>, <down>, <pageup>,
   <pagedown>, <del>, <delete>, <m-a>, <m-b>, ..., <m-z>);
 - added <s-f1>, ..., <s-f12>, <a-f1>, ..., <a-f12>, <c-f1>, ..., <c-f12>,
   only for Windows;
 - added <a-X> as synonyms for <m-X> (where X is a key);
 - added angle bracket notation <c-s-X> and <s-c-X> as synonyms for <c-X>;
 - added Ctrl + Alt + letter combinations, only for Unix.

Command-line mode related changes:
 - added :split! to toggle between only and split view;
 - added :file to quick run one of associated commands;
 - added backgrounding of :copy, :move and :delete commands;
 - added :delete!;
 - added :execute, :source commands;
 - added support for using environment variables as :cd or :pushd arguments;
 - added support for :substitute command without arguments;
 - added notation to run internal vifm commands from user defined commands;
 - allowed exclamation mark for :view command (to prevent view closing);
 - allowed question mark for :mark command (to prevent bookmark overwriting).

Completion:
 - added completion of environment variables (:cd, :pushd, :! and :!!).

Normal and visual modes related changes:
 - added '(' and ')' keys for normal and visual modes;
 - added Ctrl-A and Ctrl-X keys (normal and visual modes);
 - added e key for normal mode;
 - made i key work in visual mode;
 - made ga and gA work in background;
 - better cW command;
 - clean selection after i key in normal mode.

Menus and dialogs:
 - added year in the file info dialog (on Ctrl-G);
 - added zh, zl, zH and zL keys for the menus (horizontal scrolling);
 - added ZQ and ZZ keys to close menus and dialogs.

TUI (Terminal User Interface):
 - added horizontal splitting of views (changed :split command, added :vsplit
   command, changed Ctrl-w s mapping);
 - added Ctrl-w j and Ctrl-w k keys;
 - added Ctrl-w <, Ctrl-w >, Ctrl-w + and Ctrl-w - keys;
 - added Ctrl-w | and Ctrl-w _ keys.

File cloning:
 - don't change file extension on cloning;
 - move cursor to clone of current file after file cloning;
 - smarter file name generation on cloning;
 - made C command accept count.

Only on Windows:
 - added kind of portable mode on Windows;
 - make macros expand to paths with forward slashes on Windows;
 - better check if directory was changed on Windows;
 - show all shares on Windows (including private ones);
 - fixed a lot of bugs on Windows.

For Vim:
 - added g:vifm_exec variable for the plugin;
 - added ftdetect plugin for vim (now there is no need for modelines or
   changing .vimrc);
 - allowed arguments for plugin's commands;
 - added more tags to the documentation in vim-help format.

Other changes:
 - added Ctrl-n (j) and Ctrl-p (k) keys;
 - added view mode (see documentation);
 - added -c and + command line arguments;
 - added support of [count] for / and ?;
 - don't clear terminal title on exit;
 - warn about symbolic links are not available;
 - don't show current file as selected after executing a :command and resizing
   terminal while it works;
 - show progress message (e.g. on :copy) after terminal is resized;
 - made some messages about operations more correct.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

September 29, 2011
==================

vifm v0.7.0 is out!
-------------------

And as it was promised vifm is back on Windows!

This release breaks compatibility a little, which was done intentionally to
make vifm more vi-like.  I hope that won't make too much discomfort for users,
at least I tried to reduce discomfort as much as I can.  In particular, an
utility program named vifmrc-converter is shipped with vifm now.  It's main
purpose is to automatically convert configuration files (vifmrc, vifminfo,
startup and colorschemes files) to new format.  You don't have to run it by
yourself, vifm will do this for you after asking some questions at first
startup.

Here are the main changes by categories.

Configuration:
 - changed format of ~/.vifm/vifmrc and ~/.vifm/vifminfo files;
 - removed support of startup file, all commands will be automatically moved
   to the vifmrc file;
 - added support for multi line commands in the vifmrc (ex-startup) file;
 - now users can place scripts for vifm to ~/.vifm/scripts, vifm modifies its
   PATH environment variable to let user run scripts without specifying full
   path;
 - now vifm also accepts paths to files as the startup arguments and
   --no-configs option.

Normal and visual modes related changes:
 - added gf, al, rl and cl commands for dealing with symbolic links;
 - added gu and gU commands (and their variations);
 - added gs command to work with t selection like gv with visual mode
   selection;
 - made C handle selection, check read permission and work in visual mode;
 - changed the way l key handles selection and made it work in visual mode.

Command-line mode related changes:
 - removed :cmdhistory command, use :history cmd or ":history :" instead;
 - added :noremap, :cnoremap, :nnoremap, :vnoremap, :unmap, :cunmap, :nunmap
   and :vunmap commands;
 - added :filetype, :filextype and :fileviewer commands;
 - added :find and :grep commands;
 - added :substitute and :tr commands;
 - added :clone, :copy, :move, :alink and :rlink commands;
 - added :chmod, :chown, :mkdir and :touch commands;
 - added :mark, :delmarks, :comclear, :highlight, :restart and :messages
   command;
 - documented command line keys and marked which :commands accept ranges;
 - now vifm understands user name after tilde in paths;
 - let user use short forms of user-defined commands with "!".

Completion:
 - added completion for co, cg, cw and cW commands;
 - sort completion items;
 - shift-Tab command line key to perform completion in reversed order;
 - added Ctrl-_ command-line key to reject completion.

Macros:
 - added filename modifiers (:p, :~, :., :h, :t, :r, :e, :s and :gs);
 - added %S and %M macros;
 - added macros that are expanded to paths enclosed in double quotes (%"c,
   %"C, %"f, %"F, %"b, %"d and %"D);
 - handle %m, %M, %s and %S in the :! command.

:set command and options:
 - removed 'savelocation' option. Use :set vifminfo+=dhistory;
 - added 'wildmenu', 'ignorecase', 'smartcase', 'hlsearch', 'vifminfo',
   'shell', 'vixcmd', 'scrolloff', 'timeoutlen', 'autochpos','gdefault',
   'slowfs' options;
 - added abbreviations for options;
 - added support for using ':' instead of '=';
 - support for ':set' and ':set all' commands;
 - made ':set option' equivalent to ':set option?' for all types of options
   except boolean;
 - made 'history' option control search, command line and prompt histories;
 - better 'sort' option (support by multiple sort keys, added iname key);
 - made 'vicmd' and 'vixcmd' understand & at the end;
 - :set command now understands & (reset option to its default value).

Color scheme related changes:
 - all color schemes are stored under the ~/.vifm/colors/ directory, each
   color scheme in its own file;
 - color scheme file is a list of commands. All command-line commands are
   handled, but only :highlight commands are really useful here;
 - added colors for current top line, other top line, status line, error
   messages in the status bar, broken links and FIFO files;
 - now maximum number of color schemes is unlimited even on 8-color terminals
   (there was a limit of 5 color schemes for such terminals before).

Only on Windows:
 - gl normal mode key;
 - UNC names support;
 - :volumes command.

For Vim:
 - added g:vifm_term variable for the plugin;
 - added vifmrc syntax and filetype files for Vim;
 - tags for some items in the help file for Vim.

Other changes:
 - let user go through directories with execute access, but no read access;
 - made filetype understand star as in globals;
 - removed duplicates from command and directory history;
 - made directory, command line and search histories as well as dirstack and
   registers persistent (when 'vifminfo' option contains appropriate value);
 - show search matches in the menus;
 - now keys can be used in mappings and mapping of keys like y, d or m works
   right;
 - modify terminal emulator title;
 - don't quit when terminal is too small (print message and ignore input);
 - fixed bugs.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

July 20, 2011
=============

vifm-0.6.3
----------

Main changes in vifm-0.6.3:
 - added another format for filetype (FUSE_MOUNT2);
 - added %CLEAR FUSE mount parameter.  See vifmrc for details;
 - added %c and %C macros (current file of current and other directories, not
   selected file or files);
 - added :rename command (opens vi to let you edit names for selected file or
   files);
 - added undo list (u, Ctrl-R and :undolist commands; 'undolevels' option);
 - added small FAQ;
 - added gA command (like ga, but forces update);
 - added whole line comments (can be useful in startup file);
 - added :dirs command (shows directory stack);
 - added 'sortnumbers', 'followlinks', 'fusehome', 'confirm' and 'history'
   options;
 - added dialog to ask user about backwards range in command;
 - added some vi like keys for menus, dialogs and visual mode;
 - added 'savelocation' option (start vifm in the last visited directory)
   which is off be default thus returning old behaviour when vifm is started
   with no argument;
 - added gv command for visual mode;
 - enter key in visual mode will leave it saving selection;
 - now location of panes is saved in ~/.vifm/vifminfo instead of
   ~/.vifm/vifmr;
 - now builtin keys can be remapped;
 - don't replace escape sequences for :! and :!! commands;
 - more vi like completion and history in command line and search;
 - some improvements for :filter command;
 - some improvements for command ranges;
 - now ranges modify %f macro for user defined commands;
 - made f and F work with wide characters;
 - made option parser handle quotes;
 - rename files in Trash (to avoid name conflicts);
 - don't terminate background processes on vifm exit;
 - remove files that are in the Trash on :empty command from all registers;
 - don't ignore Ctrl-Z;
 - don't clear screen on shellout;
 - updated Vim plugin;
 - fixed a lot of bugs;

See ChangeLog for details.  Also see THANKS file that was added in this
release.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

June 19, 2011
=============

vifm-0.6.2
-----------

This release fixes some bugs and adds several commands for different modes.

Main changes:
 - added map menus (run :cmap, :vmap, :nmap commands without arguments);
 - added :cmdhistory command;
 - added 'fastrun' option;
 - added o and O keys for Visual mode (go to other end of selection);
 - added gv Normal mode command;
 - added support for spaces and functional keys in mappings (<space> and
   <f0> - <f63>);
 - added mimetype to fileinfo dialog;
 - added %b command macro;
 - implemented :yank and :colorscheme commands;
 - made filetype menu editable;
 - restore SIGINT (Ctrl+C) default behaviour on shellout;
 - replace escape sequences in quick view output with ^foo;
 - give options if a file already exists in destination directory;
 - unmount all FUSE mounts on exit;
 - more verbose version information;
 - added Ctrl-C key handling to error message dialog;
 - use file command when GTK+ and libmagic are disabled;
 - better error messages;
 - use ga command results to sort by size;
 - fixed paths in config.c to work with non standard install prefix;
 - fixed several bugs with command completion and terminal resizing.

See ChangeLog for details and AUTHORS for information about authors.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

June 11, 2011
=============

Vifm-0.6.1 is available.
------------------------

Windows version remains unchanged for now.  I'm planning to use one code base
for both Unix and Windows platforms and it would take some time to do that.

Major changes since 0.5:
 - added support for user mappings;
 - added file selectors (like motions and text-objects);
 - improved sort dialog;
 - added filetype detection using GTK+ or libmagic (:file);
 - added directory stack (:pushd, :popd);
 - added completion for :! and :!! commands;
 - added custom file viewers (:view);
 - added startup file;
 - better utf8 support;
 - added :set command and options.

See ChangeLog for details.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

August 7, 2009
==============

Vifm-0.5 is available.
----------------------

This release is mainly user contributed patches and a new port for Windows.
A filetype setting was added to allow the mounting of files with fuse-zip and
other filesystems based on fuse.  The :com input was changed to accept wide
characters.  The Windows port is missing some of the features of the Unix
version but it is useful and stable enough for an initial release.  The
following commands were added in the Windows port:
 - :copy;
 - :move;
 - :volume - list mounted volumes.
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/vifm

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/vifm

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master