diff --git a/cmd/micro/micro.go b/cmd/micro/micro.go index 225dfc85..f45b7c12 100644 --- a/cmd/micro/micro.go +++ b/cmd/micro/micro.go @@ -254,7 +254,7 @@ func main() { screen.TermMessage(err) } - config.InitRuntimeFiles() + config.InitRuntimeFiles(true) config.InitPlugins() err = config.ReadSettings() diff --git a/cmd/micro/micro_test.go b/cmd/micro/micro_test.go index 7ee521cb..4c5ca684 100644 --- a/cmd/micro/micro_test.go +++ b/cmd/micro/micro_test.go @@ -35,7 +35,7 @@ func startup(args []string) (tcell.SimulationScreen, error) { return nil, err } - config.InitRuntimeFiles() + config.InitRuntimeFiles(true) config.InitPlugins() err = config.ReadSettings() diff --git a/internal/action/command.go b/internal/action/command.go index e30a4841..cd0afece 100644 --- a/internal/action/command.go +++ b/internal/action/command.go @@ -348,7 +348,7 @@ func reloadRuntime(reloadPlugins bool) { } } - config.InitRuntimeFiles() + config.InitRuntimeFiles(true) if reloadPlugins { config.InitPlugins() diff --git a/internal/buffer/buffer_test.go b/internal/buffer/buffer_test.go index 8bb7da40..ce164729 100644 --- a/internal/buffer/buffer_test.go +++ b/internal/buffer/buffer_test.go @@ -20,7 +20,7 @@ type operation struct { func init() { ulua.L = lua.NewState() - config.InitRuntimeFiles() + config.InitRuntimeFiles(true) config.InitGlobalSettings() config.GlobalSettings["backup"] = false config.GlobalSettings["fastdirty"] = true diff --git a/internal/buffer/settings.go b/internal/buffer/settings.go index 52cbafdb..aa011240 100644 --- a/internal/buffer/settings.go +++ b/internal/buffer/settings.go @@ -20,7 +20,7 @@ func (b *Buffer) SetOptionNative(option string, nativeValue interface{}) error { } else if option == "statusline" { screen.Redraw() } else if option == "filetype" { - config.InitRuntimeFiles() + config.InitRuntimeFiles(true) err := config.ReadSettings() if err != nil { screen.TermMessage(err) diff --git a/internal/config/rtfiles.go b/internal/config/rtfiles.go index 53820c5f..015a09b8 100644 --- a/internal/config/rtfiles.go +++ b/internal/config/rtfiles.go @@ -166,10 +166,14 @@ func ListRealRuntimeFiles(fileType RTFiletype) []RuntimeFile { return realFiles[fileType] } -// InitRuntimeFiles initializes all assets file and the config directory -func InitRuntimeFiles() { +// InitRuntimeFiles initializes all assets files and the config directory. +// If `user` is false, InitRuntimeFiles ignores the config directory and +// initializes asset files only. +func InitRuntimeFiles(user bool) { add := func(fileType RTFiletype, dir, pattern string) { - AddRuntimeFilesFromDirectory(fileType, filepath.Join(ConfigDir, dir), pattern) + if user { + AddRuntimeFilesFromDirectory(fileType, filepath.Join(ConfigDir, dir), pattern) + } AddRuntimeFilesFromAssets(fileType, path.Join("runtime", dir), pattern) } diff --git a/internal/config/rtfiles_test.go b/internal/config/rtfiles_test.go index de6525ef..8b3f23d2 100644 --- a/internal/config/rtfiles_test.go +++ b/internal/config/rtfiles_test.go @@ -7,7 +7,7 @@ import ( ) func init() { - InitRuntimeFiles() + InitRuntimeFiles(true) } func TestAddFile(t *testing.T) {