<feed xmlns='http://www.w3.org/2005/Atom'>
<title>neovim/runtime/scripts/optwin.lua, branch master</title>
<subtitle>Vim-fork focused on extensibility and usability</subtitle>
<id>http://git.waynecole.info/neovim/atom?h=master</id>
<link rel='self' href='http://git.waynecole.info/neovim/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/'/>
<updated>2026-04-24T18:45:20Z</updated>
<entry>
<title>feat(tui): restore 'ttyfast' to control tty requests #38699</title>
<updated>2026-04-24T18:45:20Z</updated>
<author>
<name>Kyle</name>
<email>50718101+kylesower@users.noreply.github.com</email>
</author>
<published>2026-04-24T18:45:20Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=66149ca6681102ff758b516984a1ccfe2ce0d974'/>
<id>urn:sha1:66149ca6681102ff758b516984a1ccfe2ce0d974</id>
<content type='text'>
Problem:
When running nvim on a remote machine over SSH, if there is high ping,
then bg detection may not complete in time. This results in a warning
every time nvim is started. #38648

Solution:
Restore 'ttyfast' option and allow it to control whether or not bg
detection is performed. Because this is during startup and before any
user config or commands, we use the environment variable
`NVIM_NOTTYFAST` to allow disabling `ttyfast` during initialization.</content>
</entry>
<entry>
<title>vim-patch:3918f32: runtime(doc): fix incorrect description of 'scrolloffpad'</title>
<updated>2026-04-22T02:14:53Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2026-04-22T01:55:48Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=25b7fe5ada09a987352298f3674dc36f6409ece8'/>
<id>urn:sha1:25b7fe5ada09a987352298f3674dc36f6409ece8</id>
<content type='text'>
closes: vim/vim#20029

https://github.com/vim/vim/commit/3918f3232f874b3c96f8bfccc5049711f16c252e
</content>
</entry>
<entry>
<title>vim-patch:9.2.0356: Cannot apply 'scrolloff' context lines at end of file</title>
<updated>2026-04-22T02:14:52Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2026-04-20T12:47:50Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=8f1e14ffa28787fc4faa8b645f378c23735f5bbe'/>
<id>urn:sha1:8f1e14ffa28787fc4faa8b645f378c23735f5bbe</id>
<content type='text'>
Problem:  Cannot apply 'scrolloff' context lines at end of file
Solution: Add the 'scrolloffpad' option to keep 'scrolloff' context even
          when at the end of the file (McAuley Penney).

closes: vim/vim#19040

https://github.com/vim/vim/commit/a414630393f81c9a5b8fa4d0fcc1287155f67751

Co-authored-by: McAuley Penney &lt;jacobmpenney@gmail.com&gt;
</content>
</entry>
<entry>
<title>feat(options): add 'winpinned' to pin a window #39157</title>
<updated>2026-04-20T00:36:55Z</updated>
<author>
<name>luukvbaal</name>
<email>luukvbaal@gmail.com</email>
</author>
<published>2026-04-20T00:36:55Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=fe986e5dd094b2f7e1d28e64e52ffbc5f7292191'/>
<id>urn:sha1:fe986e5dd094b2f7e1d28e64e52ffbc5f7292191</id>
<content type='text'>
Problem:
- Unable to "pin" a window to prevent closing without specifically
  being targeted.
- :fclose closes hidden windows (even before visible windows).

Solution:
- Add 'winpinned' window-local option. When set, window is skipped by
  :fclose and :only. Pin the ui2 cmdline window (which should always be
  visible), so that it is not closed by :only/fclose.
- Skip over hidden (and pinned) windows with :fclose.

Co-authored-by: glepnir &lt;glephunter@gmail.com&gt;</content>
</entry>
<entry>
<title>feat(lua): replace `buffer` with `buf` in vim.keymap.set/del #38360</title>
<updated>2026-03-21T16:00:06Z</updated>
<author>
<name>skewb1k</name>
<email>skewb1kunix@gmail.com</email>
</author>
<published>2026-03-21T16:00:06Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=4d3a67cd620152d11ab9b5f5bdd973f84cc2d44b'/>
<id>urn:sha1:4d3a67cd620152d11ab9b5f5bdd973f84cc2d44b</id>
<content type='text'>
The `buffer` option remains functional but is now undocumented.
Providing both will raise an error. Since providing `buf` was disallowed
before, there is no code that will break due to using `buffer` alongside
`buf`.</content>
</entry>
<entry>
<title>docs: lsp, options, promptbuf</title>
<updated>2026-02-12T12:46:45Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2025-12-25T09:02:12Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=858576777eb3d5227c6450c327ea87e40a59fda1'/>
<id>urn:sha1:858576777eb3d5227c6450c327ea87e40a59fda1</id>
<content type='text'>
Close #37630
Close #37682
Close #37762
Close #37785

