summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.0333
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.0333')
-rw-r--r--data/vim/patches/8.1.0333348
1 files changed, 215 insertions, 133 deletions
diff --git a/data/vim/patches/8.1.0333 b/data/vim/patches/8.1.0333
index f4179ce59..e33c1d4d0 100644
--- a/data/vim/patches/8.1.0333
+++ b/data/vim/patches/8.1.0333
@@ -1,133 +1,215 @@
-diff --git src/ex_docmd.c src/ex_docmd.c
-index d4cf6a2c0..c8a1c3f23 100644
---- src/ex_docmd.c
-+++ src/ex_docmd.c
-@@ -11706,6 +11706,18 @@ ses_do_win(win_T *wp)
- return TRUE;
- }
-
-+ static int
-+put_view_curpos(FILE *fd, win_T *wp, char *spaces)
-+{
-+ int r;
-+
-+ if (wp->w_curswant == MAXCOL)
-+ r = fprintf(fd, "%snormal! $", spaces);
-+ else
-+ r = fprintf(fd, "%snormal! 0%d|", spaces, wp->w_virtcol + 1);
-+ return r < 0 || put_eol(fd) == FAIL ? FALSE : OK;
-+}
-+
- /*
- * Write commands to "fd" to restore the view of a window.
- * Caller must make sure 'scrolloff' is zero.
-@@ -11897,17 +11909,12 @@ put_view(
- (long)wp->w_virtcol + 1) < 0
- || put_eol(fd) == FAIL
- || put_line(fd, "else") == FAIL
-- || fprintf(fd, " normal! 0%d|", wp->w_virtcol + 1) < 0
-- || put_eol(fd) == FAIL
-+ || put_view_curpos(fd, wp, " ") == FAIL
- || put_line(fd, "endif") == FAIL)
- return FAIL;
- }
-- else
-- {
-- if (fprintf(fd, "normal! 0%d|", wp->w_virtcol + 1) < 0
-- || put_eol(fd) == FAIL)
-- return FAIL;
-- }
-+ else if (put_view_curpos(fd, wp, "") == FAIL)
-+ return FAIL;
- }
- }
-
-diff --git src/testdir/test_mksession.vim src/testdir/test_mksession.vim
-index c0b82ffa8..ed8b10fa0 100644
---- src/testdir/test_mksession.vim
-+++ src/testdir/test_mksession.vim
-@@ -22,7 +22,8 @@ func Test_mksession()
- \ 'two tabs in one line',
- \ 'one ä multibyteCharacter',
- \ 'aä Ä two multiByte characters',
-- \ 'Aäöü three mulTibyte characters'
-+ \ 'Aäöü three mulTibyte characters',
-+ \ 'short line',
- \ ])
- let tmpfile = 'Xtemp'
- exec 'w! ' . tmpfile
-@@ -44,6 +45,8 @@ func Test_mksession()
- norm! j16|
- split
- norm! j16|
-+ split
-+ norm! j$
- wincmd l
-
- set nowrap
-@@ -66,7 +69,7 @@ func Test_mksession()
- split
- call wincol()
- mksession! Xtest_mks.out
-- let li = filter(readfile('Xtest_mks.out'), 'v:val =~# "\\(^ *normal! 0\\|^ *exe ''normal!\\)"')
-+ let li = filter(readfile('Xtest_mks.out'), 'v:val =~# "\\(^ *normal! [0$]\\|^ *exe ''normal!\\)"')
- let expected = [
- \ 'normal! 016|',
- \ 'normal! 016|',
-@@ -76,6 +79,7 @@ func Test_mksession()
- \ 'normal! 016|',
- \ 'normal! 016|',
- \ 'normal! 016|',
-+ \ 'normal! $',
- \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'",
- \ " normal! 016|",
- \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'",
-@@ -317,7 +321,7 @@ func Test_mkview_file()
- help :mkview
- set number
- norm! V}zf
-- let pos = getpos('.')
-+ let pos = getcurpos()
- let linefoldclosed1 = foldclosed('.')
- mkview! Xview
- set nonumber
-@@ -329,7 +333,7 @@ func Test_mkview_file()
- source Xview
- call assert_equal(1, &number)
- call assert_match('\*:mkview\*$', getline('.'))
-- call assert_equal(pos, getpos('.'))
-+ call assert_equal(pos, getcurpos())
- call assert_equal(linefoldclosed1, foldclosed('.'))
-
- " Creating a view again with the same file name should fail (file
-@@ -352,7 +356,7 @@ func Test_mkview_loadview_with_viewdir()
- help :mkview
- set number
- norm! V}zf
-- let pos = getpos('.')
-+ let pos = getcurpos()
- let linefoldclosed1 = foldclosed('.')
- mkview 1
- set nonumber
-@@ -369,7 +373,7 @@ func Test_mkview_loadview_with_viewdir()
- \ glob('Xviewdir/*'))
- call assert_equal(1, &number)
- call assert_match('\*:mkview\*$', getline('.'))
-- call assert_equal(pos, getpos('.'))
-+ call assert_equal(pos, getcurpos())
- call assert_equal(linefoldclosed1, foldclosed('.'))
-
- call delete('Xviewdir', 'rf')
-diff --git src/version.c src/version.c
-index 243e213d2..c2f64d37a 100644
---- src/version.c
-+++ src/version.c
-@@ -795,6 +795,8 @@ static char *(features[]) =
- static int included_patches[] =
- { /* Add new patch number below this line */
- /**/
-+ 333,
-+/**/
- 332,
- /**/
- 331,
+To: vim_dev@googlegroups.com
+Subject: Patch 8.1.0333
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 8.1.0333
+Problem: :mkview does not restore cursor properly after "$". (Dominique
+ Pelle)
+Solution: Position the cursor with "normal! $".
+Files: src/ex_docmd.c, src/testdir/test_mksession.vim
+
+
+*** ../vim-8.1.0332/src/ex_docmd.c 2018-08-23 22:51:30.878144125 +0200
+--- src/ex_docmd.c 2018-08-29 20:55:57.947479752 +0200
+***************
+*** 11706,11711 ****
+--- 11706,11723 ----
+ return TRUE;
+ }
+
++ static int
++ put_view_curpos(FILE *fd, win_T *wp, char *spaces)
++ {
++ int r;
++
++ if (wp->w_curswant == MAXCOL)
++ r = fprintf(fd, "%snormal! $", spaces);
++ else
++ r = fprintf(fd, "%snormal! 0%d|", spaces, wp->w_virtcol + 1);
++ return r < 0 || put_eol(fd) == FAIL ? FALSE : OK;
++ }
++
+ /*
+ * Write commands to "fd" to restore the view of a window.
+ * Caller must make sure 'scrolloff' is zero.
+***************
+*** 11897,11913 ****
+ (long)wp->w_virtcol + 1) < 0
+ || put_eol(fd) == FAIL
+ || put_line(fd, "else") == FAIL
+! || fprintf(fd, " normal! 0%d|", wp->w_virtcol + 1) < 0
+! || put_eol(fd) == FAIL
+ || put_line(fd, "endif") == FAIL)
+ return FAIL;
+ }
+! else
+! {
+! if (fprintf(fd, "normal! 0%d|", wp->w_virtcol + 1) < 0
+! || put_eol(fd) == FAIL)
+! return FAIL;
+! }
+ }
+ }
+
+--- 11909,11920 ----
+ (long)wp->w_virtcol + 1) < 0
+ || put_eol(fd) == FAIL
+ || put_line(fd, "else") == FAIL
+! || put_view_curpos(fd, wp, " ") == FAIL
+ || put_line(fd, "endif") == FAIL)
+ return FAIL;
+ }
+! else if (put_view_curpos(fd, wp, "") == FAIL)
+! return FAIL;
+ }
+ }
+
+*** ../vim-8.1.0332/src/testdir/test_mksession.vim 2018-08-28 22:19:27.739993071 +0200
+--- src/testdir/test_mksession.vim 2018-08-29 20:54:27.800200938 +0200
+***************
+*** 22,28 ****
+ \ 'two tabs in one line',
+ \ 'one ä multibyteCharacter',
+ \ 'aä Ä two multiByte characters',
+! \ 'Aäöü three mulTibyte characters'
+ \ ])
+ let tmpfile = 'Xtemp'
+ exec 'w! ' . tmpfile
+--- 22,29 ----
+ \ 'two tabs in one line',
+ \ 'one ä multibyteCharacter',
+ \ 'aä Ä two multiByte characters',
+! \ 'Aäöü three mulTibyte characters',
+! \ 'short line',
+ \ ])
+ let tmpfile = 'Xtemp'
+ exec 'w! ' . tmpfile
+***************
+*** 44,49 ****
+--- 45,52 ----
+ norm! j16|
+ split
+ norm! j16|
++ split
++ norm! j$
+ wincmd l
+
+ set nowrap
+***************
+*** 66,72 ****
+ split
+ call wincol()
+ mksession! Xtest_mks.out
+! let li = filter(readfile('Xtest_mks.out'), 'v:val =~# "\\(^ *normal! 0\\|^ *exe ''normal!\\)"')
+ let expected = [
+ \ 'normal! 016|',
+ \ 'normal! 016|',
+--- 69,75 ----
+ split
+ call wincol()
+ mksession! Xtest_mks.out
+! let li = filter(readfile('Xtest_mks.out'), 'v:val =~# "\\(^ *normal! [0$]\\|^ *exe ''normal!\\)"')
+ let expected = [
+ \ 'normal! 016|',
+ \ 'normal! 016|',
+***************
+*** 76,81 ****
+--- 79,85 ----
+ \ 'normal! 016|',
+ \ 'normal! 016|',
+ \ 'normal! 016|',
++ \ 'normal! $',
+ \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'",
+ \ " normal! 016|",
+ \ " exe 'normal! ' . s:c . '|zs' . 16 . '|'",
+***************
+*** 317,323 ****
+ help :mkview
+ set number
+ norm! V}zf
+! let pos = getpos('.')
+ let linefoldclosed1 = foldclosed('.')
+ mkview! Xview
+ set nonumber
+--- 321,327 ----
+ help :mkview
+ set number
+ norm! V}zf
+! let pos = getcurpos()
+ let linefoldclosed1 = foldclosed('.')
+ mkview! Xview
+ set nonumber
+***************
+*** 329,335 ****
+ source Xview
+ call assert_equal(1, &number)
+ call assert_match('\*:mkview\*$', getline('.'))
+! call assert_equal(pos, getpos('.'))
+ call assert_equal(linefoldclosed1, foldclosed('.'))
+
+ " Creating a view again with the same file name should fail (file
+--- 333,339 ----
+ source Xview
+ call assert_equal(1, &number)
+ call assert_match('\*:mkview\*$', getline('.'))
+! call assert_equal(pos, getcurpos())
+ call assert_equal(linefoldclosed1, foldclosed('.'))
+
+ " Creating a view again with the same file name should fail (file
+***************
+*** 352,358 ****
+ help :mkview
+ set number
+ norm! V}zf
+! let pos = getpos('.')
+ let linefoldclosed1 = foldclosed('.')
+ mkview 1
+ set nonumber
+--- 356,362 ----
+ help :mkview
+ set number
+ norm! V}zf
+! let pos = getcurpos()
+ let linefoldclosed1 = foldclosed('.')
+ mkview 1
+ set nonumber
+***************
+*** 369,375 ****
+ \ glob('Xviewdir/*'))
+ call assert_equal(1, &number)
+ call assert_match('\*:mkview\*$', getline('.'))
+! call assert_equal(pos, getpos('.'))
+ call assert_equal(linefoldclosed1, foldclosed('.'))
+
+ call delete('Xviewdir', 'rf')
+--- 373,379 ----
+ \ glob('Xviewdir/*'))
+ call assert_equal(1, &number)
+ call assert_match('\*:mkview\*$', getline('.'))
+! call assert_equal(pos, getcurpos())
+ call assert_equal(linefoldclosed1, foldclosed('.'))
+
+ call delete('Xviewdir', 'rf')
+*** ../vim-8.1.0332/src/version.c 2018-08-28 23:09:03.893824422 +0200
+--- src/version.c 2018-08-29 20:57:17.814830811 +0200
+***************
+*** 796,797 ****
+--- 796,799 ----
+ { /* Add new patch number below this line */
++ /**/
++ 333,
+ /**/
+
+--
+Q: What's a light-year?
+A: One-third less calories than a regular year.
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ an exciting new programming language -- http://www.Zimbu.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///