Karsten Hopp 887d80
To: vim_dev@googlegroups.com
Karsten Hopp 887d80
Subject: Patch 7.4.765
Karsten Hopp 887d80
Fcc: outbox
Karsten Hopp 887d80
From: Bram Moolenaar <Bram@moolenaar.net>
Karsten Hopp 887d80
Mime-Version: 1.0
Karsten Hopp 887d80
Content-Type: text/plain; charset=UTF-8
Karsten Hopp 887d80
Content-Transfer-Encoding: 8bit
Karsten Hopp 887d80
------------
Karsten Hopp 887d80
Karsten Hopp 887d80
Patch 7.4.765 (after 7.4.754)
Karsten Hopp 887d80
Problem:    CTRL-A and CTRL-X in Visual mode do not always work well.
Karsten Hopp 887d80
Solution:   Improvements for increment and decrement. (Christian Brabandt)
Karsten Hopp 887d80
Files:      src/normal.c, src/ops.c, src/testdir/test_increment.in,
Karsten Hopp 887d80
            src/testdir/test_increment.ok
Karsten Hopp 887d80
Karsten Hopp 887d80
Karsten Hopp 887d80
*** ../vim-7.4.764/src/normal.c	2015-06-25 13:57:20.029431114 +0200
Karsten Hopp 887d80
--- src/normal.c	2015-07-03 11:43:43.250141166 +0200
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 4204,4210 ****
Karsten Hopp 887d80
      int visual = VIsual_active;
Karsten Hopp 887d80
      if (cap->oap->op_type == OP_NOP
Karsten Hopp 887d80
  	    && do_addsub((int)cap->cmdchar, cap->count1, cap->arg) == OK)
Karsten Hopp 887d80
! 	prep_redo_cmd(cap);
Karsten Hopp 887d80
      else
Karsten Hopp 887d80
  	clearopbeep(cap->oap);
Karsten Hopp 887d80
      if (visual)
Karsten Hopp 887d80
--- 4204,4227 ----
Karsten Hopp 887d80
      int visual = VIsual_active;
Karsten Hopp 887d80
      if (cap->oap->op_type == OP_NOP
Karsten Hopp 887d80
  	    && do_addsub((int)cap->cmdchar, cap->count1, cap->arg) == OK)
Karsten Hopp 887d80
!     {
Karsten Hopp 887d80
! 	if (visual)
Karsten Hopp 887d80
! 	{
Karsten Hopp 887d80
! 	    ResetRedobuff();
Karsten Hopp 887d80
! 	    AppendCharToRedobuff(VIsual_mode);
Karsten Hopp 887d80
! 	    if (VIsual_mode == 'V')
Karsten Hopp 887d80
! 	    {
Karsten Hopp 887d80
! 		AppendNumberToRedobuff(cap->oap->line_count);
Karsten Hopp 887d80
! 		AppendCharToRedobuff('j');
Karsten Hopp 887d80
! 	    }
Karsten Hopp 887d80
! 	    AppendNumberToRedobuff(cap->count1);
Karsten Hopp 887d80
! 	    if (cap->nchar != NUL)
Karsten Hopp 887d80
! 		AppendCharToRedobuff(cap->nchar);
Karsten Hopp 887d80
! 	    AppendCharToRedobuff(cap->cmdchar);
Karsten Hopp 887d80
! 	}
Karsten Hopp 887d80
! 	else
Karsten Hopp 887d80
! 	    prep_redo_cmd(cap);
Karsten Hopp 887d80
!     }
Karsten Hopp 887d80
      else
Karsten Hopp 887d80
  	clearopbeep(cap->oap);
Karsten Hopp 887d80
      if (visual)
Karsten Hopp 887d80
*** ../vim-7.4.764/src/ops.c	2015-06-25 13:57:20.033431073 +0200
Karsten Hopp 887d80
--- src/ops.c	2015-07-03 12:31:42.315559376 +0200
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5386,5392 ****
Karsten Hopp 887d80
      int		hex;		/* 'X' or 'x': hex; '0': octal */
