mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:8.2.2778: problem restoring 'packpath' in session
Problem: Problem restoring 'packpath' in session.
Solution: Let "skiprtp" also apply to 'packpath'.
d23b714d8b
Port Test_mksession_skiprtp() to lua functional test.
This commit is contained in:
parent
8415615b59
commit
59d550345d
@ -5052,7 +5052,7 @@ A jump table for the options with a short description can be found at |Q_op|.
|
||||
global values for local options)
|
||||
options all options and mappings (also global values for local
|
||||
options)
|
||||
skiprtp exclude 'runtimepath' from the options
|
||||
skiprtp exclude 'runtimepath' and 'packpath' from the options
|
||||
resize size of the Vim window: 'lines' and 'columns'
|
||||
sesdir the directory in which the session file is located
|
||||
will become the current directory (useful with
|
||||
|
@ -5232,7 +5232,8 @@ int makeset(FILE *fd, int opt_flags, int local_only)
|
||||
continue;
|
||||
}
|
||||
|
||||
if ((opt_flags & OPT_SKIPRTP) && p->var == (char_u *)&p_rtp) {
|
||||
if ((opt_flags & OPT_SKIPRTP)
|
||||
&& (p->var == (char_u *)&p_rtp || p->var == (char_u *)&p_pp)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
42
test/functional/legacy/mksession_spec.lua
Normal file
42
test/functional/legacy/mksession_spec.lua
Normal file
@ -0,0 +1,42 @@
|
||||
local helpers = require('test.functional.helpers')(after_each)
|
||||
local clear = helpers.clear
|
||||
local command = helpers.command
|
||||
local funcs = helpers.funcs
|
||||
local eq = helpers.eq
|
||||
|
||||
describe('mksession', function()
|
||||
before_each(clear)
|
||||
|
||||
after_each(function()
|
||||
os.remove('Xtest_mks.out')
|
||||
end)
|
||||
|
||||
it('supports "skiprtp" value', function()
|
||||
command('set sessionoptions&vi')
|
||||
command('set rtp+=$HOME')
|
||||
command('set pp+=$HOME')
|
||||
command('mksession! Xtest_mks.out')
|
||||
local found_rtp = 0
|
||||
local found_pp = 0
|
||||
for _, line in pairs(funcs.readfile('Xtest_mks.out', 'b')) do
|
||||
if line:find('set runtimepath') then
|
||||
found_rtp = found_rtp + 1
|
||||
end
|
||||
if line:find('set packpath') then
|
||||
found_pp = found_pp + 1
|
||||
end
|
||||
end
|
||||
eq(1, found_rtp)
|
||||
eq(1, found_pp)
|
||||
|
||||
command('set sessionoptions+=skiprtp')
|
||||
command('mksession! Xtest_mks.out')
|
||||
local found_rtp_or_pp = 0
|
||||
for _, line in pairs(funcs.readfile('Xtest_mks.out', 'b')) do
|
||||
if line:find('set runtimepath') or line:find('set packpath') then
|
||||
found_rtp_or_pp = found_rtp_or_pp + 1
|
||||
end
|
||||
end
|
||||
eq(0, found_rtp_or_pp)
|
||||
end)
|
||||
end)
|
Loading…
Reference in New Issue
Block a user