From 17052946c744abd53d8f3349f453964ffa818bea Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Thu, 20 Apr 2017 12:32:14 +0200 Subject: [PATCH 1/2] 'scrollback': Allow :setlocal -1 on normal buffers Avoids a spurious :loadview error. --- src/nvim/option.c | 2 +- test/functional/terminal/scrollback_spec.lua | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/nvim/option.c b/src/nvim/option.c index 8748406ba4..ae038389b4 100644 --- a/src/nvim/option.c +++ b/src/nvim/option.c @@ -4223,7 +4223,7 @@ static char *set_num_option(int opt_idx, char_u *varp, long value, } else if (pp == &curbuf->b_p_scbk || pp == &p_scbk) { // 'scrollback' if (*pp < -1 || *pp > SB_MAX - || (opt_flags == OPT_LOCAL && !curbuf->terminal)) { + || (*pp != -1 && opt_flags == OPT_LOCAL && !curbuf->terminal)) { errmsg = e_invarg; *pp = old_value; } else if (curbuf->terminal) { diff --git a/test/functional/terminal/scrollback_spec.lua b/test/functional/terminal/scrollback_spec.lua index 32f25d4086..05f81295c2 100644 --- a/test/functional/terminal/scrollback_spec.lua +++ b/test/functional/terminal/scrollback_spec.lua @@ -451,6 +451,13 @@ describe("'scrollback' option", function() it(':setlocal in a normal buffer is an error', function() command('new') + + -- :setlocal to -1 is NOT an error. + feed_command('setlocal scrollback=-1') + eq(nil, string.match(eval("v:errmsg"), "E%d*:")) + feed('') + + -- :setlocal to anything except -1 is an error. feed_command('setlocal scrollback=42') feed('') eq('E474:', string.match(eval("v:errmsg"), "E%d*:")) From d55fd9588f621719e3e8c66f69290a00e1fadc1b Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Thu, 20 Apr 2017 13:01:11 +0200 Subject: [PATCH 2/2] doc: Recommend `:silent!` for :loadview. ex_loadview() was changed in 9b1c9393709a to check the file open result. If user doesn't care about failure to open, using :silent! instead of :silent is a reasonable, conventional approach. Closes #3196 --- runtime/doc/starting.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime/doc/starting.txt b/runtime/doc/starting.txt index 2d1dd22222..14e8c5d76f 100644 --- a/runtime/doc/starting.txt +++ b/runtime/doc/starting.txt @@ -922,7 +922,7 @@ You might want to clean up your 'viewdir' directory now and then. To automatically save and restore views for *.c files: > au BufWinLeave *.c mkview - au BufWinEnter *.c silent loadview + au BufWinEnter *.c silent! loadview ============================================================================== 8. The ShaDa file *shada* *shada-file*