Karsten Hopp 887d80
      static int	hexupper = FALSE;	/* 0xABC */
Karsten Hopp 887d80
      unsigned long n;
Karsten Hopp 887d80
!     long	offset = 0;		/* line offset for Ctrl_V mode */
Karsten Hopp 887d80
      long_u	oldn;
Karsten Hopp 887d80
      char_u	*ptr;
Karsten Hopp 887d80
      int		c;
Karsten Hopp 887d80
--- 5386,5392 ----
Karsten Hopp 887d80
      int		hex;		/* 'X' or 'x': hex; '0': octal */
Karsten Hopp 887d80
      static int	hexupper = FALSE;	/* 0xABC */
Karsten Hopp 887d80
      unsigned long n;
Karsten Hopp 887d80
!     unsigned long offset = 0;		/* line offset for Ctrl_V mode */
Karsten Hopp 887d80
      long_u	oldn;
Karsten Hopp 887d80
      char_u	*ptr;
Karsten Hopp 887d80
      int		c;
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5398,5407 ****
Karsten Hopp 887d80
--- 5398,5409 ----
Karsten Hopp 887d80
      int		firstdigit;
Karsten Hopp 887d80
      int		subtract;
Karsten Hopp 887d80
      int		negative = FALSE;
Karsten Hopp 887d80
+     int		was_positive = TRUE;
Karsten Hopp 887d80
      int		visual = VIsual_active;
Karsten Hopp 887d80
      int		i;
Karsten Hopp 887d80
      int		lnum = curwin->w_cursor.lnum;
Karsten Hopp 887d80
      int		lnume = curwin->w_cursor.lnum;
Karsten Hopp 887d80
+     int		startcol;
Karsten Hopp 887d80
  
Karsten Hopp 887d80
      dohex = (vim_strchr(curbuf->b_p_nf, 'x') != NULL);	/* "heX" */
Karsten Hopp 887d80
      dooct = (vim_strchr(curbuf->b_p_nf, 'o') != NULL);	/* "Octal" */
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5431,5444 ****
Karsten Hopp 887d80
  	curbuf->b_visual.vi_end = curwin->w_cursor;
Karsten Hopp 887d80
  	curbuf->b_visual.vi_mode = VIsual_mode;
Karsten Hopp 887d80
  
Karsten Hopp 887d80
! 	col = VIsual.col;
Karsten Hopp 887d80
  	lnum = VIsual.lnum;
Karsten Hopp 887d80
  	lnume = curwin->w_cursor.lnum;
Karsten Hopp 887d80
- 	if (ptr[col] == '-')
Karsten Hopp 887d80
- 	{
Karsten Hopp 887d80
- 	    negative = TRUE;
Karsten Hopp 887d80
- 	    col++;
Karsten Hopp 887d80
- 	}
Karsten Hopp 887d80
      }
Karsten Hopp 887d80
      else
Karsten Hopp 887d80
      {
Karsten Hopp 887d80
--- 5433,5446 ----
Karsten Hopp 887d80
  	curbuf->b_visual.vi_end = curwin->w_cursor;
Karsten Hopp 887d80
  	curbuf->b_visual.vi_mode = VIsual_mode;
Karsten Hopp 887d80
  
Karsten Hopp 887d80
! 	if (VIsual_mode != 'v')
Karsten Hopp 887d80
! 	    startcol = VIsual.col < curwin->w_cursor.col ? VIsual.col
Karsten Hopp 887d80
! 						       : curwin->w_cursor.col;
Karsten Hopp 887d80
! 	else
Karsten Hopp 887d80
! 	    startcol = VIsual.col;
Karsten Hopp 887d80
! 	col = startcol;
Karsten Hopp 887d80
  	lnum = VIsual.lnum;
Karsten Hopp 887d80
  	lnume = curwin->w_cursor.lnum;
Karsten Hopp 887d80
      }
