Commit Graph

19838 Commits

Author SHA1 Message Date
306a138172 patch 9.1.1747: completion: redo (.) broken with preinsert and autocompletion
Problem:  completion: redo (.) broken with preinsert and autocompletion
Solution: Make redo (.) work with preinsert and autocompletion
          (Girish Palya)

closes: #18253

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-09 15:33:14 -04:00
12b9431eab patch 9.1.1746: Missing Null ptr check in cs_find_common()
Problem:  Missing Null ptr check in cs_find_common()
Solution: Return when tmp pointer is null (ashamedbit)

fixes: #18225
closes: #18248

Signed-off-by: ashamedbit <muralianiruddhan@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-09 15:21:57 -04:00
95593facd7 patch 9.1.1745: tabpanel: not properly redraw after wildmenu
Problem:  tabpanel: not properly redraw after wildmenu
          (ddad431)
Solution: Mark tabpanel to be redrawn (Hirohito Higashi).

fixes: #18209
closes: #18252

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-09 15:11:13 -04:00
3980c86525 patch 9.1.1744: tests: Test_skip_wildtrigger_hist_navigation() may fail
Problem:  tests: Test_skip_wildtrigger_hist_navigation() may fail
          (zeertzjq).
Solution: Correct test to validate intended behavior (Girish Palya).

See https://github.com/vim/vim/pull/18219#issuecomment-3265183318

closes: #18243

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-08 15:47:25 -04:00
cd9d30486a patch 9.1.1743: Haiku: no full-screen support
Problem:  Haiku: no full-screen support
Solution: Add support for toggling full-screen using the keyboard
          (rymdbar)

Makes toggling using keyboard possible. This change does not add any
`:fullscreen` command (Which currently only macVim has).

See https://www.haiku-os.org/docs/userguide/en/keyboard-shortcuts.html
for motivation on key combination used, as well as terminology choice.
With vim being inconsistent (`:help intro` suggests <A> and <M>, while
<Alt> is used at a dozen other places) following Haiku nomenclature
seems most appropriate.

closes: #18235

Signed-off-by: rymdbar <rymdbar@x20.se>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-08 15:42:25 -04:00
6d68508e62 runtime(hare): update for Hare 0.25.2
closes: #18222

Signed-off-by: Amelia Clarke <selene@perilune.dev>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-08 15:30:41 -04:00
fa6fd41a94 patch 9.1.1742: complete: preinsert does not work well with preinsert
Problem:  complete: preinsert does not work well with preinsert
Solution: Make "preinsert" completeopt value work with autocompletion
          (Girish Palya)

This change extends Insert mode autocompletion so that 'preinsert' also
works when 'autocomplete' is enabled.

Try: `:set ac cot=preinsert`

See `:help 'cot'` for more details.

closes: #18213

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-08 15:23:29 -04:00
4ed19fd336 patch 9.1.1741: Regression with kitty protocol and trailing byte "u"
Problem:  Regression with kitty protocol and trailing byte "u"
          (chdiza, after v9.1.1736)
Solution: Check that trailing byte "~" is present

fixes: #18232
closes: #18234

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-08 15:13:21 -04:00
c7f235bd43 patch 9.1.1740: Memory leak with wildmode=longest,full and wildoptions=pum
Problem:  Memory leak with wildmode=longest,full and wildoptions=pum
          (after 9.1.1737).
Solution: Avoid using showmatches() and WILD_NEXT together.  Also fix
          wildmode=longest,noselect:full selecting wrong item
          (zeertzjq).

fixes: #18228
closes: #18229

Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-07 17:17:39 +02:00
a28a2eb9d9 patch 9.1.1739: Matches may be listed twice with wildmode=longest,list
Problem:  Matches may be listed twice with wildmode=longest,list when
          "longest" doesn't change command line (after 9.1.1737).
Solution: Set did_wild_list when trying "list" after "longest"
          (zeertzjq).

