Build of 8.2.4277 failed

2022-01-31 Fir de Conversatie Elimar Riesebieter
Hi all,

my build of 8.2.4277 failed.

CC=clang-13
Term=tmux

/usr/bin/ld: objects/testing.o: in function `test_gui_find_repl':
./src/vim-athena/testing.c:1354: undefined reference to `gui_do_findrepl'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
link.sh: Linking failed

Elimar
-- 
  The path to source is always uphill!
-unknown-

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220201072940.7dfccdl4l35qsj5g%40baumbart.home.lxtec.de.


doesn't make sure the visual marks are updated

2022-01-31 Fir de Conversatie Christian J. Robinson
I have several visual mappings that could benefit from  but they
call functions that rely on the `< and `> marks to be properly set, and
 doesn't make sure they are "current" so the marks from a
previous visual selection are used.

If I prefix the  with  the marks update.

It took me a while to figure this out as the behavior was so strange to me
(and my mappings/functions are fairly complex).

- Christian

-- 
Christian J. Robinson 

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/CAK14FZLOTF_nyQGhrBcRToxVxnG3KCT1M_1653xpMt0zD_gtkg%40mail.gmail.com.


Patch 8.2.4277

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4277
Problem:Vim9: an import does not shadow a command modifier.
Solution:   Do not accept a command modifier followed by a dot.
Files:  src/ex_docmd.c, src/testdir/test_vim9_import.vim