Karsten Hopp 887d80
      else
Karsten Hopp 887d80
      {
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5481,5489 ****
Karsten Hopp 887d80
      {
Karsten Hopp 887d80
  	curwin->w_cursor.lnum = i;
Karsten Hopp 887d80
  	ptr = ml_get_curline();
Karsten Hopp 887d80
- 	RLADDSUBFIX(ptr);
Karsten Hopp 887d80
  	if ((int)STRLEN(ptr) <= col)
Karsten Hopp 887d80
! 	    col = 0;
Karsten Hopp 887d80
  	/*
Karsten Hopp 887d80
  	 * If a number was found, and saving for undo works, replace the number.
Karsten Hopp 887d80
  	 */
Karsten Hopp 887d80
--- 5483,5498 ----
Karsten Hopp 887d80
      {
Karsten Hopp 887d80
  	curwin->w_cursor.lnum = i;
Karsten Hopp 887d80
  	ptr = ml_get_curline();
Karsten Hopp 887d80
  	if ((int)STRLEN(ptr) <= col)
Karsten Hopp 887d80
! 	    /* try again on next line */
Karsten Hopp 887d80
! 	    continue;
Karsten Hopp 887d80
! 	if (visual && ptr[col] == '-')
Karsten Hopp 887d80
! 	{
Karsten Hopp 887d80
! 	    negative = TRUE;
Karsten Hopp 887d80
! 	    was_positive = FALSE;
Karsten Hopp 887d80
! 	    col++;
Karsten Hopp 887d80
! 	}
Karsten Hopp 887d80
! 	RLADDSUBFIX(ptr);
Karsten Hopp 887d80
  	/*
Karsten Hopp 887d80
  	 * If a number was found, and saving for undo works, replace the number.
Karsten Hopp 887d80
  	 */
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5598,5603 ****
Karsten Hopp 887d80
--- 5607,5620 ----
Karsten Hopp 887d80
  		    negative = FALSE;
Karsten Hopp 887d80
  	    }
Karsten Hopp 887d80
  
Karsten Hopp 887d80
+ 	    if (visual && !was_positive && !negative)
Karsten Hopp 887d80
+ 	    {
Karsten Hopp 887d80
+ 		/* need to remove the '-' */
Karsten Hopp 887d80
+ 		col--;
Karsten Hopp 887d80
+ 		length++;
Karsten Hopp 887d80
+ 	    }
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
  	    /*
Karsten Hopp 887d80
  	     * Delete the old number.
Karsten Hopp 887d80
  	     */
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5634,5641 ****
Karsten Hopp 887d80
  	    if (buf1 == NULL)
Karsten Hopp 887d80
  		return FAIL;
Karsten Hopp 887d80
  	    ptr = buf1;
Karsten Hopp 887d80
! 	    /* do not add leading '-' for visual mode */
Karsten Hopp 887d80
! 	    if (negative && !visual)
Karsten Hopp 887d80
  	    {
Karsten Hopp 887d80
  		*ptr++ = '-';
Karsten Hopp 887d80
  	    }
Karsten Hopp 887d80
--- 5651,5657 ----
Karsten Hopp 887d80
  	    if (buf1 == NULL)
Karsten Hopp 887d80
  		return FAIL;
Karsten Hopp 887d80
  	    ptr = buf1;
Karsten Hopp 887d80
! 	    if (negative && (!visual || (visual && was_positive)))
Karsten Hopp 887d80
  	    {
Karsten Hopp 887d80
  		*ptr++ = '-';
Karsten Hopp 887d80
  	    }
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5654,5676 ****
Karsten Hopp 887d80
  	     * Put the number characters in buf2[].
Karsten Hopp 887d80
  	     */
Karsten Hopp 887d80
  	    if (hex == 0)
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lu", n + offset);
Karsten Hopp 887d80
  	    else if (hex == '0')
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lo", n + offset);
Karsten Hopp 887d80
  	    else if (hex && hexupper)
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lX", n + offset);
Karsten Hopp 887d80
  	    else
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lx", n + offset);
Karsten Hopp 887d80
  	    length -= (int)STRLEN(buf2);
Karsten Hopp 887d80
  
Karsten Hopp 887d80
- 	    if (g_cmd)
Karsten Hopp 887d80
- 	    {
Karsten Hopp 887d80
- 		if (subtract)
Karsten Hopp 887d80
- 		    offset -= (unsigned long)Prenum1;
Karsten Hopp 887d80
- 		else
Karsten Hopp 887d80
- 		    offset += (unsigned long)Prenum1;
Karsten Hopp 887d80
- 	    }
Karsten Hopp 887d80
- 
Karsten Hopp 887d80
  	    /*
Karsten Hopp 887d80
  	     * Adjust number of zeros to the new number of digits, so the
Karsten Hopp 887d80
  	     * total length of the number remains the same.
Karsten Hopp 887d80
--- 5670,5684 ----
Karsten Hopp 887d80
  	     * Put the number characters in buf2[].
Karsten Hopp 887d80
  	     */
Karsten Hopp 887d80
  	    if (hex == 0)
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lu", n);
Karsten Hopp 887d80
  	    else if (hex == '0')
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lo", n);
Karsten Hopp 887d80
  	    else if (hex && hexupper)
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lX", n);
Karsten Hopp 887d80
  	    else
Karsten Hopp 887d80
! 		sprintf((char *)buf2, "%lx", n);
Karsten Hopp 887d80
  	    length -= (int)STRLEN(buf2);
Karsten Hopp 887d80
  
Karsten Hopp 887d80
  	    /*
Karsten Hopp 887d80
  	     * Adjust number of zeros to the new number of digits, so the
Karsten Hopp 887d80
  	     * total length of the number remains the same.
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 5685,5697 ****
Karsten Hopp 887d80
  	    ins_str(buf1);		/* insert the new number */
Karsten Hopp 887d80
  	    vim_free(buf1);
Karsten Hopp 887d80
  	}
Karsten Hopp 887d80
! 	--curwin->w_cursor.col;
Karsten Hopp 887d80
  	curwin->w_set_curswant = TRUE;
Karsten Hopp 887d80
  #ifdef FEAT_RIGHTLEFT
Karsten Hopp 887d80
  	ptr = ml_get_buf(curbuf, curwin->w_cursor.lnum, TRUE);
Karsten Hopp 887d80
  	RLADDSUBFIX(ptr);
Karsten Hopp 887d80
  #endif
Karsten Hopp 887d80
      }
