From 85b1df6ec17c6164ce604153bc27a6cdd39799c5 Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Wed, 29 Jul 2026 00:36:40 -0400 Subject: [PATCH 1/2] build(vim-patch): clientserver feature is N/A Shared API, documented in remote.txt, is surface-level. Assume 0% compatiblity from Vim. --- scripts/vim_na_files.txt | 1 + scripts/vim_na_hunks_vim.txt | 3 +++ 2 files changed, 4 insertions(+) diff --git a/scripts/vim_na_files.txt b/scripts/vim_na_files.txt index 3eefeb67fe..db8c811fc5 100644 --- a/scripts/vim_na_files.txt +++ b/scripts/vim_na_files.txt @@ -76,6 +76,7 @@ src/README.md src/blowfish.c src/cairo.c src/channel.c +src/clientserver.c src/dlldata.c src/hardcopy.c src/iid_ole.c diff --git a/scripts/vim_na_hunks_vim.txt b/scripts/vim_na_hunks_vim.txt index 3cf253ba25..a7e4d417db 100644 --- a/scripts/vim_na_hunks_vim.txt +++ b/scripts/vim_na_hunks_vim.txt @@ -7,6 +7,9 @@ ^err_teapot(.\+err_teapot( ^listener_[a-zA-Z0-9]\+(.\+listener_[a-zA-Z0-9]\+( ^redraw_listener_[a-zA-Z0-9]\+(.\+redraw_listener_[a-zA-Z0-9]\+( +^remote_[a-z]\+(.\+remote_[a-z]\+( +^server2client(.\+server2client( +^serverlist(.\+serverlist( ^test_alloc_fail(.\+test_alloc_fail( ^test_autochdir(.\+test_autochdir( ^test_feedinput(.\+test_feedinput( From a3b85b9a4d14dad67258313acad1fd1650ff74ad Mon Sep 17 00:00:00 2001 From: Jan Edmund Lazo Date: Wed, 29 Jul 2026 07:52:28 -0400 Subject: [PATCH 2/2] build(vim-patch): ':vim9' is n/a 1. Vim9 error messages, ex commands, are N/A. 2. ":scriptversion" is N/A: 3. Most `#.*define.*ex_ni$` are N/A because `FEAT_` compile guards are N/A. ---- Target patch: v8.2.2238 Actual patch list: ``` vim-patch:8.2.4240: error for using flatten() in Vim9 script is unclear vim-patch:9.0.0170: various minor code formatting issues vim-patch:9.1.0356: MS-Windows: --remote may change working directory vim-patch:9.2.0251: Link error when building without channel feature vim-patch:9.2.0714: Coverity warns for NULL deref vim-patch:9.2.0818: tests: client-server test fails without X11 server vim-patch:9.2.0868: GTK: Window Manager hint prevents giving focus to dialog ``` ---- Ignore diff blanklines via regex ("-I"), not "--ignore-blank-lines". Almost useless. I tried with/without "--word-diff=porcelain", "--word-diff-regex", and diff algorithms like `--histogram`. --- scripts/vim-patch.sh | 18 ++++++++++++++++-- scripts/vim_na_hunks_vim.txt | 3 +++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/scripts/vim-patch.sh b/scripts/vim-patch.sh index eaaab1c28f..cf77a68d97 100755 --- a/scripts/vim-patch.sh +++ b/scripts/vim-patch.sh @@ -942,11 +942,25 @@ is_na_patch() { fi ;; *.h) - HUNKS=$(git -C "${VIM_SOURCE_DIR}" diff-tree --no-commit-id -r -b -U0 '-I^#\s*(else|endif)' '-I^#\s*(ifdef|if.*defined\().*FEAT_' "$patch" -- "${file}") + HUNKS=$(git -C "${VIM_SOURCE_DIR}" diff-tree --no-commit-id -r -b -U0 \ + '-I^\s+$' \ + '-I^#\s*(ifdef|if.*defined\().*FEAT_' \ + '-I^#\s*(else|endif)' \ + '-I^EXTERN char e_.*vim9' \ + '-I^\s*INIT\(= .+"E[0-9]+: .*[vV]im9' \ + "$patch" -- "$file") test -n "${HUNKS}" && return 1 ;; *.c) - HUNKS=$(git -C "${VIM_SOURCE_DIR}" diff-tree --no-commit-id -r -b -U0 '-I^#\s*(else|endif)' '-I^#\s*(ifdef|if.*defined\().*FEAT_' "$patch" -- "$file" | grep -P '^@@ .* @@') + HUNKS=$(git -C "${VIM_SOURCE_DIR}" diff-tree --no-commit-id -r -b -U0 \ + '-I^\s+$' \ + '-I^#\s*(ifdef|if.*defined\().*FEAT_' \ + '-I^#\s*(else|endif)' \ + '-I#\s*define.*ex_ni$' \ + '-I[_.>]sc_version = ' \ + '-I[_.>]uf_script_ctx_version = ' \ + "$patch" -- "${file}" | + grep '^@@ .* @@') if test -n "$HUNKS"; then HUNK_NUM_FINAL=$(echo "$HUNKS" | sed 's/^@@ .* @@ \?//' | grep -cv -f "$NA_HUNKS_C") test "$HUNK_NUM_FINAL" -ne 0 && return 1 diff --git a/scripts/vim_na_hunks_vim.txt b/scripts/vim_na_hunks_vim.txt index a7e4d417db..b7177fd02a 100644 --- a/scripts/vim_na_hunks_vim.txt +++ b/scripts/vim_na_hunks_vim.txt @@ -1,3 +1,4 @@ +^:vim9.\+ .\+\*:vim9.\+\* ^balloon_[a-zA-Z0-9_]\+(.\+balloon_[a-zA-Z0-9_]\+( ^cscope_connection(.\+cscope_connection( ^js_decode(.\+js_decode( @@ -87,6 +88,8 @@ \*:shell\* \*:smile\* \*:version\* +\*E984\* +\*E999\* \*HelpToc-mappings\* \*SafeStateAgain\* \*SigUSR1\*