closes: #18227

Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-07 09:35:04 +02:00
708ab7f5fb patch 9.1.1738: cmdline-autocompletion breaks history navigation
Problem:  cmdline-autocompletion breaks history navigation (ddad431)
Solution: Support history navigation in cmdline autocompletion (Girish
          Palya)

Up/Down arrows support history navigation when using wildtrigger()

fixes: #18207
closes: #18219

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-06 19:54:59 +02:00
8fec92d631 patch 9.1.1737: Patch v9.1.1714 introduce a regression for wildmenu
Problem:  Patch v9.1.1714 introduce a regression for wildmenu (zeertzjq)
Solution: Restore behavior of "longest" in 'wildmode' (Girish Palya)

- Fixed a regression caused by PR #18125 selecting wrong item
- Fixed another regression where the first pasted text did not appear on
  the command-line after starting Vim.

closes: #18212

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-06 19:39:32 +02:00
58c5a77870 patch 9.1.1736: Cannot detect <F3> using kitty protocol
Problem:  Cannot detect <F3> using kitty protocol
Solution: Handle and detect Kitty keys when using the trailing "~" byte

fixes: #18100
closes: #18126

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-06 10:11:39 +02:00
ecdd89f6bf patch 9.1.1735: Cygwin Makefile still checks for Win XP version
Problem:  Cygwin Makefile still checks for Win XP version
Solution: Remove check for WINVER >= 0x600 in Make_cyg_ming.mak
          (Mao-Yining)

Vim's does no longer support Windows XP and Vista since v9.0.0496. So
the condition in Make_cyg_ming.mak to check for any Windows version below
Vista can be removed.

fixes: #18160
closes: #18215

Signed-off-by: Mao-Yining <mao.yining@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-06 10:03:11 +02:00
37e7728294 patch 9.1.1734: Memory leak when allocating match fails
Problem:  Memory leak when allocating match fails
Solution: Initialize m to NULL and centralize cleanup via goto fail to
          avoid leaks on early returns (Damien Lejay)

closes: #18204

Signed-off-by: Damien Lejay <damien@lejay.be>
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-05 17:29:31 +02:00
4daf031253 patch 9.1.1733: tests: failure when remote_server() fails
Problem:  tests: failure when remote_server() fails
Solution: Catch E240 error when calling remote_server(), Fix syntax
          error in test_wayland.vim

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-05 17:25:58 +02:00
9fd1a657d2 patch 9.1.1732: filetype: .inc file detection can be improved
Problem:  filetype: .inc file detection can be improved
Solution: Update filetype detection for Pascal and BitBake code
          (Martin Schwan).

Fix the detection of .inc files containing Pascal and BitBake code:

- the concatenated string, merged from three lines, only contains one
  beginning and the pattern "^" would not match as expected. Use a range()
  loop to iterate each line string individually. This way, the pattern "^"
  works for beginning of lines.

- improve BitBake include file detection by also matching forward-slashes
  "/" in variable names and assignment operators with a dot ".=" and "=.".
  Valid examples, which should match, are:

    PREFERRED_PROVIDER_virtual/kernel = "linux-yocto"
    MACHINEOVERRIDES =. "qemuall:"
    BBPATH .= ":${LAYERDIR}"

- parse twenty instead of just three lines, to accommodate for potential
  comments at the beginning of files

closes: #18202

Signed-off-by: Martin Schwan <m.schwan@phytec.de>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-04 22:09:26 +02:00
63a02ca39a patch 9.1.1731: Not using const qualifier for opchars
Problem:  Not using const qualifier
Solution: Mark the opchars array const

closes: #18196

Signed-off-by: Damien Lejay <damien@lejay.be>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-04 21:58:50 +02:00
9a6cafdc1c patch 9.1.1730: filetype: vivado journal/log files are not recognized
Problem:  filetype: vivado journal/log files are not recognized
Solution: Detect vivado*.{jou,log} as tcl filetype (Wu Zhenyu).