Karsten Hopp 887d80
      return OK;
Karsten Hopp 887d80
  }
Karsten Hopp 887d80
  
Karsten Hopp 887d80
--- 5693,5719 ----
Karsten Hopp 887d80
  	    ins_str(buf1);		/* insert the new number */
Karsten Hopp 887d80
  	    vim_free(buf1);
Karsten Hopp 887d80
  	}
Karsten Hopp 887d80
! 
Karsten Hopp 887d80
! 	if (g_cmd)
Karsten Hopp 887d80
! 	{
Karsten Hopp 887d80
! 	    offset = (unsigned long)Prenum1;
Karsten Hopp 887d80
! 	    g_cmd = 0;
Karsten Hopp 887d80
! 	}
Karsten Hopp 887d80
! 	/* reset */
Karsten Hopp 887d80
! 	subtract = FALSE;
Karsten Hopp 887d80
! 	negative = FALSE;
Karsten Hopp 887d80
! 	if (visual && VIsual_mode != Ctrl_V)
Karsten Hopp 887d80
! 	    col = 0;
Karsten Hopp 887d80
! 	else
Karsten Hopp 887d80
! 	    col = startcol;
Karsten Hopp 887d80
! 	Prenum1 += offset;
Karsten Hopp 887d80
  	curwin->w_set_curswant = TRUE;