Co-authored-by: Daniel Schmitt &lt;d.schmitt@lansoftware.de&gt;
Co-authored-by: Duane Hilton &lt;duane9@gmail.com&gt;
Co-authored-by: NeOzay &lt;colpaert.benoit@gmail.com&gt;
Co-authored-by: Yi Ming &lt;ofseed@foxmail.com&gt;
Co-authored-by: "Justin M. Keyes" &lt;justinkz@gmail.com&gt;
</content>
</entry>
<entry>
<title>vim-patch:9.1.1933: completion: complete_match() is not useful (#36726)</title>
<updated>2025-11-28T02:10:31Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2025-11-28T02:10:31Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=2c6469aca451027648c3317f11ffb6b35b7f835b'/>
<id>urn:sha1:2c6469aca451027648c3317f11ffb6b35b7f835b</id>
<content type='text'>
Problem:  completion: complete_match() Vim script function and
          'isexpand' option are not that useful and confusing
          (after v9.1.1341)
Solution: Remove function and option and clean up code and documentation
          (Girish Palya).

complete_match() and 'isexpand' add no real functionality to Vim. They
duplicate what `strridx()` already does, yet pretend to be part of the
completion system. They have nothing to do with the completion mechanism.

* `f_complete_match()` in `insexpand.c` does not call any completion code.
   It’s just a `STRNCMP()` wrapper with fluff logic.
* `'isexpand'` exists only as a proxy argument to that function.
   It does nothing on its own and amounts to misuse of a new option.

The following Vim script function can be used to implement the same
functionality:

```vim
  func CompleteMatch(triggers, sep=',')
    let line = getline('.')-&gt;strpart(0, col('.') - 1)
    let result = []
    for trig in split(a:triggers, a:sep)
      let idx = strridx(line, trig)
      if l:idx &gt;= 0
        call add(result, [idx + 1, trig])
      endif
    endfor
    return result
  endfunc
```

related: vim/vim#16716
fixes: vim/vim#18563
closes: vim/vim#18790

https://github.com/vim/vim/commit/cbcbff871224115c45bbd14582749a487c6fad30

Co-authored-by: Girish Palya &lt;girishji@gmail.com&gt;</content>
</entry>
<entry>
<title>vim-patch:9.1.1930: completion: 'completefuzzycollect' is too obscure</title>
<updated>2025-11-27T23:53:49Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2025-11-27T04:46:37Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=812186e2dce3775a1d0e5e96960a818be07e59be'/>
<id>urn:sha1:812186e2dce3775a1d0e5e96960a818be07e59be</id>
<content type='text'>
Problem:  completion: 'completefuzzycollect' option is too obscure
Solution: Deprecate the option, but don't error out for existing scripts,
          behave like 'completefuzzycollect' is set when fuzzy
          completion is enabled (Girish Palya).

fixes: vim/vim#18498
closes: vim/vim#18788

https://github.com/vim/vim/commit/33fbfe003c17ad25bf3903aaa89a55fe372086ba

Remove this option completely, as it's introduced in Nvim v0.12 cycle.

Co-authored-by: Girish Palya &lt;girishji@gmail.com&gt;
</content>
</entry>
<entry>
<title>vim-patch:9.1.1924: 'commentstring' requires +folding feature (#36645)</title>
<updated>2025-11-21T00:24:20Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2025-11-21T00:24:20Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=4dc337cda86f16a0f5976a4a8bf19da96309a484'/>
<id>urn:sha1:4dc337cda86f16a0f5976a4a8bf19da96309a484</id>
<content type='text'>
Problem:  'commentstring' requires the +folding feature but is used in
	  contexts other than folding.
Solution: Remove the +folding feature guards from 'commentstring' and
          make it available in all builds (Doug Kearns).

closes: vim/vim#18731

https://github.com/vim/vim/commit/a08030c9f729a133da552b5658e5b59c54581c79

Co-authored-by: Doug Kearns &lt;dougkearns@gmail.com&gt;</content>
</entry>
<entry>
<title>refactor!: optwin.lua #36505</title>
<updated>2025-11-20T04:43:15Z</updated>
<author>
<name>altermo</name>
<email>107814000+altermo@users.noreply.github.com</email>
</author>
<published>2025-11-20T04:43:15Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=caa9419355456e85f27006291abc6643d83f01a7'/>
<id>urn:sha1:caa9419355456e85f27006291abc6643d83f01a7</id>
<content type='text'>
Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
Co-authored-by: Justin M. Keyes &lt;justinkz@gmail.com&gt;</content>
</entry>
</feed>
