Commit Graph

1069 Commits

Author SHA1 Message Date
Jan Edmund Lazo
47ce0d1f87 build(vim-patch): v9.1.0578 is n/a #41585
Nvim implementation of ":TOhtml" fails on test_tohtml.vim
because they compare with the sample test files.
Customizing the sample files to pass Vim's test is maintenance burden.
Nvim has lua functional tests to skip Vim's tests.

Nvim's test Makefile computes NEW_TESTS, NEW_TESTS_RES, unlike Vim.
Likely N/A.

Following runtime/ files are N/A after Lua rewrite.

- runtime/autoload/tohtml.vim
- runtime/syntax/2html.vim
- runtime/plugin/tohtml.vim
2026-09-02 04:54:35 -04:00
Justin M. Keyes
97cf2041c1 Merge #41550 from janlazo/na-patch-channel
build(vim-patch): n/a channel,terminal,test,unicode patches
2026-08-30 08:45:06 -04:00
Christian Clason
752f4b944b build(deps): bump unibilium to v2.1.4
Build system adaptations to upstream changes:

* added `build.zig`
* `CMakeLists.txt` with (opt-out) support for docs, tests, tools
  (disabled)
2026-08-30 09:43:19 +02:00
Jan Edmund Lazo
97f06b936e build(vim-patch): v8.2.4535 is n/a
Nvim removed support for DOS 8.3 filename.
2026-08-29 20:26:12 -04:00
Jan Edmund Lazo
c47a2fbf7b build(vim-patch): v8.2.3597 is n/a
Nvim already has 'scrollback' option.
2026-08-29 19:37:59 -04:00
Jan Edmund Lazo
063c76f500 build(vim-patch): v8.2.3068 is almost auto n/a
Nvim uses utf8proc or an older process involving "src/unicode/"
and "download-unicode-files.sh" to decouple unicode characters
from "mbyte.c".
These unicode patches should be auto N/A but the diff hunk xfuncname
is wrong for utf_char2cells().
Is it because of the `#ifdef`?
Need a volunteer to inspect if these patches still have relevant
changes

Nvim

```c
/// same as utf_composinglike but operating on UCS-4 values
bool utf_iscomposing(int c1, int c2, GraphemeState *state)
{
  return (!utf8proc_grapheme_break_stateful(c1, c2, state)
          || arabic_combine(c1, c2));
}
```

Vim

```c
/*
 * Return TRUE if "c" is a composing UTF-8 character.  This means it will be
 * drawn on top of the preceding character.
 * Based on code from Markus Kuhn.
 */
    int
utf_iscomposing(int c)
{
    // Sorted list of non-overlapping intervals.
    // Generated by ../runtime/tools/unicode.vim.
    static struct interval combining[] =
    {
	{0x0300, 0x036f},
	{0x0483, 0x0489},
	{0x0591, 0x05bd},
        // ...
	{0x0300, 0x036f},
	{0x0483, 0x0489},
	{0x0591, 0x05bd},
    };

    return intable(combining, sizeof(combining), c);
}
```
2026-08-29 14:49:56 -04:00
Jan Edmund Lazo
ee19522048 build(vim-patch): v8.2.2872 is n/a 2026-08-29 14:49:56 -04:00
Jan Edmund Lazo
9e8f032f33 build(vim-patch): v9.2.0420 is n/a 2026-08-29 14:49:56 -04:00
Jan Edmund Lazo
985f834cc7 build(vim-patch): v8.2.4758 is n/a 2026-08-29 14:49:55 -04:00
Justin M. Keyes
e28d725e46 refactor(scripts): drop download-unicode-files.sh #41528
Unused since 26be6446e5, which removed src/unicode/ in favor of
utf8proc.
2026-08-28 15:21:42 +00:00
Jan Edmund Lazo
19516b78b9 build(vim-patch): v9.2.0565 is n/a 2026-08-26 23:30:46 -04:00
Jan Edmund Lazo
0b52504cd8 build(vim-patch): v8.2.4157 is n/a 2026-08-26 20:42:55 -04:00
Jan Edmund Lazo
38039e639b build(vim-patch): v8.2.3761 is n/a 2026-08-26 20:37:43 -04:00
Jan Edmund Lazo
8ae46cbd81 build(vim-patch): v8.2.3589 is n/a
termopen() and term_start() are not 1-1 because of Windows.
See Vim's ":h job_start".

```
{command} can be a String.  This works best on MS-Windows.  On
Unix it is split up in white space separated parts to be
passed to execvp().  Arguments in double quotes can contain
white space.

{command} can be a List, where the first item is the
executable and further items are the arguments.  All items are
converted to String.  This works best on Unix.
```
2026-08-26 20:25:13 -04:00
Jan Edmund Lazo
f88655b527 build(vim-patch): v8.2.0922 is n/a 2026-08-26 20:12:12 -04:00
Jan Edmund Lazo
c6ba487b89 build(vim-patch): n/a ba43008a2d6788eeb8ff78ae39dedd28598ae658 2026-08-26 20:12:11 -04:00
Justin M. Keyes
7ecab736f5 ci: no AI advertisements #41492
Problem:
Claude and friends love to sprinkle advertisements in commit messages.