Karsten Hopp 887d80
  #ifdef FEAT_RIGHTLEFT
Karsten Hopp 887d80
  	ptr = ml_get_buf(curbuf, curwin->w_cursor.lnum, TRUE);
Karsten Hopp 887d80
  	RLADDSUBFIX(ptr);
Karsten Hopp 887d80
  #endif
Karsten Hopp 887d80
      }
Karsten Hopp 887d80
+     --curwin->w_cursor.col;
Karsten Hopp 887d80
      return OK;
Karsten Hopp 887d80
  }
Karsten Hopp 887d80
  
Karsten Hopp 887d80
*** ../vim-7.4.764/src/testdir/test_increment.in	2015-06-28 19:24:32.198911433 +0200
Karsten Hopp 887d80
--- src/testdir/test_increment.in	2015-07-03 11:47:53.111483406 +0200
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 6,11 ****
Karsten Hopp 887d80
--- 6,12 ----
Karsten Hopp 887d80
  1) Ctrl-A on visually selected number
Karsten Hopp 887d80
  Text:
Karsten Hopp 887d80
  foobar-10
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
      1)    Ctrl-A on start of line:
Karsten Hopp 887d80
  	foobar-9
Karsten Hopp 887d80
      2)    Ctrl-A on visually selected "-10":
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 24,29 ****
Karsten Hopp 887d80
--- 25,31 ----
Karsten Hopp 887d80
  30
Karsten Hopp 887d80
  40
Karsten Hopp 887d80
  
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
      1) Ctrl-A on visually selected lines:
Karsten Hopp 887d80
  11
Karsten Hopp 887d80
  21
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 46,51 ****
Karsten Hopp 887d80
--- 48,54 ----
Karsten Hopp 887d80
  
Karsten Hopp 887d80
  40
Karsten Hopp 887d80
  
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
      1) 2 g Ctrl-A on visually selected lines:
Karsten Hopp 887d80
  12
Karsten Hopp 887d80
  
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 66,74 ****
Karsten Hopp 887d80
--- 69,190 ----
Karsten Hopp 887d80
  4) Ctrl-A on non-number
Karsten Hopp 887d80
  Text:
Karsten Hopp 887d80
  foobar-10
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
      1) visually select foobar:
Karsten Hopp 887d80
      foobar-10
Karsten Hopp 887d80
  
