From 84bf53b8034e398960c1356b4c8114bcc71cbff1 Mon Sep 17 00:00:00 2001 From: James McCoy Date: Mon, 8 Aug 2016 18:19:26 -0400 Subject: [PATCH] Set the default value for 'packpath' MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit As noted in “:help 'packpath'”, the default value is supposed to be the same as that for 'runtimepath'. This was missed in the original port of the packages functionality from Vim. Closes #5193 --- src/nvim/option.c | 2 ++ test/functional/options/defaults_spec.lua | 14 ++++++++++++++ 2 files changed, 16 insertions(+) diff --git a/src/nvim/option.c b/src/nvim/option.c index 6baf8c65ce..658e0d8a47 100644 --- a/src/nvim/option.c +++ b/src/nvim/option.c @@ -521,6 +521,8 @@ static void set_runtimepath_default(void) #undef SITE_SIZE #undef AFTER_SIZE set_string_default("runtimepath", rtp, true); + // Make a copy of 'rtp' for 'packpath' + set_string_default("packpath", rtp, false); xfree(data_dirs); xfree(config_dirs); xfree(data_home); diff --git a/test/functional/options/defaults_spec.lua b/test/functional/options/defaults_spec.lua index 8eec6ad8bf..a131f72cf6 100644 --- a/test/functional/options/defaults_spec.lua +++ b/test/functional/options/defaults_spec.lua @@ -7,6 +7,7 @@ local execute = helpers.execute local clear = helpers.clear local eval = helpers.eval local eq = helpers.eq +local neq = helpers.neq local function init_session(...) local args = { helpers.nvim_prog, '-i', 'NONE', '--embed', @@ -80,6 +81,19 @@ describe('startup defaults', function() eq(0, eval('exists("g:syntax_on")')) end) end) + + describe('packpath', function() + it('defaults to &runtimepath', function() + eq(meths.get_option('runtimepath'), meths.get_option('packpath')) + end) + + it('does not follow modifications to runtimepath', function() + meths.command('set runtimepath+=foo') + neq(meths.get_option('runtimepath'), meths.get_option('packpath')) + meths.command('set packpath+=foo') + eq(meths.get_option('runtimepath'), meths.get_option('packpath')) + end) + end) end) describe('XDG-based defaults', function()