Commit Graph

34265 Commits

Author SHA1 Message Date
zeertzjq
046c9b678c vim-patch:8e600ad: runtime(doc): Normalise heredoc end marker label at :help const
Match the name used at :help :let-heredoc, {endmarker}.

closes: vim/vim#18638

8e600aded2

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2025-10-27 08:20:14 +08:00
zeertzjq
9436e7c978 fix(spell): wrong VimEnter autocommands (#36339) 2025-10-27 08:13:06 +08:00
zeertzjq
f0cf488698 vim-patch:9.1.1877: cindent: wrong indentation after an array declaration (#36340)
Problem:  cindent: wrong indentation after an array declaration
Solution: check if the filetype if javascript before matching the syntax
          (Anttoni Erkkilä)

cindent matches a javascript syntax for C files causing wrong
indentation in the following case:
```
void foo() {
float a[5],
b;
}
```

closes: vim/vim#18631

61ef8a3db9

Co-authored-by: Anttoni Erkkilä <anttoni.erkkila@protonmail.com>
2025-10-27 00:06:25 +00:00
zeertzjq
d707ccf988 fix(api): inconsistent scrolling when deleting before topline (#36301)
Problem:  Inconsistent scrolling when deleting before topline with API.
Solution: Only special-case inserting just before topline, not deleting.
2025-10-27 07:53:15 +08:00
zeertzjq
2407833ba1 vim-patch:9.1.1872: Cmdline history not updated when mapping <Up> and <CR> (#36334)
Problem:  Cmdline history not updated when mapping both <Up> and <CR>.
Solution: Consider the command typed when in Cmdline mode and there is
          no pending input (zeertzjq).

Although the existing behavior technically does match documentation, the
"completely come from mappings" part is a bit ambiguous, because one may
argue that the command doesn't completely come from mappings as long as
the user has typed a key in Cmdline mode.  I'm not entirely sure if this
change will cause problems, but it seems unlikely.

fixes: vim/vim#2771
related: neovim/neovim#36256
closes: vim/vim#18607

97b6e8b424
2025-10-26 22:19:32 +08:00
Justin M. Keyes
07461bac27 Merge #34940 refactor(spell): migrate to Lua, drop netrw dep 2025-10-25 20:08:02 -04:00
Justin M. Keyes
4d501c93bb refactor(spell): cleanup
- prefer `stdpath(data)/site/spell` instead of looking for random dirs in 'runtimepath'.
- drop unused functions `choose_directory`, `setup`, etc.
2025-10-26 01:28:37 +02:00
zeertzjq
a121ede1bf vim-patch:7193cab: runtime(make): Prevent makeTargetinDefine matching extra line
This fixes a bug introduced in 2a33b499a3d7f46dc307234847a6562cef6cf1d8:
When makeTargetinDefine ends with makeIdent, makeSpecTarget or
makeComment, the following line is also matched as makeTargetinDefine.

So, add keepend to prevent that just as makeTarget does.

related: vim/vim#18403
closes: vim/vim#18570

7193cab6c8

Co-authored-by: Yiyang Wu <xgreenlandforwyy@gmail.com>
2025-10-26 07:22:59 +08:00
zeertzjq
4a2b9ec3c7 vim-patch:bbf4a10: runtime(unison): update syntax from upstream repository
closes: vim/vim#18623

bbf4a10fe4

Co-authored-by: Anton Parkhomenko <mailbox@chuwy.me>
2025-10-26 07:22:59 +08:00
Tom Ampuero
7c5ff99e8a refactor(spell): migrate to Lua, drop netrw dependency
Problem:
Spell file downloads relied on Vimscript and netrw (:Nread). If netrw is
disabled, downloads fail.

Solution:
Port the logic to Lua as `nvim.spellfile` and wire it via a Lua plugin that
handles `SpellFileMissing`. Use `vim.net.request()` with a timeout for HTTP,
prompt via `vim.fn.input` and report via `vim.notify`.

Closes #7189
2025-10-26 00:33:41 +02:00
Jan Edmund Lazo
b38ce04283 vim-patch:8.1.1939: code for handling v: variables in generic eval file (#36312)
Problem:    Code for handling v: variables in generic eval file.
Solution:   Move v: variables to evalvars.c. (Yegappan Lakshmanan,
            closes vim/vim#4872)

e5cdf153bc

Cherry-pick get_vim_var_name() from 8.2.0149.
Cherry-pick evalvars.c changes from 8.2.1788.

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2025-10-26 06:20:33 +08:00
zeertzjq
df23952ce9 fix(tui): don't treat remote TUI as GUI (#36319)
Set "stdin_tty" and "stdout_tty" UI options, so that a remote TUI is not
treated as a GUI.
2025-10-26 06:18:13 +08:00
skewb1k
e239179871 fix(lsp): ensure bufnr is passed for buffer-local requests (#36325)
Problem:
Some LSP method handlers were making requests without specifying a
bufnr, defaulting to 0 (current). This works in most cases but
fails when client attaches to background buffers, causing
assertions in handlers to fail.

Solution:
Ensure bufnr is passed to Client.request for buffer-local methods.
2025-10-25 14:51:13 -07:00
zeertzjq
5db3544991 vim-patch:9.1.1871: Wrong 'showcmd' in the cmdwin (#36320)
Problem:  Wrong 'showcmd' in the command-line window.
Solution: Clear 'showcmd' when entering cmdwin (zeertzjq).

related: neovim/neovim#36271
closes: vim/vim#18616

826326f13b
2025-10-25 22:16:05 +08:00
Justin M. Keyes
fe4faaf81a docs: dev-quickstart, dev-test #36304 2025-10-24 17:24:51 -07:00
zeertzjq
737dd83d1f vim-patch:9.1.1869: tests: test failures with Python 3.14 and test_python3 (#36310)
Problem:  tests: test failures with Python 3.14 and test_python3
Solution: Adjust the expected error message (Yee Cheng Chin)

Python 3.14 changed the error message from "argument must be 2-item
sequence" to "argument must be 2-item tuple". Fix test to account for
that. Otherwise the error message for the `vim.current.window.cursor =
True` line would not match.

closes: vim/vim#18629

6cb995970e

Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
2025-10-25 08:02:41 +08:00
zeertzjq
520568f40f fix(terminal): adjust marks when deleting scrollback lines (#36294)
This also fixes inconsistent scrolling behavior on terminal output when
cursor is in the middle of the buffer and the scrollback is full.
2025-10-25 06:48:04 +08:00
luukvbaal
d909de2dc2 fix(ui): ignore textlock for vim.ui_attach() callbacks #36278
Problem:  vim.ui_attach() callbacks may run into E565 textlock errors.
Solution: Changing text in UI buffers must be safe; assume it is.
2025-10-24 14:40:21 -07:00
github-actions[bot]
470585b5d0 docs: update version.c #36204
vim-patch:8.1.2194: modifyOtherKeys is not enabled by default

vim-patch:8.2.0513: reading past allocate memory when using varargs
vim-patch:8.2.0556: Vim9: memory leak when finding common type
vim-patch:8.2.1446: Vim9: line number in error message is not correct
vim-patch:8.2.1680: Vim9: line number for compare error is wrong
vim-patch:8.2.1817: Vim9: wrong instruction when reusing a local variable spot
vim-patch:8.2.2159: Vim9: when declaring a list it is not allocated yet
vim-patch:8.2.2210: Vim9: allocating a type to set TTFLAG_BOOL_OK
vim-patch:8.2.2550: signal stack size is wrong with latest glibc 2.34
vim-patch:8.2.2585: Vim9: illegal memory access
vim-patch:8.2.2615: test is sourcing the wrong file
vim-patch:8.2.2791: Vim9: memory leak when using \=expr in :substitute
vim-patch:8.2.3065: Vim9: error when sourcing script twice and reusing function
vim-patch:8.2.3310: Vim9: unpack assignment does not mention source of type error
vim-patch:8.2.3327: no check for sysconf() failing
vim-patch:8.2.4558: Motif: using default colors does not work as expected

vim-patch:9.0.0039: not all systems have GDK_KEY_dead_circumflex
vim-patch:9.0.0068: build fails with tiny features
vim-patch:9.0.0074: Coverity warns for double free
vim-patch:9.0.0172: trying to allocate zero bytes
vim-patch:9.0.0209: build error with small features
vim-patch:9.0.0239: build failure without the +wildmenu feature
vim-patch:9.0.0255: build failure without the eval feature
vim-patch:9.0.0290: compiler warning for variable set but not used
vim-patch:9.0.0367: Coverity complains about dropping sign of character
vim-patch:9.0.0368: old Coverity warning for using NULL pointer
vim-patch:9.0.0467: build failure
vim-patch:9.0.0494: small build misses float function declaraitons
vim-patch:9.0.0501: warning for using uninitialized value in mouse test
vim-patch:9.0.0503: build failure
vim-patch:9.0.0504: still a build failure
vim-patch:9.0.0522: build fails on Appveyor
vim-patch:9.0.0624: leaking argument type array
vim-patch:9.0.0628: Coverity warns for not checking return value
vim-patch:9.0.0658: tiny build fails on Mac OS
vim-patch:9.0.0685: FORTIFY_SOURCE causes a crash in Vim9 script
vim-patch:9.0.0689: compiler warning for unused function
vim-patch:9.0.0717: compiler warning for unused variable in tiny build
vim-patch:9.0.0787: mouse scrolling in terminal misbehaves without dll
vim-patch:9.0.0792: MS-Windows: compiler complains about unused function
vim-patch:9.0.0832: deprecation warning causes build failure
vim-patch:9.0.0838: compiler warnings for unused variables
vim-patch:9.0.0921: missing defined(PROTO) in #ifdef
vim-patch:9.0.0929: build failure with tiny version
vim-patch:9.0.0972: build failure on some systems
vim-patch:9.0.0981: build error in tiny version
vim-patch:9.0.0986: build failure with tiny version
vim-patch:9.0.0997: Coverity warns for dead code
vim-patch:9.0.1003: tiny build fails
vim-patch:9.0.1037: lalloc(0) error for a class without members
vim-patch:9.0.1055: Coverity warns for using uninitialized memory
vim-patch:9.0.1059: build failure with some compilers
vim-patch:9.0.1075: build fails if compiler doesn't allow declaration after case
vim-patch:9.0.1102: complicated use of #ifdef
vim-patch:9.0.1109: leaking allocated type
vim-patch:9.0.1110: build fails on Mac OS X 10.4/10.5
vim-patch:9.0.1116: compiler may complain about an unused function
vim-patch:9.0.1131: build failure without the +eval feature
vim-patch:9.0.1153: build error with some compilers
vim-patch:9.0.1154: Coverity warns for dead code
vim-patch:9.0.1162: configure does not handle all FORTIFY_SOURCE variants
vim-patch:9.0.1173: compiler warning for unused variable on non-Unix systems
vim-patch:9.0.1180: compiler warnings without the +job feature
vim-patch:9.0.1216: Coverity warns for ignoring return value
vim-patch:9.0.1219: handling of FORTIFY_SOURCE flags doesn't match Fedora usage
vim-patch:9.0.1260: Coverity warns for possible NULL pointer usage
vim-patch:9.0.1323: build failure with +eval feature
vim-patch:9.0.1340: Coverity warns for using NULL pointer
vim-patch:9.0.1341: build error with mzscheme but without GUI
vim-patch:9.0.1364: build error with older Mac OS
vim-patch:9.0.1420: build failure because SIZE_MAX is not defined
vim-patch:9.0.1465: Haiku build fails
vim-patch:9.0.1642: build failure with tiny features
vim-patch:9.0.1780: Vim9 type not defined during object creation
vim-patch:9.0.1850: Vim9: wrong line number where options set
vim-patch:9.0.1902: Vim9: Coverity complains about dead code
vim-patch:9.0.1905: FEAT_FLOAT no longer defined
vim-patch:9.0.1988: Vim9: potential use-after-free for class members
vim-patch:9.0.1993: warning about unused function definition
vim-patch:9.0.2003: xxd: compilation warning
vim-patch:9.0.2014: confusing ifdefs in if_<lang>.c
vim-patch:9.0.2048: python: uninitialized warning
vim-patch:9.0.2115: crash when callback function aborts because of recursiveness
vim-patch:9.0.2120: un-used assignment in do_source_buffer_init
vim-patch:9.0.2129: [security]: use-after-free in call_dfunc()
vim-patch:9.0.2166: Memory leak in Configure Script when checking GTK
vim-patch:9.0.2175: Compiler warning for uninitialized var
vim-patch:9.0.2185: Coverity complains about not checking return value

vim-patch:9.1.0018: use of #if instead of #ifdef
vim-patch:9.1.0031: Link Error on Windows
vim-patch:9.1.0036: MS-Windows: Warning about unused variable
vim-patch:9.1.0072: Not able to build without FEAT_DIFF
vim-patch:9.1.0203: build-error on GNU/Hurd
vim-patch:9.1.0209: leaking memory in exe_newdict() on error
vim-patch:9.1.0210: Motif: leaking memory when mui_mch_dialog() fails
vim-patch:9.1.0298: MS-Windows: GETTEXT_PATH hard-coded in src/po/Make_mvc.mak
vim-patch:9.1.0346: Patch v9.1.0338 fixed sourcing a script with import
vim-patch:9.1.0362: expanding rc config files does not work well
vim-patch:9.1.0432: Ancient XPM preprocessor hack may cause build errors
vim-patch:9.1.0530: xxd: MSVC warning about non-ASCII character
vim-patch:9.1.0561: netbeans: variable used un-initialized (Coverity)
vim-patch:9.1.0609: outdated comments in Makefile
vim-patch:9.1.0621: MS-Windows: startup code can be improved
vim-patch:9.1.0627: MinGW: build-error when COVERAGE is enabled
vim-patch:9.1.0630: MS-Windows: build fails with VIMDLL and mzscheme
vim-patch:9.1.0825: compile error for non-diff builds
vim-patch:9.1.0829: Vim source code uses a mix of tabs and spaces
vim-patch:9.1.0842: not checking for the sync() systemcall
vim-patch:9.1.0858: Coverity complains about dead code
vim-patch:9.1.0947: short-description
vim-patch:9.1.0959: Coverity complains about type conversion
vim-patch:9.1.0970: VMS: build errors on VMS architecture
vim-patch:9.1.1032: link error when FEAT_SPELL not defined
vim-patch:9.1.1041: Vim9: out-of-bound access when echoing an enum
vim-patch:9.1.1079: GUI late startup leads to uninitialized scrollbars
vim-patch:9.1.1153: build error on Haiku
vim-patch:9.1.1199: gvim uses hardcoded xpm icon file
vim-patch:9.1.1248: compile error when building without FEAT_QUICKFIX
vim-patch:9.1.1251: if_python: build error with tuples and dynamic python
vim-patch:9.1.1270: missing out-of-memory checks in buffer.c
vim-patch:9.1.1316: missing memory allocation failure in os_mswin.c
vim-patch:9.1.1440: too many strlen() calls in os_win32.c
rim-patch:9.1.1514: Coverity complains about the use of tmpfile()
vim-patch:9.1.1547: Wayland: missing ifdef
vim-patch:9.1.1580: possible memory leak in vim9type.c
vim-patch:9.1.1581: possible memory leak in vim9generics.c
vim-patch:9.1.1624: Cscope not enabled on MacOS
vim-patch:9.1.1661: Coverity finds a few issues in clientserver.c
vim-patch:9.1.1662: Issues with proto files: missing or inconsistent prototypes.
vim-patch:9.1.1677: wrong ifdef in message.c
vim-patch:9.1.1678: Amiga: cannot handle large undo files
vim-patch:9.1.1705: time.h include is available on all platforms
vim-patch:9.1.1707: diff.pro contains #ifdefs
vim-patch:9.1.1716: wrong indent in win_line()
vim-patch:9.1.1723: Missing ifdefs
vim-patch:9.1.1793: Link error when build without channel feature
vim-patch:9.1.1804: Wrong indentation of nested ifdefs in findfile.c
vim-patch:9.1.1806: Missing PROTO defines
vim-patch:9.1.1842: MS-Windows: build failure when mzscheme is included
vim-patch:9.1.1851: memory leak in heredoc_get()
vim-patch:9.1.1852: vim9class: memory leak in parse_member()
2025-10-24 06:45:08 -07:00
xvzc
095b9f98f3 fix(filetype): handle invalid bufnr in _getlines(), _getline() #36272
**Problem:**
`vim.filetype.match({ filename = 'a.sh' })` returns `nil` because
an invalid buffer ID is passed to `vim.api.nvim_buf_get_lines()`.
For filetypes like `csh`, `txt`, or any other extensions that call
`_getlines()` or `_getline()` to detect their filetypes, the same
issue occurs.

When only the `filename` argument is passed, an error is raised
inside a `pcall()` that wraps the filetype detection function,
causing it to return no value without showing any error message.

**Solution:**
Validate the `bufnr` value in `_getlines()` and `_getline()`.
2025-10-23 17:34:12 -07:00
Justin M. Keyes
c05ff026bc Merge #36028 docs 2025-10-23 20:15:52 -04:00
Justin M. Keyes
a983e69708 docs: dev_tools, dev_arch 2025-10-24 02:14:29 +02:00
Justin M. Keyes
1f2883e879 fix(outline): use 2-space indent instead of 1-space
2 spaces is more visually distinct at very little cost.
2025-10-24 02:07:37 +02:00
Justin M. Keyes
6f8ef3bdb4 docs(faq): h3 => h2 2025-10-24 02:07:37 +02:00
Justin M. Keyes
7838c242e9 docs: types, news, lua-plugin
- mention "lua_ls", not "luals". https://github.com/neovim/neovim/discussions/36182

Co-authored-by: Maria Solano <majosolano99@gmail.com>
2025-10-24 02:07:37 +02:00
glepnir
07d0da64ed feat(ui): overlay scrollbar on 'pumborder' #36273
Problem: When pumborder is set, the scrollbar still occupies
a column on the screen, wasting a 1 column of space.

Solution: Render the scrollbar on the right/left (rl mode) side
of the border when pumborder is set.
2025-10-23 15:44:02 -07:00
Justin M. Keyes
4129fa5bac Merge #36299 improve PackChanged event 2025-10-23 18:29:24 -04:00
zeertzjq
67832710a5 fix(terminal): wrong row in TermRequest with full scrollback (#36298)
Problem:  Wrong row in TermRequest with full scrollback.
Solution: Subtract by the number of lines deleted from scrollback.
2025-10-24 06:01:13 +08:00
Evgeni Chasnovski
83f7d98518 docs(pack): add plugin hooks example
Problem: No examples of how to use `PackChanged[Pre]` for plugin hooks.

Solution: Add examples of creating plugin hooks.
2025-10-23 20:28:13 +03:00
Evgeni Chasnovski
16a6559ec6 fix(pack)!: do not trigger PackChanged[Pre] kind=update during install
Problem: `PackChanged[Pre]` events with `kind=update` are triggered both
  during plugin's initial installation and after already installed
  plugin was updated.

  It was a deliberate decision to allow writing only a single update
  hook to act as a dedicated "build" entry point (like execute `make` or
  `cargo build —release`). This mimics how other plugin managers have a
  single "build" command.

  This was a result of 'mini.deps' experience with the different
  approach: "update" hooks are not run during install. This proved to be
  confusing as it requires to write two hooks. But also the reason might
  be that 'mini.deps' names it "checkout" hook instead of "update".

  However, the `vim.pack` event approach makes it lower cost to handle
  separate "update" and "install" events. Something like
  `if ev.data.kind == 'install' or ev.data.kind == 'update' then`
  instead of two autocommands.
  Plus this makes clearer separation of events.

Solution: do not trigger `PackChanged[Pre] kind=update` event during
  install.
2025-10-23 20:28:09 +03:00
Evgeni Chasnovski
a9db6ec6fa feat(pack): add active field to PackChanged event data
Problem: Inside `PackChanged[Pre]` callbacks it might be useful to tell
  if the affected plugin is active or not. It is already possible via
    extra `vim.pack.get({ 'plug-name' })[1].active`, but it is not quite
    user-friendly for something that might be needed frequently in real
    world use cases.

Solution: Supply extra `active` event data field.
2025-10-23 17:50:03 +03:00
Evgeni Chasnovski
c732133efe test(pack): refactor 'pack_spec.lua' with better code
Problem: 'pack_spec.lua' test file's code can be improved.

Solution: Refactor some aspects. In particular:
  - Rewrite `find_in_log` for finding event data in event log into a
    generator function that from log list returns a finder function.
    This allows it to take less arguments and be more concise.

  - Consistently use `local function f()` instead of
    `local f = function()`.

  - Prefer to use `fn.readblob()` instead of `fn.readfile()` to assert
    text from a file.

  - Use `([[...]]):format()` approach to testing file content (instead
    of array of strings). Should improve readability.

  - Universally prefer using "assert" to mean "check if certain
    expectation about the process holds up" (instead of occasional
    "validate").
2025-10-23 17:38:35 +03:00
zeertzjq
459cffc55f fix(terminal): deleting from wrong buffer (#36289)
Follow-up to #33721.
This doesn't seem to affect actual behavior for now, as these two lines
seem only reachable when the 'scrollback' option is changed, and options
can currently only be changed in the current buffer.
2025-10-23 17:40:45 +08:00
zeertzjq
af0f7b59b1 fix(statusline): redraw if Visual selection other end changes (#36281) 2025-10-23 11:27:23 +08:00
Fredrik Lanker
323d5527ee fix(lsp): set 'linebreak' in floating windows (#36275)
Set linebreak to avoid splitting words.

Fix #36268
2025-10-22 13:38:47 -04:00
luukvbaal
c94b7b93c0 fix(ui2): start treesitter after deleting cmdline buffer (#36274)
Problem:  Treesitter is not started in new cmdline buffer after deletion.
Solution: Start treesitter when highlighter buffer no longer matches.
2025-10-22 16:16:36 +02:00
Robert
cf48741227 docs(vimfn): getcwd() behavior #36222 2025-10-21 10:40:02 -07:00
Matthieu Coudron
e42050f4ae feat(vimscript): log function name in "fast" message #32616 2025-10-21 07:46:03 -07:00
Riley Bruins
3c4acc0f1a fix(lsp): noisy log message when enabling server without config #36264
This warning doesn't really make sense, since the `enable()` call is
meant to be run before the `lsp.config` calls. It will be logged many
times (once for each enabled LSP) at startup.

This is especially annoying because calling `enable()` after
configuration causes the first opened buffer not to have its filetype
set in some situations. This is a separate bug which really needs to be
fixed, and makes this superfluous logging more likely.
2025-10-21 07:16:19 -07:00
zeertzjq
73ee507317 Merge pull request #36258 from janlazo/vim-9.1.0918
vim-patch:9.0.0106,9.1.{359,918}
2025-10-21 12:10:45 +08:00
Jan Edmund Lazo
2a28149efc vim-patch:9.1.0359: MS-Windows: relative import in a script sourced from a buffer doesn't work
Problem:  MS-Windows: Relative import in a script sourced from a buffer
          doesn't work (Ernie Rael)
Solution: Set a filename, so that we are not trying to use
          script-relative filename (Yegappan Lakshmanan)

When a script is sourced from a buffer, the file name is set to ":source
buffer=". In MS-Windows, the ":" is a path separator character (used
after a drive letter). This results in the code trying to use the ":"
prefix to import the script on MS-Windows. To fix this, when importing a
script from a script sourced from a buffer with nofile, don't use
a script relative path name.

fixes vim/vim#14588
closes: vim/vim#14603

f135fa28e4

Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
2025-10-20 22:21:09 -04:00
Jan Edmund Lazo
96a514ed46 vim-patch:9.0.0106: illegal byte regexp test doesn't fail when fix is reversed
Problem:    Illegal byte regexp test doesn't fail when fix is reversed.
Solution:   Make sure illegal bytes end up in sourced script file.

cb36c2a3cd

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2025-10-20 22:21:09 -04:00
Jan Edmund Lazo
c5dbee7910 vim-patch:9.1.0918: tiny Vim crashes with fuzzy buffer completion
Problem:  tiny Vim crashes with fuzzy buffer completion
Solution: Adjust #ifdefs in ExpandBufnames() (826814741_6)

closes: vim/vim#16200

dff3c9c1a7

Co-authored-by: 826814741_6 <44406129+826814741-6@users.noreply.github.com>
2025-10-20 22:21:09 -04:00
Till Bungert
b67eff38fe fix(lsp): deduplicate completion items #36166
The current implementation has a race condition where items are appended
to the completion list twice when a second completion runs while the
first is still going. This hotfix just deduplicates the entire list.

Co-authored-by: Tomasz N <przepompownia@users.noreply.github.com>
2025-10-20 15:45:37 -07:00
glepnir
c80bb5b63e fix(pumborder): wrong layout with pumborder=none #36208
Problem:
Border width calculations were scattered with repeated
`*p_pumborder != NUL ? 2 : 0` patterns. The "none" value was not
consistently checked, causing borders to appear when pumborder="none".
When "shadow" the info floating window have an extra cell of spacing.

Solution:
Add `pum_border_width()` helper that returns 0 when pumborder is unset
or "none" (opt_winborder_values[7]), returns 1 when pumborder is shadow,
otherwise return 2.
2025-10-20 15:26:23 -07:00
Maria Solano
c90135d6e5 docs(ui): 'pumborder' #36255 2025-10-20 15:10:03 -07:00
zeertzjq
869e55f2aa Merge pull request #36253 from janlazo/vim-9.0.1033
vim-patch:8.2.3673,9.0.{433,1033}
2025-10-20 12:24:46 +08:00
Jan Edmund Lazo
9f84e01dfb vim-patch:8.2.3673: crash when allocating signal stack fails
Problem:    Crash when allocating signal stack fails.
Solution:   Only using sourcing info when available. (closes vim/vim#9215)

0bd8d05638

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2025-10-19 21:27:44 -04:00
Jan Edmund Lazo
27eb0aba3c vim-patch:9.0.0433: Coverity warns for not checking allocation failure
Problem:    Coverity warns for not checking allocation failure.
Solution:   Check that allocating a list or blob succeeded.

12553ada3b

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2025-10-19 02:36:51 -04:00
Jan Edmund Lazo
72d3506ce9 vim-patch:9.0.1033: tiny build fails because of conflicting typedef
Problem:    Tiny build fails because of conflicting typedef.
Solution:   Remove one typedef.

83c43ab319

Co-authored-by: Bram Moolenaar <Bram@vim.org>
2025-10-19 02:36:51 -04:00