Karsten Hopp 887d80
+ 5) g<Ctrl-A> on letter
Karsten Hopp 887d80
+ Test:
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
+     1) g Ctrl-A on visually selected lines
Karsten Hopp 887d80
+     b
Karsten Hopp 887d80
+     c
Karsten Hopp 887d80
+     d
Karsten Hopp 887d80
+     e
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 6) g<Ctrl-A> on letter
Karsten Hopp 887d80
+ Test:
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
+     1) g Ctrl-X on visually selected lines
Karsten Hopp 887d80
+     y
Karsten Hopp 887d80
+     x
Karsten Hopp 887d80
+     w
Karsten Hopp 887d80
+     v
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 7) <Ctrl-A> on letter
Karsten Hopp 887d80
+ Test:
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 0
Karsten Hopp 887d80
+ -1
Karsten Hopp 887d80
+ -2
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
+     1) Ctrl-A on visually selected lines
Karsten Hopp 887d80
+     3
Karsten Hopp 887d80
+     2
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+     0
Karsten Hopp 887d80
+     -1
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+     2) Ctrl-X on visually selected lines
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+     0
Karsten Hopp 887d80
+     -1
Karsten Hopp 887d80
+     -2
Karsten Hopp 887d80
+     -3
Karsten Hopp 887d80
+ 8) Block increment on 0x9
Karsten Hopp 887d80
+ Text:
Karsten Hopp 887d80
+ 0x9
Karsten Hopp 887d80
+ 0x9
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
+     1) Ctrl-A on visually block selected region (cursor at beginning):
Karsten Hopp 887d80
+     0xa
Karsten Hopp 887d80
+     0xa
Karsten Hopp 887d80
+     2) Ctrl-A on visually block selected region (cursor at end)
Karsten Hopp 887d80
+     0xa
Karsten Hopp 887d80
+     0xa
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 9) Increment and redo
Karsten Hopp 887d80
+ Text:
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 3
Karsten Hopp 887d80
+ 3
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
+     1) 2 Ctrl-A on first 2 visually selected lines
Karsten Hopp 887d80
+     4
Karsten Hopp 887d80
+     4
Karsten Hopp 887d80
+     2) redo (.) on 3
Karsten Hopp 887d80
+     5
Karsten Hopp 887d80
+     5
Karsten Hopp 887d80
+ 10) sequentially decrement 1
Karsten Hopp 887d80
+ Text:
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
+     1) g Ctrl-X on visually selected lines
Karsten Hopp 887d80
+     0
Karsten Hopp 887d80
+     -1
Karsten Hopp 887d80
+     -2
Karsten Hopp 887d80
+     -3
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 11) visually block selected indented lines
Karsten Hopp 887d80
+ Text:
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+     Expexted:
Karsten Hopp 887d80
+     1) g Ctrl-A on block selected indented lines
Karsten Hopp 887d80
+     2
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+     3
Karsten Hopp 887d80
+     4
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 12) visually selected several columns
Karsten Hopp 887d80
+ Text:
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+     Expected:
Karsten Hopp 887d80
+     1) 'v' select last zero and first zeroes
Karsten Hopp 887d80
+     0 1
Karsten Hopp 887d80
+     1 0
Karsten Hopp 887d80
+     1 0
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
  STARTTEST
Karsten Hopp 887d80
  :so small.vim
Karsten Hopp 887d80
  :"
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 77,92 ****
Karsten Hopp 887d80
  :"
Karsten Hopp 887d80
  :" Test 1
Karsten Hopp 887d80
  :/^S1=/+,/^E1=/-y a
Karsten Hopp 887d80
! :/^E1/+put a
Karsten Hopp 887d80
! ?:/^E1/+2put a
Karsten Hopp 887d80
! f-v$?:/^E1/+3put a
Karsten Hopp 887d80
! f1v$?:/^E1/+4put a
Karsten Hopp 887d80
! f-v$?:/^E1/+5put a
Karsten Hopp 887d80
  f1v$?
Karsten Hopp 887d80
  
Karsten Hopp 887d80
  :" Test 22
Karsten Hopp 887d80
  :/^S2=/+,/^E2=/-y a
Karsten Hopp 887d80
! :/^E2/+put a
Karsten Hopp 887d80
  V3k$?:.+put a
Karsten Hopp 887d80
  V3k$?
Karsten Hopp 887d80
  
Karsten Hopp 887d80
--- 193,208 ----
Karsten Hopp 887d80
  :"
Karsten Hopp 887d80
  :" Test 1
Karsten Hopp 887d80
  :/^S1=/+,/^E1=/-y a
Karsten Hopp 887d80
! :/^E1=/+put a
Karsten Hopp 887d80
! ?:/^E1=/+2put a
Karsten Hopp 887d80
! f-v$?:/^E1=/+3put a
Karsten Hopp 887d80
! f1v$?:/^E1=/+4put a
Karsten Hopp 887d80
! f-v$?:/^E1=/+5put a
Karsten Hopp 887d80
  f1v$?
Karsten Hopp 887d80
  
Karsten Hopp 887d80
  :" Test 22
