aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/version.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/version.c')
-rw-r--r--src/nvim/version.c1067
1 files changed, 937 insertions, 130 deletions
diff --git a/src/nvim/version.c b/src/nvim/version.c
index 23bfca6221..a12621d06f 100644
--- a/src/nvim/version.c
+++ b/src/nvim/version.c
@@ -7,24 +7,22 @@
#include <assert.h>
#include <limits.h>
+#include "nvim/api/private/helpers.h"
#include "nvim/vim.h"
#include "nvim/ascii.h"
#include "nvim/iconv.h"
#include "nvim/version.h"
#include "nvim/charset.h"
+#include "nvim/macros.h"
#include "nvim/memline.h"
#include "nvim/memory.h"
#include "nvim/message.h"
-#include "nvim/misc2.h"
#include "nvim/screen.h"
#include "nvim/strings.h"
// version info generated by the build system
#include "auto/versiondef.h"
-#define STR_(x) #x
-#define STR(x) STR_(x)
-
// for ":version", ":intro", and "nvim --version"
#ifndef NVIM_VERSION_MEDIUM
#define NVIM_VERSION_MEDIUM STR(NVIM_VERSION_MAJOR) "." STR(NVIM_VERSION_MINOR)\
@@ -64,81 +62,840 @@ static char *features[] = {
#else
"-jemalloc",
#endif
+
+#ifdef FEAT_TUI
+ "+tui",
+#else
+ "-tui",
+#endif
NULL
};
// clang-format off
static int included_patches[] = {
+ // 2367,
+ // 2366 NA
+ // 2365 NA
+ // 2364,
+ // 2363 NA
+ // 2362,
+ // 2361 NA
+ // 2360,
+ // 2359 NA
+ // 2358 NA
+ // 2357,
+ // 2356,
+ // 2355,
+ // 2354,
+ // 2353,
+ // 2352 NA
+ // 2351 NA
+ // 2350,
+ // 2349,
+ // 2348,
+ // 2347,
+ // 2346,
+ // 2345 NA
+ // 2344 NA
+ // 2343,
+ // 2342 NA
+ // 2341,
+ // 2340 NA
+ // 2339,
+ // 2338 NA
+ 2337,
+ // 2336,
+ 2335,
+ // 2334,
+ // 2333,
+ // 2332 NA
+ 2331,
+ // 2330,
+ // 2329,
+ // 2328,
+ // 2327 NA
+ // 2326,
+ // 2325 NA
+ // 2324,
+ // 2323,
+ // 2322,
+ 2321,
+ // 2320,
+ // 2319 NA
+ // 2318,
+ // 2317,
+ // 2316 NA
+ // 2315,
+ 2314,
+ 2313,
+ 2312,
+ // 2311 NA
+ // 2310 NA
+ 2309,
+ // 2308 NA
+ // 2307,
+ // 2306,
+ // 2305,
+ // 2304 NA
+ // 2303,
+ // 2302 NA
+ // 2301 NA
+ 2300,
+ // 2299,
+ // 2298 NA
+ // 2297 NA
+ // 2296,
+ // 2295,
+ 2294,
+ // 2293,
+ // 2292,
+ // 2291,
+ // 2290 NA
+ // 2289 NA
+ // 2288 NA
+ // 2287 NA
+ // 2286 NA
+ // 2285 NA
+ 2284,
+ // 2283,
+ // 2282 NA
+ // 2281 NA
+ // 2280,
+ // 2279,
+ // 2278 NA
+ 2277,
+ // 2276,
+ // 2275,
+ 2274,
+ 2273,
+ 2272,
+ // 2271 NA
+ // 2270 NA
+ // 2269,
+ // 2268,
+ // 2267 NA
+ // 2266,
+ // 2265,
+ // 2264,
+ // 2263,
+ // 2262 NA
+ // 2261 NA
+ // 2260 NA
+ // 2259,
+ // 2258 NA
+ // 2257 NA
+ // 2256,
+ // 2255,
+ // 2254 NA
+ // 2253 NA
+ // 2252 NA
+ 2251,
+ // 2250,
+ // 2249,
+ // 2248,
+ // 2247 NA
+ // 2246,
+ // 2245,
+ // 2244,
+ // 2243 NA
+ // 2242,
+ // 2241,
+ // 2240,
+ // 2239,
+ // 2238 NA
+ 2237,
+ // 2236,
+ // 2235,
+ // 2234 NA
+ // 2233,
+ // 2232 NA
+ // 2231,
+ // 2230,
+ // 2229,
+ // 2228,
+ 2227,
+ 2226,
+ 2225,
+ // 2224,
+ // 2223,
+ // 2222,
+ // 2221,
+ // 2220,
+ 2219,
+ // 2218 NA
+ 2217,
+ // 2216 NA
+ 2215,
+ // 2214 NA
+ 2213,
+ 2212,
+ // 2211 NA
+ // 2210 NA
+ // 2209,
+ // 2208,
+ // 2207 NA
+ // 2206 NA
+ 2205,
+ 2204,
+ // 2203 NA
+ // 2202 NA
+ 2201,
+ // 2200,
+ // 2199 NA
+ // 2198 NA
+ // 2197,
+ // 2196,
+ // 2195 NA
+ 2194,
+ // 2193 NA
+ // 2192 NA
+ // 2191 NA
+ // 2190,
+ // 2189,
+ 2188,
+ // 2187,
+ // 2186 NA
+ // 2185,
+ // 2184,
+ 2183,
+ // 2182 NA
+ // 2181,
+ // 2180,
+ // 2179,
+ // 2178,
+ // 2177,
+ // 2176 NA
+ // 2175,
+ 2174,
+ // 2173,
+ // 2172,
+ // 2171,
+ // 2170,
+ // 2169,
+ // 2168 NA
+ // 2167 NA
+ // 2166 NA
+ // 2165,
+ // 2164,
+ 2163,
+ 2162,
+ // 2161,
+ 2160,
+ // 2159,
+ 2158,
+ // 2157 NA
+ // 2156 NA
+ // 2155 NA
+ // 2154 NA
+ // 2153 NA
+ // 2152,
+ // 2151,
+ // 2150 NA
+ 2149,
+ // 2148,
+ 2147,
+ 2146,
+ // 2145 NA
+ // 2144,
+ // 2143,
+ // 2142,
+ // 2141,
+ // 2140 NA
+ // 2139,
+ // 2138 NA
+ // 2137,
+ // 2136,
+ // 2135,
+ // 2134,
+ // 2133 NA
+ // 2132 NA
+ // 2131 NA
+ // 2130 NA
+ // 2129 NA
+ 2128,
+ 2127,
+ 2126,
+ // 2125 NA
+ 2124,
+ 2123,
+ // 2122 NA
+ // 2121,
+ // 2120,
+ // 2119,
+ // 2118 NA
+ 2117,
+ // 2116 NA
+ // 2115 NA
+ // 2114 NA
+ // 2113,
+ 2112,
+ // 2111,
+ 2110,
+ 2109,
+ // 2108 NA
+ // 2107,
+ // 2106,
+ // 2105 NA
+ // 2104,
+ 2103,
+ // 2102 NA
+ // 2101,
+ 2100,
+ 2099,
+ // 2098,
+ // 2097,
+ // 2096,
+ // 2095,
+ // 2094 NA
+ // 2093 NA
+ // 2092 NA
+ // 2091 NA
+ // 2090,
+ // 2089 NA
+ // 2088,
+ // 2087,
+ 2086,
+ // 2085,
+ // 2084,
+ // 2083,
+ // 2082,
+ 2081,
+ // 2080,
+ // 2079 NA
+ // 2078 NA
+ 2077,
+ // 2076,
+ 2075,
+ 2074,
+ // 2073 NA
+ // 2072,
+ 2071,
+ // 2070 NA
+ // 2069,
+ // 2068,
+ 2067,
+ 2066,
+ 2065,
+ 2064,
+ // 2063 NA
+ 2062,
+ // 2061,
+ // 2060 NA
+ // 2059 NA
+ // 2058,
+ // 2057 NA
+ // 2056 NA
+ // 2055 NA
+ // 2054 NA
+ // 2053 NA
+ // 2052 NA
+ // 2051,
+ 2050,
+ 2049,
+ // 2048 NA
+ // 2047,
+ // 2046,
+ // 2045 NA
+ // 2044,
+ 2043,
+ // 2042 NA
+ // 2041 NA
+ // 2040 NA
+ // 2039 NA
+ // 2038 NA
+ // 2037 NA
+ 2036,
+ // 2035 NA
+ // 2034 NA
+ 2033,
+ // 2032 NA
+ 2031,
+ // 2030 NA
+ // 2029,
+ 2028,
+ // 2027 NA
+ // 2026 NA
+ // 2025 NA
+ // 2024,
+ // 2023,
+ // 2022,
+ // 2021,
+ // 2020 NA
+ 2019,
+ // 2018,
+ // 2017,
+ // 2016 NA
+ 2015,
+ 2014,
+ 2013,
+ 2012,
+ 2011,
+ 2010,
+ 2009,
+ 2008,
+ 2007,
+ 2006,
+ 2005,
+ // 2004 NA
+ // 2003 NA
+ // 2002,
+ // 2001 NA
+ 2000,
+ 1999,
+ // 1998 NA
+ 1997,
+ 1996,
+ // 1995 NA
+ // 1994,
+ // 1993,
+ // 1992,
+ // 1991,
+ 1990,
+ // 1989,
+ // 1988 NA
+ // 1987 NA
+ // 1986,
+ // 1985 NA
+ 1984,
+ // 1983 NA
+ // 1982 NA
+ // 1981,
+ 1980,
+ // 1979,
+ // 1978,
+ // 1977,
+ // 1976,
+ // 1975,
+ // 1974 NA
+ 1973,
+ // 1972 NA
+ 1971,
+ 1970,
+ // 1969 NA
+ 1968,
+ 1967,
+ 1966,
+ // 1965 NA
+ 1964,
+ // 1963 NA
+ // 1962,
+ 1961,
+ 1960,
+ // 1959 NA
+ // 1958 NA
+ // 1957 NA
+ 1956,
+ // 1955 NA
+ // 1954,
+ 1953,
+ 1952,
+ // 1951 NA
+ 1950,
+ 1949,
+ // 1948,
+ // 1947 NA
+ // 1946 NA
+ // 1945 NA
+ // 1944 NA
+ // 1943 NA
+ // 1942 NA
+ 1941,
+ 1940,
+ // 1939 NA
+ // 1938 NA
+ 1937,
+ // 1936 NA
+ // 1935 NA
+ // 1934 NA
+ // 1933 NA
+ // 1932 NA
+ // 1931 NA
+ // 1930 NA
+ // 1929 NA
+ 1928,
+ // 1927 NA
+ // 1926 NA
+ 1925,
+ // 1924 NA
+ 1923,
+ // 1922 NA
+ // 1921 NA
+ // 1920 NA
+ // 1919 NA
+ // 1918 NA
+ // 1917 NA
+ // 1916 NA
+ // 1915 NA
+ // 1914 NA
+ 1913,
+ 1912,
+ // 1911 NA
+ 1910,
+ 1909,
+ // 1908 NA
+ // 1907 NA
+ // 1906 NA
+ // 1905 NA
+ // 1904 NA
+ // 1903 NA
+ // 1902 NA
+ // 1901 NA
+ 1900,
+ // 1899 NA
+ 1898,
+ 1897,
+ 1896,
+ 1895,
+ 1894,
+ 1893,
+ 1892,
+ // 1891 NA
+ // 1890 NA
+ 1889,
+ // 1888 NA
+ // 1887 NA
+ // 1886 NA
+ // 1885 NA
+ 1884,
+ // 1883 NA
+ 1882,
+ 1881,
+ // 1880 NA
+ // 1879 NA
+ // 1878 NA
+ // 1877 NA
+ 1876,
+ 1875,
+ // 1874 NA
+ // 1873 NA
+ // 1872 NA
+ 1871,
+ // 1870 NA
+ // 1869 NA
+ 1868,
+ 1867,
+ 1866,
+ // 1865 NA
+ // 1864 NA
+ // 1863 NA
+ // 1862 NA
+ 1861,
+ 1860,
+ // 1859 NA
+ // 1858 NA
+ // 1857 NA
+ // 1856 NA
+ // 1855 NA
+ // 1854 NA
+ // 1853 NA
+ // 1852 NA
+ 1851,
+ // 1850 NA
+ // 1849 NA
+ // 1848 NA
+ 1847,
+ // 1846 NA
+ // 1845 NA
+ // 1844 NA
+ // 1843 NA
+ 1842,
+ 1841,
+ 1840,
+ 1839,
+ 1838,
+ 1837,
+ 1836,
+ 1835,
+ 1834,
+ 1833,
1832,
+ 1831,
+ // 1830 NA
+ // 1829 NA
+ // 1828 NA
+ // 1827 NA
+ // 1826 NA
+ // 1825 NA
+ // 1824 NA
+ 1823,
+ // 1822 NA
+ 1821,
+ 1820,
+ // 1819 NA
+ 1818,
+ // 1817 NA
+ 1816,
+ 1815,
+ // 1814 NA
+ 1813,
+ // 1812 NA
+ // 1811 NA
+ // 1810 NA
1809,
1808,
+ // 1807 NA
1806,
+ // 1805 NA
+ // 1804 NA
+ // 1803 NA
+ 1802,
+ // 1801 NA
+ // 1800 NA
1799,
+ // 1798 NA
+ // 1797 NA
+ // 1796 NA
+ // 1795 NA
+ // 1794 NA
+ 1793,
+ // 1792 NA
+ // 1791 NA
+ // 1790 NA
+ // 1789 NA
+ // 1789 NA
+ // 1788 NA
+ // 1787 NA
+ // 1786 NA
+ 1785,
+ // 1784 NA
+ 1783,
+ 1782,
+ 1781,
+ 1780,
+ 1779,
+ // 1778 NA
+ // 1777 NA
+ // 1776 NA
+ // 1775 NA
+ // 1774 NA
+ // 1773 NA
+ // 1772 NA
+ // 1771 NA
+ // 1770 NA
+ // 1769 NA
+ 1768,
+ // 1767 NA
+ // 1766 NA
+ 1765,
+ // 1764 NA
+ 1763,
+ // 1762 NA
+ // 1761 NA
+ // 1760 NA
+ 1759,
+ 1758,
1757,
+ // 1756 NA
1755,
+ 1754,
1753,
+ 1752,
+ 1751,
+ // 1750 NA
+ // 1749 NA
+ 1748,
+ // 1747 NA
+ // 1746 NA
+ // 1745 NA
+ // 1744 NA
+ // 1743 NA
+ 1742,
+ 1741,
+ 1740,
+ 1739,
+ 1738,
+ // 1737 NA
+ // 1736 NA
+ 1735,
+ 1734,
+ // 1733 NA
+ 1732,
+ // 1731 NA
+ 1730,
+ // 1729 NA
1728,
+ // 1727 NA
+ // 1726 NA
+ // 1725 NA
+ // 1724 NA
+ 1723,
+ // 1722 NA
+ // 1721 NA
+ // 1720 NA
+ 1719,
+ 1718,
+ // 1717 NA
+ 1716,
+ 1715,
+ 1714,
+ // 1713 NA
+ 1712,
+ 1711,
+ // 1710 NA
+ // 1709 NA
+ 1708,
+ 1707,
+ // 1706 NA
+ // 1705 NA
+ 1704,
+ 1703,
+ 1702,
+ 1701,
+ 1700,
+ 1699,
+ // 1698 NA
+ 1697,
+ 1696,
+ 1695,
+ // 1694 NA
+ // 1693 NA
+ 1692,
+ 1691,
+ // 1690 NA
+ // 1689 NA
+ // 1688 NA
+ // 1687 NA
+ 1686,
+ 1685,
+ // 1684 NA
+ // 1683 NA
+ 1682,
+ 1681,
+ // 1680 NA
+ 1679,
+ // 1678 NA
+ // 1677 NA
+ 1676,
+ 1675,
+ // 1674 NA
+ 1673,
+ // 1672 NA
+ 1671,
+ 1670,
+ // 1669 NA
+ // 1668 NA
+ // 1667 NA
+ // 1666 NA
+ // 1665 NA
+ 1664,
+ 1663,
+ // 1662 NA
+ // 1661 NA
+ 1660,
+ // 1659 NA
+ 1658,
+ // 1657 NA
+ 1656,
+ // 1655 NA
1654,
+ // 1653 NA
1652,
+ // 1651 NA
+ 1650,
+ 1649,
+ 1648,
+ 1647,
+ // 1646 NA
+ 1645,
+ // 1644 NA
1643,
+ 1642,
1641,
-
+ 1640,
+ 1639,
+ 1638,
+ // 1637 NA
+ // 1636 NA
+ // 1635 NA
+ 1634,
+ // 1633 NA
+ // 1632 NA
+ // 1631 NA
+ 1630,
+ 1629,
+ // 1628 NA
+ // 1627 NA
+ // 1626 NA
+ // 1625 NA
+ // 1624 NA
+ // 1623 NA
+ // 1622 NA
+ // 1621 NA
+ 1620,
+ 1619,
+ // 1618 NA
+ // 1617 NA
+ // 1616 NA
+ // 1615 NA
+ 1614,
+ // 1613 NA
+ // 1612 NA
+ // 1611 NA
+ // 1610 NA
+ // 1609 NA
+ 1608,
+ 1607,
+ 1606,
+ 1605,
+ 1604,
+ 1603,
+ // 1602 NA
+ // 1601 NA
// 1600 NA
// 1599 NA
// 1598 NA
// 1597 NA
- // 1596,
+ 1596,
// 1595 NA
// 1594 NA
// 1593 NA
- // 1592,
- // 1591,
- // 1590,
- // 1589,
- // 1588,
+ 1592,
+ 1591,
+ 1590,
+ 1589,
+ 1588,
// 1587 NA
- // 1586,
- // 1585,
+ 1586,
+ 1585,
// 1584 NA
// 1583 NA
- // 1582,
-
- // 1581,
- // 1580,
- // 1579,
- // 1578,
- // 1577,
+ 1582,
+ 1581,
+ 1580,
+ // 1579 NA
+ 1578,
+ 1577,
1576,
// 1575 NA
1574,
- // 1573,
+ // 1573 NA
// 1572 NA
1571,
1570,
1569,
1568,
- // 1567,
+ 1567,
// 1566 NA
- // 1565,
- // 1564,
- // 1563,
+ 1565,
+ 1564,
+ 1563,
// 1562 NA
// 1561 NA
- // 1560,
- // 1559,
- // 1558,
- // 1557,
- // 1556,
- // 1555,
- // 1554,
- // 1553,
- // 1552,
- // 1551,
- // 1550,
- // 1549,
- // 1548,
- // 1547,
- // 1546,
+ // 1560 NA
+ 1559,
+ 1558,
+ 1557,
+ // 1556 NA
+ // 1555 NA
+ 1554,
+ 1553,
+ 1552,
+ 1551,
+ 1550,
+ 1549,
+ 1548,
+ 1547,
+ 1546,
// 1545 NA
// 1544 NA
// 1543 NA
@@ -149,14 +906,14 @@ static int included_patches[] = {
// 1538 NA
// 1537 NA
// 1536 NA
- // 1535,
+ 1535,
// 1534 NA
- // 1533,
+ 1533,
// 1532 NA
// 1531 NA
// 1530 NA
// 1529 NA
- // 1528,
+ 1528,
// 1527 NA
// 1526 NA
// 1525 NA
@@ -185,29 +942,29 @@ static int included_patches[] = {
// 1502 NA
// 1501 NA
1500,
- // 1499,
+ 1499,
// 1498 NA
// 1497 NA
// 1496 NA
// 1495 NA
- // 1494,
+ 1494,
// 1493 NA
- // 1492,
- // 1491,
+ 1492,
+ 1491,
// 1490 NA
// 1489 NA
// 1488 NA
// 1487 NA
- // 1486,
+ 1486,
// 1485 NA
// 1484 NA
// 1483 NA
// 1482 NA
// 1481 NA
- // 1480,
- // 1479,
- // 1478,
- // 1477,
+ 1480,
+ 1479,
+ 1478,
+ 1477,
// 1476 NA
// 1475 NA
// 1474 NA
@@ -216,11 +973,11 @@ static int included_patches[] = {
// 1471 NA
// 1470 NA
// 1469 NA
- // 1468,
+ 1468,
// 1467 NA
// 1466 NA
// 1465 NA
- // 1464,
+ 1464,
// 1463 NA
// 1462 NA
// 1461 NA
@@ -228,7 +985,7 @@ static int included_patches[] = {
// 1459 NA
// 1458 NA
// 1457 NA
- // 1456,
+ // 1456 NA
// 1455 NA
// 1454 NA
// 1453 NA
@@ -287,20 +1044,20 @@ static int included_patches[] = {
// 1400 NA
// 1399 NA
// 1398 NA
- // 1397,
- // 1396,
+ 1397,
+ 1396,
// 1395 NA
- // 1394,
+ 1394,
// 1393 NA
// 1392 NA
// 1391 NA
// 1390 NA
// 1389 NA
- // 1388,
+ 1388,
// 1387 NA
// 1386 NA
// 1385 NA
- // 1384,
+ 1384,
// 1383 NA
// 1382 NA
// 1381 NA
@@ -319,7 +1076,7 @@ static int included_patches[] = {
// 1368 NA
// 1367 NA
1366,
- // 1365,
+ 1365,
// 1364 NA
// 1363 NA
// 1362 NA
@@ -332,7 +1089,7 @@ static int included_patches[] = {
// 1355 NA
// 1354 NA
// 1353 NA
- // 1352,
+ 1352,
// 1351 NA
// 1350 NA
// 1349 NA
@@ -379,7 +1136,7 @@ static int included_patches[] = {
// 1308 NA
// 1307 NA
// 1306 NA
- // 1305,
+ 1305,
1304,
// 1303 NA
// 1302 NA
@@ -403,22 +1160,22 @@ static int included_patches[] = {
1284,
// 1283 NA
1282,
- // 1281,
+ 1281,
// 1280 NA
// 1279 NA
// 1278 NA
// 1277 NA
- // 1276,
+ 1276,
// 1275 NA
// 1274 NA
- // 1273,
+ // 1273 NA
// 1272 NA
1271,
// 1270 NA
1269,
// 1268 NA
1267,
- // 1266
+ 1266,
// 1265 NA
// 1264 NA
// 1263 NA
@@ -447,7 +1204,7 @@ static int included_patches[] = {
// 1240 NA
// 1239 NA
// 1238 NA
- // 1237,
+ 1237,
1236,
// 1235 NA
// 1234 NA
@@ -461,7 +1218,7 @@ static int included_patches[] = {
// 1226 NA
// 1225 NA
// 1224 NA
- // 1223,
+ 1223,
// 1222 NA
// 1221 NA
// 1220 NA
@@ -498,14 +1255,14 @@ static int included_patches[] = {
// 1189 NA
// 1188 NA
// 1187 NA
- // 1186,
+ // 1186 NA
// 1185 NA
// 1184 NA
// 1183 NA
// 1182 NA
1181,
1180,
- // 1179,
+ 1179,
1178,
// 1177 NA
// 1176 NA
@@ -523,7 +1280,7 @@ static int included_patches[] = {
1164,
1163,
// 1162 NA
- // 1161,
+ 1161,
1160,
// 1159 NA
// 1158 NA
@@ -531,41 +1288,41 @@ static int included_patches[] = {
// 1156 NA
// 1155 NA
// 1154 NA
- // 1153,
+ 1153,
// 1152 NA
- // 1151,
- // 1150,
+ 1151,
+ 1150,
1149,
// 1148 NA
- // 1147,
+ 1147,
// 1146 NA
// 1145 NA
1144,
1143,
- // 1142,
+ 1142,
1141,
- // 1140,
+ 1140,
// 1139 NA
// 1138 NA
1137,
- // 1136,
+ 1136,
// 1135 NA
// 1134 NA
// 1133 NA
- // 1132,
+ 1132,
// 1131 NA
- // 1130,
+ // 1130 NA
// 1129 NA
// 1128 NA
// 1127 NA
- // 1126,
+ 1126,
// 1125 NA
// 1124 NA
- // 1123,
+ 1123,
// 1122 NA
- // 1121,
+ 1121,
1120,
- // 1119,
+ 1119,
1118,
1117,
1116,
@@ -573,10 +1330,10 @@ static int included_patches[] = {
1114,
1113,
1112,
- // 1111,
+ 1111,
1110,
// 1109 NA
- // 1108,
+ 1108,
1107,
// 1106 NA
1105,
@@ -587,14 +1344,14 @@ static int included_patches[] = {
// 1100 NA
// 1099 NA
// 1098 NA
- // 1097,
- // 1096,
+ // 1097 NA
+ 1096,
// 1095 NA
- // 1094,
+ 1094,
1093,
1092,
1091,
- // 1090,
+ 1090,
1089,
1088,
1087,
@@ -605,35 +1362,35 @@ static int included_patches[] = {
// 1082 NA
1081,
// 1080 NA
- // 1079,
+ // 1079 NA
// 1078 NA
// 1077 NA
1076,
1075,
- // 1074 NA,
- // 1073,
+ // 1074 NA
+ // 1073 NA
1072,
- // 1071,
+ 1071,
// 1070 NA
// 1069 NA
- // 1068,
+ 1068,
// 1067 NA
// 1066 NA
1065,
- // 1064,
+ 1064,
// 1063 NA
// 1062 NA
1061,
// 1060 NA
1059,
- // 1058,
+ // 1058 NA
1057,
- // 1056,
+ 1056,
1055,
1054,
- // 1053,
+ 1053,
1052,
- // 1051,
+ 1051,
1050,
1049,
1048,
@@ -645,7 +1402,7 @@ static int included_patches[] = {
1042,
1041,
// 1040 NA
- // 1039,
+ // 1039 NA
// 1038 NA
1037,
1036,
@@ -653,7 +1410,7 @@ static int included_patches[] = {
1034,
// 1033 NA
1032,
- // 1031 NA,
+ // 1031 NA
1030,
1029,
// 1028 NA
@@ -674,15 +1431,15 @@ static int included_patches[] = {
1013,
// 1012 NA
// 1011 NA
- // 1010 NA,
+ // 1010 NA
// 1009 NA
// 1008 NA
1007,
1006,
- // 1005 NA,
- // 1004 NA,
- // 1003 NA,
- // 1002 NA,
+ // 1005 NA
+ // 1004 NA
+ // 1003 NA
+ // 1002 NA
1001,
1000,
// 999 NA
@@ -780,7 +1537,7 @@ static int included_patches[] = {
// 907 NA
// 906 NA
// 905 NA
- // 904 NA
+ 904,
903,
// 902 NA
901,
@@ -1698,20 +2455,72 @@ static char *(extra_patches[]) = {
NULL
};
-/// Checks whether patch `n` has been included.
+/// Compares a version string to the current Nvim version.
///
-/// @param n The patch number.
+/// @param version Version string like "1.3.42"
///
-/// @return TRUE if patch "n" has been included.
-int has_patch(int n)
+/// @return true if Nvim is at or above the version.
+bool has_nvim_version(char *version_str)
+ FUNC_ATTR_NONNULL_ALL
{
- int i;
- for (i = 0; included_patches[i] != 0; ++i) {
+ char *p = version_str;
+ int major = 0;
+ int minor = 0;
+ int patch = 0;
+
+ if (!ascii_isdigit(*p)) {
+ return false;
+ }
+ major = atoi(p);
+ p = strchr(p, '.'); // Find the next dot.
+
+ if (p) {
+ p++; // Advance past the dot.
+ if (!ascii_isdigit(*p)) {
+ return false;
+ }
+ minor = atoi(p);
+ p = strchr(p, '.');
+ if (p) {
+ p++;
+ if (!ascii_isdigit(*p)) {
+ return false;
+ }
+ patch = atoi(p);
+ }
+ }
+
+ return (major < NVIM_VERSION_MAJOR
+ || (major == NVIM_VERSION_MAJOR
+ && (minor < NVIM_VERSION_MINOR
+ || (minor == NVIM_VERSION_MINOR
+ && patch <= NVIM_VERSION_PATCH))));
+}
+
+/// Checks whether a Vim patch has been included.
+///
+/// @param n Patch number.
+///
+/// @return true if patch `n` has been included.
+bool has_vim_patch(int n)
+{
+ for (int i = 0; included_patches[i] != 0; i++) {
if (included_patches[i] == n) {
- return TRUE;
+ return true;
}
}
- return FALSE;
+ return false;
+}
+
+Dictionary version_dict(void) {
+ Dictionary d = ARRAY_DICT_INIT;
+ PUT(d, "major", INTEGER_OBJ(NVIM_VERSION_MAJOR));
+ PUT(d, "minor", INTEGER_OBJ(NVIM_VERSION_MINOR));
+ PUT(d, "patch", INTEGER_OBJ(NVIM_VERSION_PATCH));
+ PUT(d, "api_level", INTEGER_OBJ(NVIM_API_LEVEL));
+ PUT(d, "api_compatible", INTEGER_OBJ(NVIM_API_LEVEL_COMPAT));
+ PUT(d, "api_prerelease", BOOLEAN_OBJ(NVIM_API_PRERELEASE));
+ return d;
}
void ex_version(exarg_T *eap)
@@ -1770,7 +2579,11 @@ static void list_features(void)
}
} else {
while (msg_col % width) {
+ int old_msg_col = msg_col;
msg_putchar(' ');
+ if (old_msg_col == msg_col) {
+ break; // XXX: Avoid infinite loop.
+ }
}
}
} else {
@@ -1893,23 +2706,16 @@ void intro_message(int colon)
N_(NVIM_VERSION_LONG),
"",
N_("by Bram Moolenaar et al."),
- N_("Vim is open source and freely distributable"),
- "",
- N_("First time using a vi-like editor?"),
- N_("Type :Tutor<Enter> to get started!"),
+ N_("Nvim is open source and freely distributable"),
+ N_("https://neovim.io/community"),
"",
- N_("Already know your way around Vim?"),
- N_("See :help nvim-intro for an introduction to Neovim."),
- "",
- N_("Still have questions?"),
- N_("Reach out to the Neovim community at neovim.io/community."),
+ N_("type :help nvim<Enter> if you are new! "),
+ N_("type :CheckHealth<Enter> to optimize Nvim"),
+ N_("type :q<Enter> to exit "),
+ N_("type :help<Enter> for help "),
"",
N_("Help poor children in Uganda!"),
N_("type :help iccf<Enter> for information "),
- "",
- N_("type :q<Enter> to exit "),
- N_("type :help<Enter> or <F1> for on-line help"),
- N_("type :help nvim<Enter> for Neovim help "),
};
// blanklines = screen height - # message lines
@@ -2011,3 +2817,4 @@ void ex_intro(exarg_T *eap)
intro_message(TRUE);
wait_return(TRUE);
}
+