mirror of
https://github.com/zyedidia/micro.git
synced 2026-03-25 18:07:07 +09:00
save+util: Provide a meaningful error message for safe (over-)write fails
This commit is contained in:
@@ -658,7 +658,16 @@ func SetGlobalOptionNative(option string, nativeValue interface{}) error {
|
||||
delete(b.LocalSettings, option)
|
||||
}
|
||||
|
||||
return config.WriteSettings(filepath.Join(config.ConfigDir, "settings.json"))
|
||||
err := config.WriteSettings(filepath.Join(config.ConfigDir, "settings.json"))
|
||||
if err != nil {
|
||||
if errors.Is(err, util.ErrOverwrite) {
|
||||
screen.TermMessage(err)
|
||||
err = errors.Unwrap(err)
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func SetGlobalOption(option, value string) error {
|
||||
@@ -783,7 +792,11 @@ func (h *BufPane) BindCmd(args []string) {
|
||||
|
||||
_, err := TryBindKey(parseKeyArg(args[0]), args[1], true)
|
||||
if err != nil {
|
||||
InfoBar.Error(err)
|
||||
if errors.Is(err, util.ErrOverwrite) {
|
||||
screen.TermMessage(err)
|
||||
} else {
|
||||
InfoBar.Error(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -796,7 +809,11 @@ func (h *BufPane) UnbindCmd(args []string) {
|
||||
|
||||
err := UnbindKey(parseKeyArg(args[0]))
|
||||
if err != nil {
|
||||
InfoBar.Error(err)
|
||||
if errors.Is(err, util.ErrOverwrite) {
|
||||
screen.TermMessage(err)
|
||||
} else {
|
||||
InfoBar.Error(err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user