Solution:
Allow a generic "AI-assisted" token only.
Reject useless mentions of AI services, sessions, and other cringe.

Disclosure: This PR was authored by an sapient turnip 🫜, raised in
moist, fluffy soil, tilled by the blurry wings of a hummingbird.
2026-08-25 15:42:33 -04:00
Jan Edmund Lazo
5009467965 build(vim-patch): v9.0.1760 is n/a 2026-08-23 22:44:13 -04:00
Jan Edmund Lazo
15f6b7a7f5 build(vim-patch): vim9 uf_type_list is n/a
From v8.2.0149 .
Target v9.0.1605 .
2026-08-23 22:44:13 -04:00
Jan Edmund Lazo
805bf3c81c build(vim-patch): v9.0.0627 is n/a 2026-08-23 22:44:13 -04:00
Jan Edmund Lazo
9744c76af0 build(vim-patch): v8.2.2331 is n/a
Vim9script variable declaration via const/final
2026-08-23 22:44:13 -04:00
Jan Edmund Lazo
042e337861 fix(vim-patch): sync list_vimpatch_tokens(), list_vimpatch_numbers() #41440
Developer and CI may think a Vim patch is merged
but list_vimpatch_numbers() and the "version.c" update suggest
otherwise.
2026-08-23 07:37:03 -04:00
Jan Edmund Lazo
39a7b68539 feat(vim-patch): ignore vim-patch tokens from commit list
Sort vimpatch_commit_ignore.txt based on "git log" order
else "diff" fails to filter out reverted vim-patch tokens.
Put latest commit to revert on top of file.
2026-08-21 22:42:45 -04:00
Jan Edmund Lazo
03ec1b37d3 fix(vim-patch): :redrawtabpanel regexp, delay grep on hunk
Too many suggestions in
bcf116cc2f

Multi-line grep on the hunk contents before filtering by hunk header
prevents vim-patch.sh from detecting v8.1.2195 and v8.1.2219 as N/A.

Revisit multi-line parsing for `runtime/doc/*.txt`
when Vim v9.2+ has new runtime/doc/ patches
about features that require "has()/exists()" guards.
2026-08-20 22:20:24 -04:00
Jan Edmund Lazo
3e487dd145 build(vim-patch): n/a tabpanel docs from v9.1.1391 2026-08-19 01:24:03 -04:00
Jan Edmund Lazo
c8da9f3df2 build(vim-patch): n/a patterns for popupwin. v9.2.0636 2026-08-19 00:49:08 -04:00
Jan Edmund Lazo
855e973bf2 build(vim-patch): v9.1.0050 is n/a 2026-08-19 00:16:44 -04:00
Jan Edmund Lazo
ba32f10632 build(vim-patch): vim9 parse_argument_types is n/a
Vim9script has incompatible lambda syntax to support argument types.
Target v9.1.0270.
2026-08-19 00:08:00 -04:00
Jan Edmund Lazo
a98858651e build(vim-patch): n/a docs from 9.0.1481, keep hunks without header
switch/case and goto labels v9.0.1481 and similar patches
from auto-N/A.
Blacklist as much as possible to auto-N/A later crypt patches.

Hunks without header in "*.h" is valid if only littered with #ifdefs
or change is isolated to 1st line
but "src/feature.h" should be mostly N/A
after Nvim removed "FEAT_" guards.
Wonder if certain patches with only "*.h" changes were mistakenly
marked N/A.
2026-08-18 21:40:04 -04:00
Jan Edmund Lazo
e96be45bba build(vim-patch): v8.2.4153 is n/a 2026-08-16 23:28:43 -04:00
Jan Edmund Lazo
cd71a13589 build(vim-patch): auto-n/a refactor patch like v8.2.0514
Follow-up refactor patches, mixed with unrelated patches in the middle,
is normal in vim-dev when the original patch is not fully tested
across all builds via CI or reviewed by others.

Unless core maintainers push "vim-patch:" directly to master/main branch
without running the full test-suite,
there is little reason to merge incomplete ports that will fail
on Nvim's CI or code review.

Relevant changes in patches like v8.2.0514 are either ported
or (will) become N/A.
2026-08-16 22:23:06 -04:00
Jan Edmund Lazo
19a7f26a9c build(vim-patch): n/a docs for v8.1.2219
Ignoring incompatible implementation,
TerminalOpen and TermOpen events are not 1-1.
"TerminalWinOpen" was accepted as N/A in
commit c7ee6af777 .

I planned to not do this to have more test cases
after manipulating the hunks header to filter out more hunks
but Justin is eager to just mark these N/A
to bump the Vim major.minor version.