Karsten Hopp 887d80
  :/^S2=/+,/^E2=/-y a
Karsten Hopp 887d80
! :/^E2=/+put a
Karsten Hopp 887d80
  V3k$?:.+put a
Karsten Hopp 887d80
  V3k$?
Karsten Hopp 887d80
  
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 101,106 ****
Karsten Hopp 887d80
--- 217,265 ----
Karsten Hopp 887d80
  :/^E4=/+put a
Karsten Hopp 887d80
  vf-?
Karsten Hopp 887d80
  
Karsten Hopp 887d80
+ :" Test 5
Karsten Hopp 887d80
+ :set nrformats+=alpha
Karsten Hopp 887d80
+ :/^S5=/+,/^E5=/-y a
Karsten Hopp 887d80
+ :/^E5=/+put a
Karsten Hopp 887d80
+ v3kg?
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ :" Test 6
Karsten Hopp 887d80
+ :/^S6=/+,/^E6=/-y a
Karsten Hopp 887d80
+ :/^E6=/+put a
Karsten Hopp 887d80
+ v3kg?
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ :" Test 7
Karsten Hopp 887d80
+ :/^S7=/+,/^E7=/-y a
Karsten Hopp 887d80
+ :/^E7=/+put a
Karsten Hopp 887d80
+ V4k?:.+put a
Karsten Hopp 887d80
+ V4k?
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ :" Test 8
Karsten Hopp 887d80
+ :/^S8=/+,/^E8=/-y a
Karsten Hopp 887d80
+ :/^E8=/+put a
Karsten Hopp 887d80
+ k?j$?:.+put a
Karsten Hopp 887d80
+ k$?+?
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ :" Test 9
Karsten Hopp 887d80
+ :/^S9=/+,/^E9=/-y a
Karsten Hopp 887d80
+ :/^E9=/+put a
Karsten Hopp 887d80
+ 5kVj2?2j.
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ :" Test 10
Karsten Hopp 887d80
+ :/^S10=/+,/^E10=/-y a
Karsten Hopp 887d80
+ :/^E10=/+put a
Karsten Hopp 887d80
+ V3kg?
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ : Test 11
Karsten Hopp 887d80
+ :/^S11=/+,/^E11=/-y a
Karsten Hopp 887d80
+ :/^E11=/+put a
Karsten Hopp 887d80
+ 3kf1?3jg?
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ :" Test 12
Karsten Hopp 887d80
+ :/^S12=/+,/^E12=/-y a
Karsten Hopp 887d80
+ :/^E12=/+put a
Karsten Hopp 887d80
+ 2k$v++?
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
  :" Save the report
Karsten Hopp 887d80
  :/^# Test 1/,$w! test.out
Karsten Hopp 887d80
  :qa!
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 142,146 ****
Karsten Hopp 887d80
--- 301,393 ----
Karsten Hopp 887d80
  E4=====
Karsten Hopp 887d80
  
Karsten Hopp 887d80
  
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 5
Karsten Hopp 887d80
+ S5====
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ E5====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 6
Karsten Hopp 887d80
+ S6====
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ E6====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 7
Karsten Hopp 887d80
+ S7====
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 0
Karsten Hopp 887d80
+ -1
Karsten Hopp 887d80
+ -2
Karsten Hopp 887d80
+ E7====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 8
Karsten Hopp 887d80
+ S8====
Karsten Hopp 887d80
+ 0x9
Karsten Hopp 887d80
+ 0x9
Karsten Hopp 887d80
+ E8====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 9
Karsten Hopp 887d80
+ S9====
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 3
Karsten Hopp 887d80
+ 3
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ E9====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 10
Karsten Hopp 887d80
+ S10====
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ E10====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 11
Karsten Hopp 887d80
+ S11====
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+ E11====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 12
Karsten Hopp 887d80
+ S12====
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ E12====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
  ENDTEST
Karsten Hopp 887d80
  
