clipboard: set v:register after startup (#5708)

Fixes #5697
This commit is contained in:
Björn Linse 2017-03-18 19:33:25 +01:00 committed by Justin M. Keyes
parent bdcb2a38b3
commit 6a68a922b8
2 changed files with 18 additions and 2 deletions

View File

@ -513,6 +513,12 @@ int main(int argc, char **argv)
apply_autocmds(EVENT_VIMENTER, NULL, NULL, false, curbuf);
TIME_MSG("VimEnter autocommands");
// Adjust default register name for "unnamed" in 'clipboard'. Can only be
// done after the clipboard is available and all initial commands that may
// modify the 'clipboard' setting have run; i.e. just before entering the
// main loop.
set_reg_var(get_default_register_name());
/* When a startup script or session file setup for diff'ing and
* scrollbind, sync the scrollbind now. */
if (curwin->w_p_diff && curwin->w_p_scb) {

View File

@ -89,9 +89,12 @@ describe('the unnamed register', function()
end)
describe('clipboard usage', function()
local function reset(...)
clear('--cmd', 'let &rtp = "test/functional/fixtures,".&rtp', ...)
end
before_each(function()
clear()
execute('let &rtp = "test/functional/fixtures,".&rtp')
reset()
execute('call getreg("*")') -- force load of provider
end)
@ -363,6 +366,13 @@ describe('clipboard usage', function()
end)
end)
it('sets v:register after startup', function()
reset()
eq('"', eval('v:register'))
reset('--cmd', 'set clipboard=unnamed')
eq('*', eval('v:register'))
end)
it('supports :put', function()
insert("a line")
execute("let g:test_clip['*'] = ['some text']")