Time to move on from v8.1.x.
2026-08-16 22:23:05 -04:00
Jan Edmund Lazo
833e58341c build(vim-patch): n/a ":terminal" opts
Target v8.1.2195 .

Nvim did not port Vim's ":terminal" opts.
Incompatible implementations.
Ex-command was ported from C to Lua.
Vim needs them partly because of splitting the current window.

I keep forgetting `++close` option so I either run ":qall!"
or kill the parent process (ie. terminal emulator).

Unsatisfied users should create their Ex-command that runs jobstart().
2026-08-16 21:22:15 -04:00
Jan Edmund Lazo
1e153b9a1c build(vim-patch): v9.2.0026 is n/a 2026-08-16 20:54:24 -04:00
Jan Edmund Lazo
fe5cf3259c build(vim-patch): v9.1.2033 is n/a 2026-08-16 20:54:24 -04:00
Jan Edmund Lazo
5d1901b904 build(vim-patch): v9.1.0349 is n/a 2026-08-16 20:54:24 -04:00
Jan Edmund Lazo
9143da2a05 build(vim-patch): n/a vim9 patch 9.0.1821 2026-08-16 20:54:24 -04:00
Jan Edmund Lazo
aef9356e34 build(vim-patch): fix compiled,popup-window regexp for '|' #41326
git "-I" regex seem to be "extended".
grep's default regex is "basic".
Fix regexps for switch/case "runtime/doc/*.txt"
based on the "*.h" switch/case.
2026-08-15 08:26:57 -04:00
Jan Edmund Lazo
c7ee6af777 build(vim-patch): v8.1.2219 is n/a
Vim's TerminalWinOpen seems to be required because of Vim
buffer-job-popupwin implementation.
Based on the patch, I'm puzzled why fzf needs this on Vim.

Nvim's TermOpen, TermEnter, and detection mechanisms to know
if buffer is on a (active,visible) window should suffice to not port it.

If there was a feature request or issue without a merged fix,
then I can't find it.

https://github.com/junegunn/fzf/pull/2000
2026-08-15 00:24:09 -04:00
Jan Edmund Lazo
d137073024 build(vim-patch): v8.1.2195 is n/a 2026-08-14 17:13:30 -04:00
Jan Edmund Lazo
692e41bb66 build(vim-patch): v8.1.1713 is n/a 2026-08-14 17:13:29 -04:00
Jan Edmund Lazo
2b232a9d6e build(vim-patch): v8.1.1628 docs are n/a 2026-08-14 17:13:29 -04:00
Jan Edmund Lazo
38cd0ba1b8 build(vim-patch): n/a autocmd from 8.1.1218 2026-08-14 17:13:29 -04:00
Jan Edmund Lazo
1b79a5ff61 build(vim-patch): n/a popup_ api #41270
- enums
- macros
- struct members
- popup_.*()

8.1.1523

* build(vim-patch): 8.1.0863 is almost auto n/a

Can't ignore os_unix.c hunk for "failed:" .
2026-08-12 08:32:21 -04:00
Jan Edmund Lazo
2450ae797c build(vim-patch): sound feature is n/a (#41257)
Vim core did not leverage it to override/customize bell/beep.
It wasn't used for custom sounds for system/user (autocmd) events.
It should be in-scope for GUI, unlike terminal, even as a plugin
by leveraging some internal option similar to `set guioptions+=!`.

No progress as of Vim 9.2 so I quit.
2026-08-10 04:29:42 +00:00
Jan Edmund Lazo
04f802a2f6 build(vim-patch): n/a patches from comments, ifdefs #41247
vim-patch.sh fails to detect n/a patches
because of ifdef FEAT_ guards and reserved Vim9script error codes.

Ignore all conditional directives for Vim's "FEAT_" guards.
https://cppreference.com/c/preprocessor/conditional
2026-08-09 06:49:05 -04:00
Jan Edmund Lazo
906639e34b build(vim-patch): vim9 check_typval_type() is n/a
v8.2.1551
2026-08-07 14:59:37 -04:00
Jan Edmund Lazo
107b806bbe build(vim-patch): os makefile for tests are n/a
Following remain relevant:

- src/testdir/Makefile (default setup in Unix-like OS)
- src/testdir/Make_all.mak (define old/new style Vim tests)

Rest are n/a because Nvim runs Vim's tests on GHA Windows runner.
2026-08-06 23:15:57 -04:00
Jan Edmund Lazo
2b7c53be42 build(vim-patch): runnvim should make redir_test_to_null n/a
Prior patches for it are marked n/a.
Target v8.2.2630 .
2026-08-06 19:33:45 -04:00
Jan Edmund Lazo
12d9f33c15 build(vim-patch): vim9 error 1103 is n/a
v8.2.1341
2026-08-06 13:17:05 -04:00