closes: #18191

Signed-off-by: Wu, Zhenyu <wuzhenyu@ustc.edu>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-02 20:42:00 +02:00
ccddb555aa patch 9.1.1729: CI is not run with clang 21
Problem:  CI is not run with clang 21
Solution: Update CI to v21, fix a few warnings that are uncovered when
          using clang 21 (Philip H)

closes: #18142

Signed-off-by: Philip H. <47042125+pheiduck@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-02 20:11:19 +02:00
884290ebf0 patch 9.1.1728: termdebug: cannot evaluate visual selected expression
Problem:  termdebug: cannot evaluate visual selected expression
Solution: Add support for visual mode, mapped to K by default (bennyyip)

closes: #18184

Signed-off-by: bennyyip <yebenmy@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-02 20:06:20 +02:00
1c36a85237 patch 9.1.1727: Nextstep support still included
Problem:  Nextstep support still included
Solution: Deprecate Nextstep code and undef corresponding feature flag

closes: #18131

Signed-off-by: Damien Lejay <damien@lejay.be>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-02 19:23:54 +02:00
8429a44a9e patch 9.1.1726: Patch v9.1.1725 causes problems
Problem:  Patch v9.1.1725 causes problems
Solution: Revert the patch for now

fixes: #18187

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-02 19:13:31 +02:00
f50504a87b patch 9.1.1725: Wayland code can be improved
Problem:  Wayland code can be improved
Solution: Refactor Wayland Clipboard code (Foxe Chen)

This refactor makes the Wayland codebase less convoluted:
- Move clipboard code in wayland.c to clipboard.c
- Use C99 bool type
- Properly poll the Wayland display file descriptor
- Instead of checking if the data source is not NULL in order to
  determine if a selection event comes from us, use a special mime type to
  identify selection events coming from ourselves. The problem with the
  previous approach is that race conditions may occur.
- Put the focus stealing code under a new feature "wayland_focus_steal"
- Use ELAPSED_* macros instead of gettimeofday()
- Pass tests
- Reimplement commented out code
- Update docs
- Make Wayland clipboard behaviour more in line with X11 when connection is lost
- add missing malloc checks and possible memory leaks + refactored some
  tests.

closes: #18139

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-01 20:52:44 +02:00
5f5a1c5876 patch 9.1.1724: Compiler warning about ununitialized variable in ex_docmd.
Problem:  Compiler warning about ununitialized variable in ex_docmd.
Solution: Initialize result variable (mityu)

Silence uninitialized variable warning produced by clang 21.1.0

closes: #18182

Signed-off-by: mityu <mityu.mail@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-09-01 19:18:46 +02:00
710095cab8 patch 9.1.1723: Missing ifdefs
Problem:  Missing ifdefs (after v9.1.1719)
Solution: Add ifdef ELAPSED_FUNC (Foxe Chen).

closes: #18178

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 20:31:44 +02:00
59d496ab0c patch 9.1.1722: compiler may optimize away clearing of crypt key
Problem:  Compiler may optimize away clearing of crypt key
Solution: Use sodium_memzero() if available, else use memset() using a
          volatile function pointer (ashamedbit).

closes: #18173

Signed-off-by: ashamedbit <muralianiruddhan@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 20:05:23 +02:00
bf91eb7620 patch 9.1.1721: Defining a global gettimeofday() function
Problem:  Defining a global gettimeofday() function causes conflicts if
          gettimeofday() is already defined.
Solution: Revert globalized gettimeofday() function (Hirohito Higashi).

fixes: #18162
fixes: #18161
fixes: #18170
closes: #18173

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 19:43:23 +02:00
6278f1a10a patch 9.1.1720: using gettimeofday() for parsing OSC responses
Problem:  Using gettimeofday() for parsing OSC responses
Solution: Use ELAPSED_ macros instead (Foxe Chen).