*** ../vim-8.2.4276/src/ex_docmd.c  2022-01-29 15:19:19.546172430 +
--- src/ex_docmd.c  2022-01-31 18:55:30.079348116 +
***
*** 2709,2715 
  /*
   * Check for an Ex command with optional tail.
   * If there is a match advance "pp" to the argument and return TRUE.
!  * If "noparen" is TRUE do not recognize the command followed by "(".
   */
  static int
  checkforcmd_opt(
--- 2709,2715 
  /*
   * Check for an Ex command with optional tail.
   * If there is a match advance "pp" to the argument and return TRUE.
!  * If "noparen" is TRUE do not recognize the command followed by "(" or ".".
   */
  static int
  checkforcmd_opt(
***
*** 2723,2730 
  for (i = 0; cmd[i] != NUL; ++i)
if (((char_u *)cmd)[i] != (*pp)[i])
break;
! if (i >= len && !isalpha((*pp)[i])
!  && (*pp)[i] != '_' && (!noparen || (*pp)[i] != '('))
  {
*pp = skipwhite(*pp + i);
return TRUE;
--- 2723,2730 
  for (i = 0; cmd[i] != NUL; ++i)
if (((char_u *)cmd)[i] != (*pp)[i])
break;
! if (i >= len && !isalpha((*pp)[i]) && (*pp)[i] != '_'
!&& (!noparen || ((*pp)[i] != '(' && (*pp)[i] != '.')))
  {
*pp = skipwhite(*pp + i);
return TRUE;
***
*** 2746,2752 
  }
  
  /*
!  * Check for an Ex command with optional tail, not followed by "(".
   * If there is a match advance "pp" to the argument and return TRUE.
   */
  int
--- 2746,2752 
  }
  
  /*
!  * Check for an Ex command with optional tail, not followed by "(" or ".".
   * If there is a match advance "pp" to the argument and return TRUE.
   */
  int
*** ../vim-8.2.4276/src/testdir/test_vim9_import.vim2022-01-30 
18:40:40.535255817 +
--- src/testdir/test_vim9_import.vim2022-01-31 18:54:39.692091224 +
***
*** 142,147 
--- 142,155 
unlet g:imported_func
delete('Ximport_lbr.vim')
  
+   var import_shadows_cmdmod_lines =<< trim END
+   vim9script
+   import './Xexport.vim' as vim9
+   vim9.exp_name = 'Shadow'
+   assert_equal('Shadow', vim9.exp_name)
+   END
+   v9.CheckScriptSuccess(import_shadows_cmdmod_lines)
+ 
var line_break_before_dot =<< trim END
  vim9script
  import './Xexport.vim' as expo
***
*** 365,371 
assert_fails('source Ximport.vim', 'E46: Cannot change read-only variable 
"CONST"', '', 3)
  
delete('Ximport.vim')
-   delete('Ximport3.vim')
delete('Xexport.vim')
  
# Check that in a Vim9 script 'cpo' is set to the Vim default.
--- 373,378 
*** ../vim-8.2.4276/src/version.c   2022-01-31 17:39:45.394105533 +
--- src/version.c   2022-01-31 18:24:23.455077073 +
***
*** 748,749 
--- 748,751 
  {   /* Add new patch number below this line */
+ /**/
+ 4277,
  /**/

-- 
I have read and understood the above. X

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131185948.702E71C1918%40moolenaar.net.


Patch 8.2.4276

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4276
Problem:Separate test function for the GUI scrollbar.
Solution:   Use test_gui_event(). (Yegappan Lakshmanan, closes #9674)
Files:  runtime/doc/builtin.txt, runtime/doc/testing.txt,
runtime/doc/usr_41.txt, src/evalfunc.c, src/testing.c,
src/proto/testing.pro, src/testdir/test_gui.vim,
src/testdir/test_vim9_builtin.vim


*** ../vim-8.2.4275/runtime/doc/builtin.txt 2022-01-31 12:26:47.847706522 
+
--- runtime/doc/builtin.txt 2022-01-31 17:35:24.613849342 +
***
*** 654,661 
  test_option_not_set({name})   nonereset flag indicating option was set
  test_override({expr}, {val})  nonetest with Vim internal overrides
  test_refcount({expr}) Number  get the reference count of {expr}
- test_scrollbar({which}, {value}, {dragging})
-   nonescroll in the GUI for testing
  test_setmouse({row}, {col})   noneset the mouse position for testing
  test_settime({expr})  noneset current time for testing
  test_srand_seed([seed])   noneset seed for testing srand()
--- 654,659 
***
*** 89,94 
--- 92,98 
"dropfiles" drop one or more files in a window.
"findrepl"  search and replace text
"mouse" mouse button click event.
+   "scrollbar" move or drag the scrollbar
"tabline"   select a tab page by mouse click.
"tabmenu"   select a tabline menu entry.
  
***
*** 146,151 
--- 150,171 
8   alt is pressed
   16   ctrl is pressed
  
+   "scrollbar":
+ Set or drag the left, right or horizontal scrollbar.  Only
+ works when the scrollbar actually exists.  The supported
+ items in {args} are:
+   which:  scrollbar. The supported values are:
+   left  Left scrollbar of the current window
+   right Right scrollbar of the current window
+   hor   Horizontal scrollbar
+   value:  amount to scroll.  For the vertical scrollbars
+   the value can be 1 to the line-count of the
+   buffer.  For the horizontal scrollbar the
+   value can be between 1 and the maximum line
+   length, assuming 'wrap' is not set.
+   dragging:   1 to drag the scrollbar and 0 to click in the
+   scrollbar.
+ 
"tabline":
  Inject a mouse click event on the tabline to select a
  tabpage. The supported items in {args} are:
***
*** 287,312 
GetVarname()->test_refcount()
  
  
- test_scrollbar({which}, {value}, {dragging})  *test_scrollbar()*
-   Pretend using scrollbar {which} to move it to position
-   {value}.  {which} can be:
-   leftLeft scrollbar of the current window
-   right   Right scrollbar of the current window
-   hor Horizontal scrollbar
- 
-   For the vertical scrollbars {value} can be 1 to the
-   line-count of the buffer.  For the horizontal scrollbar the
-   {value} can be between 1 and the maximum line length, assuming
-   'wrap' is not set.
- 
-   When {dragging} is non-zero it's like dragging the scrollbar,
-   otherwise it's like clicking in the scrollbar.
-   Only works when the {which} scrollbar actually exists,
-   obviously only when using the GUI.
- 
-   Can also be used as a |method|: >
-   GetValue()->test_scrollbar('right', 0)
- 
  test_setmouse({row}, {col})   *test_setmouse()*
Set the mouse position to be used for the next mouse action.
{row} and {col} are one based.
--- 301,306 
*** ../vim-8.2.4275/runtime/doc/usr_41.txt  2022-01-31 12:26:47.847706522 
+
--- runtime/doc/usr_41.txt  2022-01-31 17:35:24.613849342 +
***
*** 1039,1045 
test_setmouse() set the mouse position
test_feedinput()add key sequence to input buffer
test_option_not_set()   reset flag indicating option was set
-   test_scrollbar()simulate scrollbar movement in the GUI
test_refcount() return an expression's reference count
test_srand_seed()   set the seed value for srand()
test_unknown()  return a value with unknown type
--- 1130,1135 
*** ../vim-8.2.4275/src/evalfunc.c  2022-01-31 14:59:33.514943760 +
--- src/evalfunc.c  

Patch 8.2.4275

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4275
Problem:Cannot use an autoload function from a package under start.
Solution:   Also look in the "start" package directory. (Bjorn Linse,
closes #7193)
Files:  src/scriptfile.c, src/testdir/test_packadd.vim


*** ../vim-8.2.4274/src/scriptfile.c2022-01-20 19:10:20.498583720 +
--- src/scriptfile.c2022-01-31 17:21:00.446433102 +
***
*** 2294,2300 
  
// Try loading the package from $VIMRUNTIME/autoload/.vim
// Use "ret_sid" to avoid loading the same script again.
!   if (source_in_path(p_rtp, scriptname, 0, _sid) == OK)
ret = TRUE;
  }
  
--- 2294,2300 
  
// Try loading the package from $VIMRUNTIME/autoload/.vim
// Use "ret_sid" to avoid loading the same script again.
!   if (source_in_path(p_rtp, scriptname, DIP_START, _sid) == OK)
ret = TRUE;
  }
  
*** ../vim-8.2.4274/src/testdir/test_packadd.vim2020-08-12 
17:50:31.883655785 +0100
--- src/testdir/test_packadd.vim2022-01-31 17:24:22.683505727 +
***
*** 246,251 
--- 246,264 
call assert_equal(4321, g:plugin_bar_number)
  endfunc
  
+ func Test_start_autoload()
+   " plugin foo with an autoload directory
+   let autodir =  .. '/pack/mine/start/foo/autoload'
+   call mkdir(autodir, 'p')
+   let fname = autodir .. '/foobar.vim'
+   call writefile(['func foobar#test()',
+   \ '  return 1666',
+   \ 'endfunc'], fname)
+ 
+   call assert_equal(1666, foobar#test())
+   call delete(fname)
+ endfunc
+ 
  func Test_helptags()
let docdir1 =  . '/pack/mine/start/foo/doc'
let docdir2 =  . '/pack/mine/start/bar/doc'
*** ../vim-8.2.4274/src/version.c   2022-01-31 17:08:05.653352132 +
--- src/version.c   2022-01-31 17:25:05.434884963 +
***
*** 748,749 
--- 748,751 
  {   /* Add new patch number below this line */
+ /**/
+ 4275,
  /**/

-- 
This computer is so slow, it takes forever to execute and endless loop!

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131172739.E41931C1918%40moolenaar.net.


Patch 8.2.4274

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4274
Problem:Basic and form filetype detection is incomplete.
Solution:   Add a separate function for .frm files. (Doug Kearns, closes #9675)
Files:  runtime/autoload/dist/ft.vim, runtime/filetype.vim,
src/testdir/test_filetype.vim


*** ../vim-8.2.4273/runtime/autoload/dist/ft.vim2022-01-28 
14:15:06.440853078 +
--- runtime/autoload/dist/ft.vim2022-01-31 17:03:55.584747171 +
***
*** 67,72 
--- 67,75 
endif
  endfunc
  
+ let s:ft_visual_basic_content = '\cVB_Name\|Begin 
VB\.\(Form\|MDIForm\|UserControl\)'
+ 
+ " See FTfrm() for Visual Basic form file detection
  func dist#ft#FTbas()
if exists("g:filetype_bas")
  exe "setf " . g:filetype_bas
***
*** 86,92 
  setf freebasic
elseif match(lines, qb64_preproc) > -1
  setf qb64
!   elseif match(lines, '\cVB_Name\|Begin VB\.\(Form\|MDIForm\|UserControl\)') 
> -1
  setf vb
else
  setf basic
--- 89,95 
  setf freebasic
elseif match(lines, qb64_preproc) > -1
  setf qb64
!   elseif match(lines, s:ft_visual_basic_content) > -1
  setf vb
else
  setf basic
***
*** 235,240 
--- 238,258 
endif
  endfunc
  
+ func dist#ft#FTfrm()
+   if exists("g:filetype_frm")
+ exe "setf " . g:filetype_frm
+ return
+   endif
+ 
+   let lines = getline(1, min([line("$"), 5]))
+ 
+   if match(lines, s:ft_visual_basic_content) > -1
+ setf vb
+   else
+ setf form
+   endif
+ endfunc
+ 
  " Distinguish between Forth and F#.
  " Provided by Doug Kearns.
  func dist#ft#FTfs()
*** ../vim-8.2.4273/runtime/filetype.vim2022-01-29 12:45:43.958338766 
+
--- runtime/filetype.vim2022-01-31 17:03:55.584747171 +
***
*** 2051,2057 
\ endif
  
  " Visual Basic (also uses *.bas) or FORM
! au BufNewFile,BufRead *.frm   call dist#ft#FTVB("form")
  
  " SaxBasic is close to Visual Basic
  au BufNewFile,BufRead *.sba   setf vb
--- 2051,2057 
\ endif
  
  " Visual Basic (also uses *.bas) or FORM
! au BufNewFile,BufRead *.frm   call dist#ft#FTfrm()
  
  " SaxBasic is close to Visual Basic
  au BufNewFile,BufRead *.sba   setf vb
*** ../vim-8.2.4273/src/testdir/test_filetype.vim   2022-01-29 
12:45:43.958338766 +
--- src/testdir/test_filetype.vim   2022-01-31 17:03:55.584747171 +
***
*** 183,188 
--- 183,189 
  \ 'fgl': ['file.4gl', 'file.4gh', 'file.m4gl'],
  \ 'fish': ['file.fish'],
  \ 'focexec': ['file.fex', 'file.focexec'],
+ \ 'form': ['file.frm'],
  \ 'forth': ['file.ft', 'file.fth'],
  \ 'fortran': ['file.f', 'file.for', 'file.fortran', 'file.fpp', 
'file.ftn', 'file.f77', 'file.f90', 'file.f95', 'file.f03', 'file.f08'],
  \ 'fpcmake': ['file.fpc'],
***
*** 1278,1281 
--- 1279,1309 
filetype off
  endfunc
  
+ func Test_frm_file()
+   filetype on
+ 
+   call writefile(['looks like FORM'], 'Xfile.frm')
+   split Xfile.frm
+   call assert_equal('form', )
+   bwipe!
+ 
+   " Test dist#ft#FTfrm()
+ 
+   let g:filetype_frm = 'form'
+   split Xfile.frm
+   call assert_equal('form', )
+   bwipe!
+   unlet g:filetype_frm
+ 
+   " Visual Basic
+ 
+   call writefile(['Begin VB.Form Form1'], 'Xfile.frm')
+   split Xfile.frm
+   call assert_equal('vb', )
+   bwipe!
+ 
+   call delete('Xfile.frm')
+   filetype off
+ endfunc
+ 
  " vim: shiftwidth=2 sts=2 expandtab
*** ../vim-8.2.4273/src/version.c   2022-01-31 14:59:33.530943518 +
--- src/version.c   2022-01-31 17:06:53.226326429 +
***
*** 748,749 
--- 748,751 
  {   /* Add new patch number below this line */
+ /**/
+ 4274,
  /**/

-- 
CRONE:  Who sent you?
ARTHUR: The Knights Who Say GNU!
CRONE:  Aaaagh!  (she looks around in rear) No!  We have no licenses here.
   "Monty Python and the Holy editor wars" PYTHON (MONTY) SOFTWARE LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131170951.03B2E1C1918%40moolenaar.net.


Patch 8.2.4273

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4273
Problem:The EBCDIC support is outdated.
Solution:   Remove the EBCDIC support.
Files:  src/ascii.h, src/charset.c, src/cindent.c, src/digraph.c,
src/edit.c, src/eval.c, src/evalfunc.c, src/ex_cmds.c,
src/feature.h, src/filepath.c, src/findfile.c, src/getchar.c,
src/gui.c, src/gui_motif.c, src/hardcopy.c, src/help.c,
src/macros.h, src/map.c, src/mark.c, src/misc2.c, src/normal.c,
src/ops.c, src/option.c, src/option.h, src/optiondefs.h,
src/os_unix.c, src/proto/evalfunc.pro, src/regexp.c,
src/regexp_bt.c, src/regexp_nfa.c, src/register.c, src/screen.c,
src/spell.c, src/strings.c, src/structs.h, src/term.c,
src/version.c, src/viminfo.c, src/testdir/test_edit.vim,
src/testdir/test_exec_while_if.vim, src/testdir/test_expr.vim,
src/testdir/test_gf.vim, src/testdir/test_regexp_utf8.vim


*** ../vim-8.2.4272/src/ascii.h 2019-11-30 16:54:29.0 +
--- src/ascii.h 2022-01-31 14:03:51.657359129 +
***
*** 8,21 
  
  /*
   * Definitions of various common control characters.
-  * For EBCDIC we have to use different values.
   */
  
- #ifndef EBCDIC
- 
- // IF_EB(ASCII_constant, EBCDIC_constant)
- #define IF_EB(a, b)   a
- 
  #define CharOrd(x)((x) < 'a' ? (x) - 'A' : (x) - 'a')
  #define CharOrdLow(x) ((x) - 'a')
  #define CharOrdUp(x)  ((x) - 'A')
--- 8,15 
***
*** 77,170 
  #define Ctrl_HAT  30  // ^
  #define Ctrl__31
  
- #else
- 
- // EBCDIC
- 
- // IF_EB(ASCII_constant, EBCDIC_constant)
- #define IF_EB(a, b)   b
- 
- /*
-  * Finding the position in the alphabet is not straightforward in EBCDIC.
-  * There are gaps in the code table.
-  * 'a' + 1 == 'b', but: 'i' + 7 == 'j' and 'r' + 8 == 's'
-  */
- #define CharOrd__(c) ((c) < ('j' - 'a') ? (c) : ((c) < ('s' - 'a') ? (c) - 7 
: (c) - 7 - 8))
- #define CharOrdLow(x) (CharOrd__((x) - 'a'))
- #define CharOrdUp(x) (CharOrd__((x) - 'A'))
- #define CharOrd(x) (isupper(x) ? CharOrdUp(x) : CharOrdLow(x))
- 
- #define EBCDIC_CHAR_ADD_(x) ((x) < 
0?'a':(x)>25?'z':"abcdefghijklmnopqrstuvwxyz"[x])
- #define EBCDIC_CHAR_ADD(c,s) (isupper(c) ? 
toupper(EBCDIC_CHAR_ADD_(CharOrdUp(c)+(s))) : 
EBCDIC_CHAR_ADD_(CharOrdLow(c)+(s)))
- 
- #define R13_(c) ("abcdefghijklmnopqrstuvwxyz"[((c) + 13) % 26])
- #define ROT13(c, a)  (isupper(c) ? toupper(R13_(CharOrdUp(c))) : 
R13_(CharOrdLow(c)))
- 
- #define NUL   '\000'
- #define BELL  '\x2f'
- #define BS'\x16'
- #define TAB   '\x05'
- #define NL'\x15'
- #define NL_STR(char_u *)"\x15"
- #define FF'\x0C'
- #define CAR   '\x0D'
- #define ESC   '\x27'
- #define ESC_STR   (char_u *)"\x27"
- #define ESC_STR_nc"\x27"
- #define DEL   0x07
- #define DEL_STR   (char_u *)"\007"
- 
- #define POUND 0xB1
- 
- #define CTRL_F_STR"\056"
- #define CTRL_H_STR"\026"
- #define CTRL_V_STR"\062"
- 
- #define Ctrl_AT   0x00   // @
- #define Ctrl_A0x01
- #define Ctrl_B0x02
- #define Ctrl_C0x03
- #define Ctrl_D0x37
- #define Ctrl_E0x2D
- #define Ctrl_F0x2E
- #define Ctrl_G0x2F
- #define Ctrl_H0x16
- #define Ctrl_I0x05
- #define Ctrl_J0x15
- #define Ctrl_K0x0B
- #define Ctrl_L0x0C
- #define Ctrl_M0x0D
- #define Ctrl_N0x0E
- #define Ctrl_O0x0F
- #define Ctrl_P0x10
- #define Ctrl_Q0x11
- #define Ctrl_R0x12
- #define Ctrl_S0x13
- #define Ctrl_T0x3C
- #define Ctrl_U0x3D
- #define Ctrl_V0x32
- #define Ctrl_W0x26
- #define Ctrl_X0x18
- #define Ctrl_Y0x19
- #define Ctrl_Z0x3F
-   // CTRL- [ Left Square Bracket == ESC
- #define Ctrl_RSB  0x1D  // ] Right Square Bracket
- #define Ctrl_BSL  0x1C  // \ BackSLash
- #define Ctrl_HAT  0x1E  // ^
- #define Ctrl__0x1F
- 
- #define Ctrl_chr(x)   (CtrlTable[(x)])
- extern char CtrlTable[];
- 
- #define CtrlChar(x)   ((x < ' ') ? CtrlCharTable[(x)] : 0)
- extern char CtrlCharTable[];
- 
- #define MetaChar(x)   ((x < ' ') ? MetaCharTable[(x)] : 0)
- extern char MetaCharTable[];
- 
- #endif // defined EBCDIC
- 
- // TODO: EBCDIC Code page dependent (here 1047)
  #define CSI   0x9b// Control Sequence Introducer
  #define CSI_STR   "\233"
  #define DCS   0x90// Device Control String
--- 71,76 
*** ../vim-8.2.4272/src/charset.c   2022-01-08 12:41:12.200795557 +
--- src/charset.c   2022-01-31 14:29:22.134397580 +
***
*** 87,104 

Patch 8.2.4272

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4272
Problem:Vim9 expr test fails without the channel feature. (Dominique
Pellé)
Solution:   Remove "g:" before "CheckFeature". (closes #9671)
Files:  src/testdir/test_vim9_expr.vim


*** ../vim-8.2.4271/src/testdir/test_vim9_expr.vim  2022-01-30 
15:28:26.646294975 +
--- src/testdir/test_vim9_expr.vim  2022-01-31 13:33:38.855019338 +
***
*** 1472,1478 
  endfunc
  
  func Test_expr5_fails_channel()
!   g:CheckFeature channel
call v9.CheckDefAndScriptFailure(["var x = 'a' .. test_null_job()"], 
['E1105:', 'E908:'], 1)
call v9.CheckDefAndScriptFailure(["var x = 'a' .. test_null_channel()"], 
['E1105:', 'E908:'], 1)
  endfunc
--- 1472,1479 
  endfunc
  
  func Test_expr5_fails_channel()
!   CheckFeature channel
! 
call v9.CheckDefAndScriptFailure(["var x = 'a' .. test_null_job()"], 
['E1105:', 'E908:'], 1)
call v9.CheckDefAndScriptFailure(["var x = 'a' .. test_null_channel()"], 
['E1105:', 'E908:'], 1)
  endfunc
***
*** 1689,1695 
  endfunc
  
  func Test_expr6_float_fails()
!   g:CheckFeature float
call v9.CheckDefAndScriptFailure(["var x = 1.0 % 2"], ['E1035:', 'E804:'], 
1)
  endfunc
  
--- 1690,1696 
  endfunc
  
  func Test_expr6_float_fails()
!   CheckFeature float
call v9.CheckDefAndScriptFailure(["var x = 1.0 % 2"], ['E1035:', 'E804:'], 
1)
  endfunc
  
*** ../vim-8.2.4271/src/version.c   2022-01-31 13:25:32.818755362 +
--- src/version.c   2022-01-31 13:34:57.489773181 +
***
*** 752,753 
--- 752,755 
  {   /* Add new patch number below this line */
+ /**/
+ 4272,
  /**/

-- 
|

Ceci n'est pas une pipe.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131133713.E03511C1918%40moolenaar.net.


Patch 8.2.4271

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4271
Problem:MS-Windows: cannot build with Ruby 3.1.0.
Solution:   Adjust the DLL name and include directory. (Ken Takata,
closes #9666)
Files:  src/Make_cyg_ming.mak, src/Make_mvc.mak


*** ../vim-8.2.4270/src/Make_cyg_ming.mak   2022-01-31 12:26:47.847706522 
+
--- src/Make_cyg_ming.mak   2022-01-31 13:23:38.748583981 +
***
*** 466,471 
--- 466,473 
  RUBY_PLATFORM = i386-mingw32
else ifneq ($(wildcard $(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/x64-mingw32),)
  RUBY_PLATFORM = x64-mingw32
+   else ifneq ($(wildcard 
$(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/x64-mingw-ucrt),)
+ RUBY_PLATFORM = x64-mingw-ucrt
else
  RUBY_PLATFORM = i386-mswin32
endif
***
*** 479,485 
  # Base name of msvcrXX.dll which is used by ruby's dll.
  RUBY_MSVCRT_NAME = msvcrt
 endif
!ifeq ($(ARCH),x86-64)
  RUBY_INSTALL_NAME = x64-$(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
 else
  RUBY_INSTALL_NAME = $(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
--- 481,489 
  # Base name of msvcrXX.dll which is used by ruby's dll.
  RUBY_MSVCRT_NAME = msvcrt
 endif
!ifeq ($(RUBY_PLATFORM),x64-mingw-ucrt)
! RUBY_INSTALL_NAME = x64-ucrt-ruby$(RUBY_API_VER)
!else ifeq ($(ARCH),x86-64)
  RUBY_INSTALL_NAME = x64-$(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
 else
  RUBY_INSTALL_NAME = $(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
*** ../vim-8.2.4270/src/Make_mvc.mak2022-01-31 12:26:47.847706522 +
--- src/Make_mvc.mak2022-01-31 13:23:38.748583981 +
***
*** 1186,1192 
--- 1186,1196 
  !   if "$(CPU)" == "i386"
  RUBY_INSTALL_NAME = $(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
  !   else # CPU
+ !if EXIST($(RUBY)/lib/ruby/$(RUBY_API_VER_LONG)/x64-mingw-ucrt)
+ RUBY_INSTALL_NAME = x64-ucrt-ruby$(RUBY_API_VER)
+ !else
  RUBY_INSTALL_NAME = x64-$(RUBY_MSVCRT_NAME)-ruby$(RUBY_API_VER)
+ !endif
  !   endif # CPU
  !  endif # RUBY_INSTALL_NAME
  
*** ../vim-8.2.4270/src/version.c   2022-01-31 12:26:47.851706462 +
--- src/version.c   2022-01-31 13:25:12.791075932 +
***
*** 752,753 
--- 752,755 
  {   /* Add new patch number below this line */
+ /**/
+ 4271,
  /**/

-- 
Westheimer's Discovery:
A couple of months in the laboratory can
frequently save a couple of hours in the library.

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131132713.957C41C1918%40moolenaar.net.


Patch 8.2.4270

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4270
Problem:Generating nv_cmdidxs.h requires building Vim twice.
Solution:   Move the table into a separate file and use a separate executable
to extract the command characters. (Ozaki Kiichi, closes #9669)
Files:  src/normal.c, src/nv_cmds.h, Filelist, runtime/doc/builtin.txt,
runtime/doc/usr_41.txt, src/Make_cyg_ming.mak, src/Make_mvc.mak,
src/Make_vms.mms, src/Makefile, src/create_nvcmdidxs.c,
src/create_nvcmdidxs.vim, src/evalfunc.c, src/proto/normal.pro


*** ../vim-8.2.4269/src/normal.c2022-01-29 13:06:19.340028690 +
--- src/normal.c2022-01-31 12:19:59.489857182 +
***
*** 1,6 
  /* vi:set ts=8 sts=4 sw=4 noet:
   *
!  * VIM - Vi IMproved  by Bram Moolenaar
   *
   * Do ":help uganda"  in Vim to read copying and usage conditions.
   * Do ":help credits" in Vim to see a list of people who contributed.
--- 1,6 
  /* vi:set ts=8 sts=4 sw=4 noet:
   *
!  * VIM - Vi IMproved  by Bram Moolenaar et al.
   *
   * Do ":help uganda"  in Vim to read copying and usage conditions.
   * Do ":help credits" in Vim to see a list of people who contributed.
***
*** 127,446 
  #endif
  static void   nv_cursorhold(cmdarg_T *cap);
  
! #ifdef FEAT_GUI
! #define NV_VER_SCROLLBAR  nv_ver_scrollbar
! #define NV_HOR_SCROLLBAR  nv_hor_scrollbar
! #else
! #define NV_VER_SCROLLBAR nv_error
! #define NV_HOR_SCROLLBAR nv_error
! #endif
! 
! #ifdef FEAT_GUI_TABLINE
! #define NV_TABLINEnv_tabline
! #define NV_TABMENUnv_tabmenu
! #else
! #define NV_TABLINEnv_error
! #define NV_TABMENUnv_error
! #endif
! 
! #ifdef FEAT_NETBEANS_INTG
! #define NV_NBCMD  nv_nbcmd
! #else
! #define NV_NBCMD  nv_error
! #endif
! 
! #ifdef FEAT_DND
! #define NV_DROP   nv_drop
! #else
! #define NV_DROP   nv_error
! #endif
! 
! /*
!  * Function to be called for a Normal or Visual mode command.
!  * The argument is a cmdarg_T.
!  */
! typedef void (*nv_func_T)(cmdarg_T *cap);
! 
! // Values for cmd_flags.
! #define NV_NCH0x01  // may need to get a second char
! #define NV_NCH_NOP  (0x02|NV_NCH) // get second char when no operator pending
! #define NV_NCH_ALW  (0x04|NV_NCH) // always get a second char
! #define NV_LANG   0x08// second char needs language adjustment
! 
! #define NV_SS 0x10// may start selection
! #define NV_SSS0x20// may start selection with shift 
modifier
! #define NV_STS0x40// may stop selection without shift 
modif.
! #define NV_RL 0x80// 'rightleft' modifies command
! #define NV_KEEPREG  0x100 // don't clear regname
! #define NV_NCW0x200   // not allowed in command-line window
! 
! /*
!  * Generally speaking, every Normal mode command should either clear any
!  * pending operator (with *clearop*()), or set the motion type variable
!  * oap->motion_type.
!  *
!  * When a cursor motion command is made, it is marked as being a character or
!  * line oriented motion.  Then, if an operator is in effect, the operation
!  * becomes character or line oriented accordingly.
!  */
! 
! /*
!  * This table contains one entry for every Normal or Visual mode command.
!  * The order doesn't matter, this will be sorted by the create_nvcmdidx.vim
!  * script to generate the nv_cmd_idx[] lookup table.
!  * It is faster when all keys from zero to '~' are present.
!  *
!  * After changing the "nv_cmds" table:
!  * 1. Build Vim with "make"
!  * 2. Run "make nvcmdidxs" to re-generate the nv_cmdidxs.h file.
!  * 3. Build Vim with "make" to use the newly generated index table.
!  */
! static const struct nv_cmd
! {
! int   cmd_char;   // (first) command character
! nv_func_T   cmd_func; // function for this command
! short_u   cmd_flags;  // NV_ flags
! short cmd_arg;// value for ca.arg
! } nv_cmds[] =
! {
! {NUL, nv_error,   0,  0},
! {Ctrl_A,  nv_addsub,  0,  0},
! {Ctrl_B,  nv_page,NV_STS, BACKWARD},
! {Ctrl_C,  nv_esc, 0,  TRUE},
! {Ctrl_D,  nv_halfpage,0,  0},
! {Ctrl_E,  nv_scroll_line, 0,  TRUE},
! {Ctrl_F,  nv_page,NV_STS, FORWARD},
! {Ctrl_G,  nv_ctrlg,   0,  0},
! {Ctrl_H,  nv_ctrlh,   0,  0},
! {Ctrl_I,  nv_pcmark,  0,  0},
! {NL,  nv_down,0,  FALSE},
! {Ctrl_K,  nv_error,   0,  0},
! {Ctrl_L,  nv_clear,   0,  0},
! {CAR, nv_down,0,  TRUE},
! {Ctrl_N,  nv_down,NV_STS, FALSE},
! {Ctrl_O,  nv_ctrlo,   0,  0},
! {Ctrl_P,  nv_up,  

Patch 8.2.4269

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4269
Problem:Coverity warns for using a NULL pointer.
Solution:   Check for "name" to not be NULL.
Files:  src/userfunc.c


*** ../vim-8.2.4268/src/userfunc.c  2022-01-30 19:37:46.738366658 +
--- src/userfunc.c  2022-01-31 11:43:17.726772724 +
***
*** 4232,4238 
name = prefixed;
}
}
!   else if (vim9script && vim_strchr(name, AUTOLOAD_CHAR) != NULL)
{

emsg(_(e_cannot_use_name_with_hash_in_vim9_script_use_export_instead));
goto ret_free;
--- 4232,4239 
name = prefixed;
}
}
!   else if (vim9script && name != NULL
!   && vim_strchr(name, AUTOLOAD_CHAR) != NULL)
{

emsg(_(e_cannot_use_name_with_hash_in_vim9_script_use_export_instead));
goto ret_free;
*** ../vim-8.2.4268/src/version.c   2022-01-31 11:38:49.982532692 +
--- src/version.c   2022-01-31 11:43:50.810299600 +
***
*** 752,753 
--- 752,755 
  {   /* Add new patch number below this line */
+ /**/
+ 4269,
  /**/

-- 
Eye have a spelling checker, it came with my PC;
It plainly marks four my revue mistakes I cannot sea.
I've run this poem threw it, I'm sure your please to no,
It's letter perfect in it's weigh, my checker tolled me sew!

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131114517.2960E1C1918%40moolenaar.net.


Patch 8.2.4268

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4268
Problem:CI log output is long.
Solution:   Group output in sections. (Ozaki Kiichi, closes #9670)
Files:  .github/workflows/ci.yml


*** ../vim-8.2.4267/.github/workflows/ci.yml2022-01-26 16:20:18.067215753 
+
--- .github/workflows/ci.yml2022-01-31 11:37:15.463821879 +
***
*** 530,545 
call "%VCVARSALL%" ${{ matrix.vcarch }}
cd src
echo.
!   echo %COL_GREEN%vim version:%COL_RESET%
.\vim --version || exit 1
  
echo %COL_GREEN%Start testing vim in background.%COL_RESET%
start cmd /c "cd ..\src2\testdir & nmake -nologo -f Make_dos.mak 
VIMPROG=..\..\src\vim > nul & echo done>done.txt"
  
!   echo %COL_GREEN%Test gvim:%COL_RESET%
cd testdir
nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1
cd ..
  
echo %COL_GREEN%Wait for vim tests to finish.%COL_RESET%
cd ..\src2\testdir
--- 530,547 
call "%VCVARSALL%" ${{ matrix.vcarch }}
cd src
echo.
!   echo ::group::%COL_GREEN%Vim version:%COL_RESET%
.\vim --version || exit 1
+   echo ::endgroup::
  
echo %COL_GREEN%Start testing vim in background.%COL_RESET%
start cmd /c "cd ..\src2\testdir & nmake -nologo -f Make_dos.mak 
VIMPROG=..\..\src\vim > nul & echo done>done.txt"
  
!   echo ::group::%COL_GREEN%Test gvim:%COL_RESET%
cd testdir
nmake -nologo -f Make_dos.mak VIMPROG=..\gvim || exit 1
cd ..
+   echo ::endgroup::
  
echo %COL_GREEN%Wait for vim tests to finish.%COL_RESET%
cd ..\src2\testdir
***
*** 552,561 
set timeout=1
:exitloop
  
!   echo %COL_GREEN%Test results of vim:%COL_RESET%
if exist messages type messages
nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1
if "%timeout%"=="1" (
  echo %COL_RED%Timed out.%COL_RESET%
  exit 1
)
--- 554,564 
set timeout=1
:exitloop
  
!   echo ::group::%COL_GREEN%Test results of vim:%COL_RESET%
if exist messages type messages
nmake -nologo -f Make_dos.mak report VIMPROG=..\..\src\vim || exit 1
if "%timeout%"=="1" (
  echo %COL_RED%Timed out.%COL_RESET%
  exit 1
)
+   echo ::endgroup::
*** ../vim-8.2.4267/src/version.c   2022-01-31 11:29:47.613464097 +
--- src/version.c   2022-01-31 11:38:35.714728812 +
***
*** 752,753 
--- 752,755 
  {   /* Add new patch number below this line */
+ /**/
+ 4268,
  /**/

-- 
"Beware of bugs in the above code; I have only proved
it correct, not tried it." -- Donald Knuth

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131114050.ABB5D1C1918%40moolenaar.net.


Patch 8.2.4267

2022-01-31 Fir de Conversatie Bram Moolenaar


Patch 8.2.4267
Problem:Unused entry in keymap enum.
Solution:   Remove the entry.
Files:  src/keymap.h


*** ../vim-8.2.4266/src/keymap.h2022-01-15 18:25:04.661419379 +
--- src/keymap.h2022-01-31 10:54:03.157526436 +
***
*** 150,158 
   */
  enum key_extra
  {
! KE_NAME = 3   // name of this terminal entry
! 
! , KE_S_UP = 4 // shift-up
  , KE_S_DOWN = 5   // shift-down
  
  , KE_S_F1 = 6 // shifted function keys
--- 150,156 
   */
  enum key_extra
  {
!   KE_S_UP = 4 // shift-up
  , KE_S_DOWN = 5   // shift-down
  
  , KE_S_F1 = 6 // shifted function keys
***
*** 253,259 
  , KE_CSI = 81 // CSI typed directly
  , KE_SNR = 82 // 
  , KE_PLUG = 83// 
! , KE_CMDWIN = 84  // open command-line window from Command-line 
Mode
  
  , KE_C_LEFT = 85  // control-left
  , KE_C_RIGHT = 86 // control-right
--- 251,258 
  , KE_CSI = 81 // CSI typed directly
  , KE_SNR = 82 // 
  , KE_PLUG = 83// 
! , KE_CMDWIN = 84  // open command-line window from Command-line
!   // Mode
  
  , KE_C_LEFT = 85  // control-left
  , KE_C_RIGHT = 86 // control-right
*** ../vim-8.2.4266/src/version.c   2022-01-30 19:37:46.738366658 +
--- src/version.c   2022-01-31 11:28:40.582210355 +
***
*** 752,753 
--- 752,755 
  {   /* Add new patch number below this line */
+ /**/
+ 4267,
  /**/

-- 
Any resemblance between the above views and those of my employer, my terminal,
or the view out my window are purely coincidental.  Any resemblance between
the above and my own views is non-deterministic.  The question of the
existence of views in the absence of anyone to hold them is left as an
exercise for the reader.  The question of the existence of the reader is left
as an exercise for the second god coefficient.  (A discussion of
non-orthogonal, non-integral polytheism is beyond the scope of this article.)
(Ralph Jennings)

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///  \\\
\\\sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\help me help AIDS victims -- http://ICCF-Holland.org///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20220131114039.80EC11C1933%40moolenaar.net.