summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2023-08-28patch 9.0.1815: pango_coverage_unref() deprecated in pango > 1.51v9.0.1815James McCoy
Problem: pango_coverage_unref() deprecated in pango > 1.51 Solution: use g_object_unref() instead closes: #12942 Free PangoCoverage with g_object_unref for Pango >= 1.52 pango_coverage_unref was declared deprecated in Pango 1.52.0 in favor of g_object_unref. Adjust the call when building against a new enough Pango to avoid the deprecation warning. Signed-off-by: James McCoy <jamessan@jamessan.com> Co-authored-by: James McCoy <jamessan@jamessan.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-28patch 9.0.1814: Vim9 no error on duplicate object member varv9.0.1814Yegappan Lakshmanan
Problem: Vim9 no error on duplicate object member var Solution: detect duplicate members and error out closes: #12938 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-28patch 9.0.1813: linebreak incorrect drawn with breakindentv9.0.1813zeertzjq
Problem: 'linebreak' is incorrectly drawn after 'breakindent'. Solution: Don't include 'breakindent' size when already after it. closes: #12937 closes: #12940 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-08-28patch 9.0.1812: CI still fails with sodium_mlock error()v9.0.1812Christian Brabandt
Problem: CI still fails with sodium_mlock error() Solution: Catch and ignore E1230 error in test_crypt closes: #12939 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-27patch 9.0.1811: still some issues with term_debug testv9.0.1811Yegappan Lakshmanan
Problem: still some issues with term_debug test Solution: Use WaitForAssert() closes: #12936 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-27patch 9.0.1810: camel-case spelling has issues with digitsv9.0.1810LemonBoy
Problem: camel-case spelling has issues with digits Solution: Improve the camCase spell checking by taking digits and caps into account Rewrite the conditions to check for word boundaries by taking into account the presence of digits and all-caps sequences such as acronyms. closes: #12644 closes: #12933 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: LemonBoy <thatlemon@gmail.com>
2023-08-27patch 9.0.1809: termdebug test flaykv9.0.1809Christian Brabandt
Problem: termdebug test flayk Solution: wait slightly longer Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-27patch 9.0.1808: termdebug: Typo in termdebug testv9.0.1808Christian Brabandt
Problem: termdebug: Typo in termdebug test Solution: fix the typos Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-27patch 9.0.1807: runtime: crystal scripts not recognisedv9.0.1807Doug Kearns
Problem: runtime: crystal scripts not recognised Solution: Filetype detect Crystal scripts by shebang line closes: #12935 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2023-08-27patch 9.0.1806: Vim9: bogus error on exportv9.0.1806LemonBoy
Problem: Vim9: bogus error on export Solution: Don't error out when the export command is not executed closes: #12912 closes: #12930 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: LemonBoy <thatlemon@gmail.com>
2023-08-27patch 9.0.1805: Vim9: problem compiling object method as function call argv9.0.1805Yegappan Lakshmanan
Problem: Vim9: problem compiling object method as function call arg Solution: After a object/class method call, remove the object/class from the stack. closes: #12081 closes: #12929 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-27patch 9.0.1804: Vim9: no support for private object methodsv9.0.1804Yegappan Lakshmanan
Problem: Vim9: no support for private object methods Solution: Add support for private object/class methods closes: #12920 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-27patch 9.0.1803: runtime(filetype): Add norg language detectionv9.0.1803NTBBloodbath
runtime(filetype): Add norg markup language detection closes: #12913 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: NTBBloodbath <bloodbathalchemist@protonmail.com>
2023-08-27patch 9.0.1802: Multiline regex with Visual selection fails with virtual textv9.0.1802zeertzjq
Problem: Multiline regex with Visual selection fails when Visual selection contains virtual text after last char. Solution: Only include virtual text after last char when getting full line length. closes: #12908 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-08-27patch 9.0.1801: Vim9 instanceof() fails in a def funcv9.0.1801Yegappan Lakshmanan
Problem: Vim9 instanceof() fails in a def func Solution: allow Objects in compile time check closes: #12907 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-27patch 9.0.1800: Cursor position still wrong with 'showbreak' and virtual textv9.0.1800zeertzjq
Problem: Cursor position still wrong with 'showbreak' and virtual text after last character or 'listchars' "eol". Solution: Remove unnecessary w_wcol adjustment in curs_columns(). Also fix first char of virtual text not shown at the start of a screen line. closes: #12478 closes: #12532 closes: #12904 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-08-27patch 9.0.1799: Russian menu translation can be improvedv9.0.1799RestorerZ
Problem: Russian menu translation can be improved Solution: update the Russian menu files closes: #12903 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: RestorerZ <restorer@mail2k.ru>
2023-08-27patch 9.0.1798: The 'syntax' option has no completion.v9.0.1798Doug Kearns
Problem: The 'syntax' option has no completion. Solution: Add syntax option completion. closes: #12900 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2023-08-27patch 9.0.1797: Vimball/Visual Basic filetype detection conflictv9.0.1797Doug Kearns
Problem: Vimball/Visual Basic filetype detection conflict Solution: runtime(vb): Improve Vimball and Visual Basic detection logic Only run Vimball Archiver's BufEnter autocommand on Vimball archives. Fixes #2694. closes: #12899 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2023-08-27patch 9.0.1796: Vim9 problems with null_objectsv9.0.1796Ernie Rael
Problem: Vim9 problems with null_objects Solution: Vim9 improve null_object usage Fix "xvar == null", where xvar might have been assigned null_object. Fix compilation failure: "var o2: C = null_object". closes: #12890 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ernie Rael <errael@raelity.com>
2023-08-27patch 9.0.1795: Indentation issuesv9.0.1795Yegappan Lakshmanan
Problem: Indentation issues Solution: Fix code indentation issues. closes: #12906 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-27patch 9.0.1794: autoconf: not correctly detecing include dirsv9.0.1794Illia Bobyr
Problem: autoconf: not correctly detecing include dirs Solution: make use of python3 to generate includedirs configure: Python3: Use sysconfig for -I It seems better to use tools provided by Python for determining the include directories, rather than construct them "manually". Current system is broken when using virtual environments for python 3.11.4. It used to work before, but now it detects a incorrect value for `-I`. It would probably make sense to switch to a similar logic for lib folders, that is for the `-l` switch. There are also `sysconfig.get_config_h_filename()` and `sysconfig.get_makefile_filename()`, that could replace more Python specific logic in the current `configure{.ac,}`. sysconfig provides the necessary tools since Python 2.7. closes: #12889 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Illia Bobyr <illia.bobyr@gmail.com>
2023-08-27patch 9.0.1793: obsolete macros in configure scriptv9.0.1793Illia Bobyr
Problem: obsolete macros in configure script Solution: Remove those and start moving to autoconf 2.71 src/configure.ac: Remove obsolete macros These macros are declared obsolete in autoconf 2.69, which is almost 10 years old by now: https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html They generate warnings when in a subsequent upgrade to autoconf 2.71. `autoupdate` from autoupdate 2.71 suggests most of these changes, except that it also adds obsolete warnings, that where individually checked and removed. Regenerated `src/auto/configure` by running: cd src autoconf2.69 --output=auto/configure configure.ac sed --in-place --expression='s@>config.log@>auto/config.log@g' auto/configure closes: #12888 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Illia Bobyr <illia.bobyr@gmail.com>
2023-08-27patch 9.0.1792: problem with gj/gk/gM and virtual textv9.0.1792zeertzjq
Problem: Normal mode "gM", "gj", "gk" commands behave incorrectly with virtual text. Solution: Use linetabsize() instead of linetabsize_str(). closes: #12909 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-08-27patch 9.0.1791: No tests for the termdebug pluginv9.0.1791Yegappan Lakshmanan
Problem: No tests for the termdebug plugin Solution: Add some simple tests for the termdebug plugin closes: #12927 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-27patch 9.0.1790: Redundant LSP Content-Type headerv9.0.1790Magnus Groß
Problem: The Content-Type header is an optional header that some LSP servers struggle with and may crash when encountering it. Solution: Drop the Content-Type header from all messages, because we use the default value anyway. Because pretty much all popular LSP clients (e.g. coc.nvim, VSCode) do not send the Content-Type header, the LSP server ecosystem has developed such that some LSP servers may even crash when encountering it. To improve compatibility with these misbehaving LSP servers, we drop this header as well. Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Magnus Groß <magnus@mggross.com>
2023-08-27translation(ua): Refine (synchronize with Neovim) (#12928)Anatolii Sakhnik
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-26patch 9.0.1789: too early declaration of variable in pum_set_selected()v9.0.1789mathew
Problem: too early declaration of variable in pum_set_selected() Solution: Move declaration to where it is actually used closes: #12915 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: mathew <glephunter@gmail.com>
2023-08-26patch 9.0.1788: C4090 warnings in strings.cv9.0.1788K.Takata
Problem: C4090 warnings in strings.c Solution: Add type casts closes: #12917 MSVC shows the following warnings: ``` strings.c(2436): warning C4090: 'function': different 'const' qualifiers strings.c(2774): warning C4090: 'function': different 'const' qualifiers strings.c(3865): warning C4090: 'function': different 'const' qualifiers ``` So add type casts to suppress them. Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ken .Takata <kentkt@csc.jp>
2023-08-26translation(ua): Update Ukrainian translation (#12916)Anatolii Sakhnik
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-26translation(ir): Updated irish translation (#12918)Kevin Scannell
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-24patch 9.0.1787: Cannot build with latest luajitv9.0.1787Christian Brabandt
Problem: Cannot build with latest luajit Solution: adjust sed regexp and don't expect '-' in version output closes: #12896 Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-23patch 9.0.1786: Vim9: need instanceof() functionv9.0.1786LemonBoy
Problem: Vim9: need instanceof() function Solution: Implement instanceof() builtin Implemented in the same form as Python's isinstance because it allows for checking multiple class types at the same time. closes: #12867 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: LemonBoy <thatlemon@gmail.com>
2023-08-23patch 9.0.1785: wrong cursor position with 'showbreak' and lcs-eolv9.0.1785zeertzjq
Problem: wrong cursor position with 'showbreak' and lcs-eol Solution: Add size of 'showbreak' before when 'listchars' "eol" is used. Also fix wrong cursor position with wrapping virtual text on empty line and 'showbreak'. closes: #12891 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-08-23patch 9.0.1784: redundant else in pum_set_selected()v9.0.1784mathew
Problem: redundant else in pum_set_selected() Solution: Remove it closes: #12893 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: mathew <glephunter@gmail.com>
2023-08-23Translation(tr): Update Turkish translations (#12897)Emir SARI
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-22Translations(it): Update po and menus for itAntonio Giovanni Colombo
Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-22patch 9.0.1783: Display issues with virt text smoothscroll and showbreakv9.0.1783zeertzjq
Problem: Wrong display with wrapping virtual text or unprintable chars, 'showbreak' and 'smoothscroll'. Solution: Don't skip cells taken by 'showbreak' in screen lines before "w_skipcol". Combined "n_skip" and "skip_cells". closes: #12597 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-08-22patch 9.0.1782: prop_list() does not return text_padding_leftv9.0.1782Yegappan Lakshmanan
Problem: prop_list() does not return text_padding_left Solution: Store and return the text_padding_left value for text properties closes: #12870 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2023-08-22patch 9.0.1781: Problems when setting bin/paste optionv9.0.1781Christian Brabandt
Problem: Problems when setting bin/paste option Solution: When setting binary/paste, remember that this also affects depending options, so that :verbose set returns the right location. Mention if depending options for 'binary' or 'paste' have been reset indirectly. Add a test to verify it works. Also noticed as small bug, that the global option value for expandtab was not reset when paste option is set, so fix that while at it. closes: #12837 closes: #12879 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
2023-08-22patch 9.0.1780: Vim9 type not defined during object creationv9.0.1780Yegappan Lakshmanan
Problem: Vim9 type not defined during object creation Solution: Define type during object creation and not during class definition, parse mulit-line member initializers, fix lock initialization If type is not specified for a member, set it during object creation instead of during class definition. Add a runtime type check for the object member initialization expression Also, while at it, when copying an object or class, make sure the lock is correctly initialized. And finally, parse multi-line member initializers correctly. closes: #11957 closes: #12868 closes: #12869 closes: #12881 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com> Co-authored-by: LemonBoy <thatlemon@gmail.com>
2023-08-22patch 9.0.1779: Need more state() testsv9.0.1779zeertzjq
Problem: Need more state() tests Solution: Add a few more tests for operater pending mode and register yank command closes: #12883 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: author
2023-08-20patch 9.0.1778: if_py_both: code-style issuev9.0.1778Christian Brabandt
Problem: if_py_both: code-style issue Solution: add space Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-20patch 9.0.1777: patch 9.0.1771 causes problemsv9.0.1777Christian Brabandt
Problem: patch 9.0.1771 causes problems Solution: revert it Revert "patch 9.0.1771: regex: combining chars in collections not handled" This reverts commit ca22fc36a4e8a315f199893ee8ff6253573f5fbe. Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-08-20patch 9.0.1776: No support for stable Python 3 ABIv9.0.1776Yee Cheng Chin
Problem: No support for stable Python 3 ABI Solution: Support Python 3 stable ABI Commits: 1) Support Python 3 stable ABI to allow mixed version interoperatbility Vim currently supports embedding Python for use with plugins, and the "dynamic" linking option allows the user to specify a locally installed version of Python by setting `pythonthreedll`. However, one caveat is that the Python 3 libs are not binary compatible across minor versions, and mixing versions can potentially be dangerous (e.g. let's say Vim was linked against the Python 3.10 SDK, but the user sets `pythonthreedll` to a 3.11 lib). Usually, nothing bad happens, but in theory this could lead to crashes, memory corruption, and other unpredictable behaviors. It's also difficult for the user to tell something is wrong because Vim has no way of reporting what Python 3 version Vim was linked with. For Vim installed via a package manager, this usually isn't an issue because all the dependencies would already be figured out. For prebuilt Vim binaries like MacVim (my motivation for working on this), AppImage, and Win32 installer this could potentially be an issue as usually a single binary is distributed. This is more tricky when a new Python version is released, as there's a chicken-and-egg issue with deciding what Python version to build against and hard to keep in sync when a new Python version just drops and we have a mix of users of different Python versions, and a user just blindly upgrading to a new Python could lead to bad interactions with Vim. Python 3 does have a solution for this problem: stable ABI / limited API (see https://docs.python.org/3/c-api/stable.html). The C SDK limits the API to a set of functions that are promised to be stable across versions. This pull request adds an ifdef config that allows us to turn it on when building Vim. Vim binaries built with this option should be safe to freely link with any Python 3 libraies without having the constraint of having to use the same minor version. Note: Python 2 has no such concept and this doesn't change how Python 2 integration works (not that there is going to be a new version of Python 2 that would cause compatibility issues in the future anyway). --- Technical details: ====== The stable ABI can be accessed when we compile with the Python 3 limited API (by defining `Py_LIMITED_API`). The Python 3 code (in `if_python3.c` and `if_py_both.h`) would now handle this and switch to limited API mode. Without it set, Vim will still use the full API as before so this is an opt-in change. The main difference is that `PyType_Object` is now an opaque struct that we can't directly create "static types" out of, and we have to create type objects as "heap types" instead. This is because the struct is not stable and changes from version to version (e.g. 3.8 added a `tp_vectorcall` field to it). I had to change all the types to be allocated on the heap instead with just a pointer to them. Other functions are also simply missing in limited API, or they are introduced too late (e.g. `PyUnicode_AsUTF8AndSize` in 3.10) to it that we need some other ways to do the same thing, so I had to abstract a few things into macros, and sometimes re-implement functions like `PyObject_NEW`. One caveat is that in limited API, `OutputType` (used for replacing `sys.stdout`) no longer inherits from `PyStdPrinter_Type` which I don't think has any real issue other than minor differences in how they convert to a string and missing a couple functions like `mode()` and `fileno()`. Also fixed an existing bug where `tp_basicsize` was set incorrectly for `BufferObject`, `TabListObject, `WinListObject`. Technically, there could be a small performance drop, there is a little more indirection with accessing type objects, and some APIs like `PyUnicode_AsUTF8AndSize` are missing, but in practice I didn't see any difference, and any well-written Python plugin should try to avoid excessing callbacks to the `vim` module in Python anyway. I only tested limited API mode down to Python 3.7, which seemes to compile and work fine. I haven't tried earlier Python versions. 2) Fix PyIter_Check on older Python vers / type##Ptr unused warning For PyIter_Check, older versions exposed them as either macros (used in full API), or a function (for use in limited API). A previous change exposed PyIter_Check to the dynamic build because Python just moved it to function-only in 3.10 anyway. Because of that, just make sure we always grab the function in dynamic builds in earlier versions since that's what Python eventually did anyway. 3) Move Py_LIMITED_API define to configure script Can now use --with-python-stable-abi flag to customize what stable ABI version to target. Can also use an env var to do so as well. 4) Show +python/dyn-stable in :version, and allow has() feature query Not sure if the "/dyn-stable" suffix would break things, or whether we should do it another way. Or just don't show it in version and rely on has() feature checking. 5) Documentation first draft. Still need to implement v:python3_version 6) Fix PyIter_Check build breaks when compiling against Python 3.8 7) Add CI coverage stable ABI on Linux/Windows / make configurable on Windows This adds configurable options for Windows make files (both MinGW and MSVC). CI will also now exercise both traditional full API and stable ABI for Linux and Windows in the matrix for coverage. Also added a "dynamic" option to Linux matrix as a drive-by change to make other scripting languages like Ruby / Perl testable under both static and dynamic builds. 8) Fix inaccuracy in Windows docs Python's own docs are confusing but you don't actually want to use `python3.dll` for the dynamic linkage. 9) Add generated autoconf file 10) Add v:python3_version support This variable indicates the version of Python3 that Vim was built against (PY_VERSION_HEX), and will be useful to check whether the Python library you are loading in dynamically actually fits it. When built with stable ABI, it will be the limited ABI version instead (`Py_LIMITED_API`), which indicates the minimum version of Python 3 the user should have, rather than the exact match. When stable ABI is used, we won't be exposing PY_VERSION_HEX in this var because it just doesn't seem necessary to do so (the whole point of stable ABI is the promise that it will work across versions), and I don't want to confuse the user with too many variables. Also, cleaned up some documentation, and added help tags. 11) Fix Python 3.7 compat issues Fix a couple issues when using limited API < 3.8 - Crash on exit: In Python 3.7, if a heap-allocated type is destroyed before all instances are, it would cause a crash later. This happens when we destroyed `OptionsType` before calling `Py_Finalize` when using the limited API. To make it worse, later versions changed the semantics and now each instance has a strong reference to its own type and the recommendation has changed to have each instance de-ref its own type and have its type in GC traversal. To avoid dealing with these cross-version variations, we just don't free the heap type. They are static types in non-limited-API anyway and are designed to last through the entirety of the app, and we also don't restart the Python runtime and therefore do not need it to have absolutely 0 leaks. See: - https://docs.python.org/3/whatsnew/3.8.html#changes-in-the-c-api - https://docs.python.org/3/whatsnew/3.9.html#changes-in-the-c-api - PyIter_Check: This function is not provided in limited APIs older than 3.8. Previously I was trying to mock it out using manual PyType_GetSlot() but it was brittle and also does not actually work properly for static types (it will generate a Python error). Just return false. It does mean using limited API < 3.8 is not recommended as you lose the functionality to handle iterators, but from playing with plugins I couldn't find it to be an issue. - Fix loading of PyIter_Check so it will be done when limited API < 3.8. Otherwise loading a 3.7 Python lib will fail even if limited API was specified to use it. 12) Make sure to only load `PyUnicode_AsUTF8AndSize` in needed in limited API We don't use this function unless limited API >= 3.10, but we were loading it regardless. Usually it's ok in Unix-like systems where Python just has a single lib that we load from, but in Windows where there is a separate python3.dll this would not work as the symbol would not have been exposed in this more limited DLL file. This makes it much clearer under what condition is this function needed. closes: #12032 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
2023-08-20patch 9.0.1775: Wrong comparison in vim9type.cv9.0.1775Johan Mattsson
Problem: Wrong comparison in vim9type.c Solution: Change condition to false closes: #12047 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Johan Mattsson <39247600+mjunix@users.noreply.github.com>
2023-08-20patch 9.0.1774: no support for custom cmdline completionv9.0.1774Shougo Matsushita
Problem: no support for custom cmdline completion Solution: Add new vimscript functions Add the following two functions: - getcmdcompltype() returns custom and customlist functions - getcompletion() supports both custom and customlist closes: #12228 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com>
2023-08-20patch 9.0.1773: cannot distinguish Forth and Fortran *.f filesv9.0.1773Doug Kearns
Problem: cannot distinguish Forth and Fortran *.f files Solution: Add Filetype detection Code Also add *.4th as a Forth filetype closes: #12251 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2023-08-20patch 9.0.1772: Cursor may be adjusted in 'splitkeep'ed windowsv9.0.1772Luuk van Baal
Problem: Cursor is adjusted in window that did not change in size by 'splitkeep'. Solution: Only check that cursor position is valid in a window that has changed in size. closes: #12509 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Luuk van Baal <luukvbaal@gmail.com>
2023-08-20patch 9.0.1771: regex: combining chars in collections not handledv9.0.1771Christian Brabandt
Problem: regex: combining chars in collections not handled Solution: Check for following combining characters for NFA and BT engine closes: #10459 closes: #10286 Signed-off-by: Christian Brabandt <cb@256bit.org>