closes: #18165

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 19:40:24 +02:00
2035c74574 patch 9.1.1719: socket server code can be improved
Problem:  socket server code can be improved
Solution: Refactor code, get rid of gettimeofday() and use ELAPSED_
          macros (Foxe Chen)

closes: #18147

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 19:37:40 +02:00
6cd6857cbe patch 9.1.1718: filetype: kubectl config file is not recognized
Problem:  filetype: kubectl config file is not recognized
Solution: Detect .kube/kubectl as yaml filetype
          (Volodymyr Chernetskyi).

References:
- https://kubernetes.io/docs/reference/kubectl/kuberc/

closes: #18169

Signed-off-by: Volodymyr Chernetskyi <19735328+chernetskyi@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 19:31:58 +02:00
be0589f1d2 patch 9.1.1717: filetype: AWS cli alias file is not recognized
Problem:  filetype: AWS cli alias file is not recognized
Solution: Detect .aws/cli/alias as confini filetype
          (Volodymyr Chernetskyi).

References:
- https://docs.aws.amazon.com/cli/v1/userguide/cli-usage-alias.html

related: #18169

Signed-off-by: Volodymyr Chernetskyi <19735328+chernetskyi@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 19:31:02 +02:00
68f681c6ab patch 9.1.1716: wrong indent in win_line()
Problem:  The code inside an ifdef was indented incorrectly.
Solution: Adjusted the indentation by one level (glepnir).

closes: #18174

Signed-off-by: glepnir <glephunter@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 19:01:39 +02:00
7292964267 patch 9.1.1715: Some functions need to be re-ordered
Problem:  Some functions need to be re-ordered
Solution: Re-order and move functions around favoring mch_*() functions
          inside os_*.c files, Change scope of dos_expandpath() to
          global instead of static (Hirohito Higashi)

The following fixes and tweaks have been made:

- Moved the definition of mch_expandpath() from filepath.c to os_win32.c
  in MS-Windows builds (essentially, the mch_~() function should be
  defined in os_~.c.)
- In accordance with the above, the scope of dos_expandpath() has been
  changed from static to global.
- Other miscellaneous changes.

closes: #18176

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 18:52:32 +02:00
2eccb4d0be patch 9.1.1714: completion: wildmode=longest:full selects wrong item
Problem:  completion: wildmode=longest:full selects wrong item
          (zeertzjq)
Solution: Fix issue, refactor ex_getln.c slightly
          (Girish Palya)

fixes: #18102
closes: #18125

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-31 18:44:29 +02:00
5355e81868 patch 9.1.1713: filetype: fvwm2m4 files are no longer detected
Problem:  filetype: fvwm2m4 files are no longer recognized
          (after 9.1.1687).
Solution: Add a special case in m4 filetype detection (zeertzjq).

closes: #18146

Co-authored-by: Damien Lejay <damien@lejay.be>
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-29 18:32:41 +02:00
99af7690eb patch 9.1.1712: Screen not redrawn properly on t_RB response
Problem:  screen not redrawn properly on t_RB response (after v9.1.1703)
Solution: Call redraw_asap() if necessary (Julio B)

closes: #18149

Signed-off-by: Julio B <julio.bacel@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-29 18:25:50 +02:00
8843cb2b3b patch 9.1.1711: Missing type cast in clipboard.c
Problem:  Missing type cast in clipboard.c
          (Yegappan Lakshmanan, after v9.1.1704)
Solution: Add back the type cast (Foxe Chen)

closes: #18148

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-29 18:20:23 +02:00
4fec4bb7a5 patch 9.1.1710: Compile warnings in clipboard.c
Problem:  Compile warnings in clipboard.c
          (xvim64, after v9.1.1704)
Solution: Remove returns from void functions (Foxe Chen)