Karsten Hopp 887d80
*** ../vim-7.4.764/src/testdir/test_increment.ok	2015-06-25 13:57:20.033431073 +0200
Karsten Hopp 887d80
--- src/testdir/test_increment.ok	2015-07-03 11:43:43.254141124 +0200
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 62,66 ****
Karsten Hopp 887d80
--- 62,193 ----
Karsten Hopp 887d80
  
Karsten Hopp 887d80
  foobar-10
Karsten Hopp 887d80
  
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 5
Karsten Hopp 887d80
+ S5====
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ a
Karsten Hopp 887d80
+ E5====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ b
Karsten Hopp 887d80
+ c
Karsten Hopp 887d80
+ d
Karsten Hopp 887d80
+ e
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 6
Karsten Hopp 887d80
+ S6====
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ z
Karsten Hopp 887d80
+ E6====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ y
Karsten Hopp 887d80
+ x
Karsten Hopp 887d80
+ w
Karsten Hopp 887d80
+ v
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 7
Karsten Hopp 887d80
+ S7====
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 0
Karsten Hopp 887d80
+ -1
Karsten Hopp 887d80
+ -2
Karsten Hopp 887d80
+ E7====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 3
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 0
Karsten Hopp 887d80
+ -1
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 0
Karsten Hopp 887d80
+ -1
Karsten Hopp 887d80
+ -2
Karsten Hopp 887d80
+ -3
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 8
Karsten Hopp 887d80
+ S8====
Karsten Hopp 887d80
+ 0x9
Karsten Hopp 887d80
+ 0x9
Karsten Hopp 887d80
+ E8====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 0xa
Karsten Hopp 887d80
+ 0xa
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 0xa
Karsten Hopp 887d80
+ 0xa
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 9
Karsten Hopp 887d80
+ S9====
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 2
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 3
Karsten Hopp 887d80
+ 3
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ E9====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 4
Karsten Hopp 887d80
+ 4
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 5
Karsten Hopp 887d80
+ 5
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 10
Karsten Hopp 887d80
+ S10====
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+ E10====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 0
Karsten Hopp 887d80
+ -1
Karsten Hopp 887d80
+ -2
Karsten Hopp 887d80
+ -3
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 11
Karsten Hopp 887d80
+ S11====
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+     1
Karsten Hopp 887d80
+ E11====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+     2
Karsten Hopp 887d80
+ 1
Karsten Hopp 887d80
+     3
Karsten Hopp 887d80
+     4
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ # Test 12
Karsten Hopp 887d80
+ S12====
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ 0 0
Karsten Hopp 887d80
+ E12====
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 0 1
Karsten Hopp 887d80
+ 1 0
Karsten Hopp 887d80
+ 1 0
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
+ 
Karsten Hopp 887d80
  ENDTEST
Karsten Hopp 887d80
  
Karsten Hopp 887d80
*** ../vim-7.4.764/src/version.c	2015-06-28 19:24:32.198911433 +0200
Karsten Hopp 887d80
--- src/version.c	2015-07-03 11:45:07.697242802 +0200
Karsten Hopp 887d80
***************
Karsten Hopp 887d80
*** 743,744 ****
Karsten Hopp 887d80
--- 743,746 ----
Karsten Hopp 887d80
  {   /* Add new patch number below this line */
Karsten Hopp 887d80
+ /**/
Karsten Hopp 887d80
+     765,
Karsten Hopp 887d80
  /**/
Karsten Hopp 887d80
Karsten Hopp 887d80
-- 
Karsten Hopp 887d80
hundred-and-one symptoms of being an internet addict:
Karsten Hopp 887d80
171. You invent another person and chat with yourself in empty chat rooms.
Karsten Hopp 887d80
Karsten Hopp 887d80
 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
Karsten Hopp 887d80
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
Karsten Hopp 887d80
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
Karsten Hopp 887d80
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///