diff --git a/pkg/config/app_config.go b/pkg/config/app_config.go index 86801781b..b6d668439 100644 --- a/pkg/config/app_config.go +++ b/pkg/config/app_config.go @@ -41,6 +41,7 @@ type AppConfigurer interface { SaveAppState() error SetIsNewRepo(bool) GetIsNewRepo() bool + ReloadUserConfig() error } // NewAppConfig makes a new app config @@ -203,6 +204,16 @@ func (c *AppConfig) GetUserConfigDir() string { return c.UserConfigDir } +func (c *AppConfig) ReloadUserConfig() error { + userConfig, err := loadUserConfigWithDefaults(c.UserConfigDir) + if err != nil { + return err + } + + c.UserConfig = userConfig + return nil +} + func configFilePath(filename string) (string, error) { folder, err := findOrCreateConfigDir() if err != nil { diff --git a/pkg/gui/gui.go b/pkg/gui/gui.go index b0d430fc6..f266c2464 100644 --- a/pkg/gui/gui.go +++ b/pkg/gui/gui.go @@ -464,6 +464,9 @@ func (gui *Gui) Run() error { } g.OnSearchEscape = gui.onSearchEscape + if err := gui.Config.ReloadUserConfig(); err != nil { + return nil + } userConfig := gui.Config.GetUserConfig() g.SearchEscapeKey = gui.getKey(userConfig.Keybinding.Universal.Return) g.NextSearchMatchKey = gui.getKey(userConfig.Keybinding.Universal.NextMatch)