fixes: #18145
closes: #18157

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-29 18:12:15 +02:00
d5c89cc6bb patch 9.1.1709: filetype: kyaml files are not recognized
Problem:  filetype: kyaml files are not recognized
Solution: Detect *.kyml files as yaml filetype
          (Volodymyr Chernetskyi)

References:
- https://kubernetes.io/blog/2025/08/27/kubernetes-v1-34-release/#alpha-support-for-kyaml-a-kubernetes-dialect-of-yaml

closes: #18158

Signed-off-by: Volodymyr Chernetskyi <19735328+chernetskyi@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-29 18:08:52 +02:00
97ea879b9b patch 9.1.1708: tests: various tests can be improved
Problem:  tests: various tests can be improved
Solution: Use string interpolation to concatenate strings in
          test_winfixbuf, check for specific errors in assert_fails()
          (Yegappan Lakshmanan)

closes: #18151

Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-29 18:04:26 +02:00
b27f54965d patch 9.1.1707: diff.pro contains #ifdefs
Problem:  diff.pro contains #ifdefs
Solution: Remove unintentionally added ifdefs
          (Hirohito Higashi)

closes: #18164

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-29 17:56:20 +02:00
2635e83d46 patch 9.1.1706: MS-Windows: Compile error when building with if_ruby
Problem:  MS-Windows: Compile error when building with if_ruby
          (Christian Robinson, after v9.1.1704)
Solution: Do not define gettimeofday() if ruby interface is compiled in
          (Foxe Chen).

fixes: #18143
closes: #18144

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 23:53:41 +02:00
e7063871e5 patch 9.1.1705: time.h include is available on all platforms
Problem:  time.h include is available on all platforms
Solution: Remove ifdef guards and simply include it in all source files,
          get rid of double include in spellfile.c (Damien Lejay).

closes: #18075

Signed-off-by: Damien Lejay <damien@lejay.be>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 21:31:35 +02:00
528196c8a9 patch 9.1.1704: Cannot determine non-X11/Wayland clipmethods
Problem:  Cannot determine non-X11/Wayland clipmethods
Solution: Add the "gui" value to the 'clipmethod' option (Foxe Chen)

related: #18006
closes: #18067

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 21:26:54 +02:00
1f51bbc3b9 patch 9.1.1703: Cannot react to terminal OSC responses
Problem:  Cannot react to terminal OSC responses
Solution: Allow TermResponseAll to be triggered by Terminal OSC
          responses (Foxe Chen)

fixes: #14995
closes: #17975

Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 21:15:47 +02:00
42acf736a3 patch 9.1.1702: tests: test_edit still fails on CI
Problem:  tests: test_edit still fails on CI
          (after v9.1.1701)
Solution: Fix the skip condition

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 19:07:38 +02:00
6c14c4625b patch 9.1.1701: tests: failure on CI with GUI and ASAN in test_edit.res
Problem:  tests: failure on CI with GUI and ASAN in test_edit.res
          (Hirohito Higashi)
Solution: Disable the test for that specific situation in CI, close
          swapfiles

fixes: #18070

Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 18:38:13 +02:00
bf82e58a70 patch 9.1.1700: Multiline ignorecase specific pattern does not match with 'ignorecase'
Problem:  a pattern that involves a backref on a different line does not
          match when 'ignorecase' is set (QiWei, after v9.1.0645)
Solution: Use MB_STRNICMP when ignorecase is set, fix tests to close
          swapfiles

related: #14756
fixes: #17470
closes: #18104

Signed-off-by: author
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 18:14:27 +02:00
cadba05329 patch 9.1.1699: Fuzzy completion disabled for 'findfunc' and customlist
Problem:  Fuzzy completion disabled for 'findfunc' and customlist
Solution: Remove those cases from cmdline_fuzzy_completion_supported()
          because it is supported (Maxim Kim).

fixes: #18117
closes: #18122

Signed-off-by: Maxim Kim <habamax@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2025-08-27 18:09:14 +02:00