diff --git a/go.sum b/go.sum index 8e6ea9b0..a7a2e1b6 100644 --- a/go.sum +++ b/go.sum @@ -1,6 +1,7 @@ github.com/blang/semver v3.5.1+incompatible h1:cQNTCjp13qL8KC3Nbxr/y2Bqb63oX6wdnnjpJbkM4JQ= github.com/blang/semver v3.5.1+incompatible/go.mod h1:kRBLl5iJ+tD4TcOOxsy/0fnwebNt5EWlYSAyrTnjyyk= github.com/chzyer/readline v0.0.0-20180603132655-2972be24d48e/go.mod h1:nSuG5e5PlCu98SY8svDHJxuZscDgtXS6KTTbou5AhLI= +github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/dustin/go-humanize v1.0.0 h1:VSnTsYCnlFHaM2/igO1h6X3HA71jcobQuxemgkq4zYo= github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= @@ -19,10 +20,12 @@ github.com/mattn/go-runewidth v0.0.4/go.mod h1:LwmH8dsx7+W8Uxz3IHJYH5QSwggIsqBzp github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y= github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0= github.com/npat-efault/poller v2.0.0+incompatible/go.mod h1:lni01B89P8PtVpwlAhdhK1niN5rPkDGGpGGgBJzpSgo= +github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/sergi/go-diff v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ= github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= +github.com/stretchr/testify v1.3.0 h1:TivCn/peBQ7UY8ooIcPgZFpTNSz0Q2U6UrFlUfqbe0Q= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/yuin/gopher-lua v0.0.0-20190125051437-7b9317363aa9 h1:Wy3fAQLBPP0JSWdq3kBnmbFgXDHcyhtPpd+8kENV7mU= github.com/yuin/gopher-lua v0.0.0-20190125051437-7b9317363aa9/go.mod h1:fFiAh+CowNFr0NK5VASokuwKwkbacRmHsVA7Yb1Tqac= diff --git a/internal/action/actions.go b/internal/action/actions.go index 48a2cd27..17975a5b 100644 --- a/internal/action/actions.go +++ b/internal/action/actions.go @@ -1230,20 +1230,20 @@ func (h *BufPane) Quit() bool { } } if h.Buf.Modified() { - if config.GlobalSettings["autosave"].(float64) > 0 { - // autosave on means we automatically save when quitting - h.Save() - quit() - } else { - InfoBar.YNPrompt("Save changes to "+h.Buf.GetName()+" before closing? (y,n,esc)", func(yes, canceled bool) { - if !canceled && !yes { - quit() - } else if !canceled && yes { - h.Save() - quit() - } - }) - } + // if config.GlobalSettings["autosave"].(float64) > 0 { + // autosave on means we automatically save when quitting + // h.Save() + // quit() + // } else { + InfoBar.YNPrompt("Save changes to "+h.Buf.GetName()+" before closing? (y,n,esc)", func(yes, canceled bool) { + if !canceled && !yes { + quit() + } else if !canceled && yes { + h.Save() + quit() + } + }) + // } } else { quit() } diff --git a/internal/action/command.go b/internal/action/command.go index aaafb570..9614df51 100644 --- a/internal/action/command.go +++ b/internal/action/command.go @@ -539,13 +539,13 @@ func SetGlobalOptionNative(option string, nativeValue interface{}) error { } else { screen.Screen.EnableMouse() } - } else if option == "autosave" { - if nativeValue.(float64) > 0 { - config.SetAutoTime(int(nativeValue.(float64))) - config.StartAutoSave() - } else { - config.SetAutoTime(0) - } + // } else if option == "autosave" { + // if nativeValue.(float64) > 0 { + // config.SetAutoTime(int(nativeValue.(float64))) + // config.StartAutoSave() + // } else { + // config.SetAutoTime(0) + // } } else { for _, pl := range config.Plugins { if option == pl.Name { diff --git a/internal/buffer/backup.go b/internal/buffer/backup.go index 49d9f1e7..4d39b9f8 100644 --- a/internal/buffer/backup.go +++ b/internal/buffer/backup.go @@ -17,7 +17,9 @@ const backupMsg = `A backup was detected for this file. This likely means that m crashed while editing this file, or another instance of micro is currently editing this file. -The backup was created on %s. +The backup was created on %s, and the file is + +%s * 'recover' will apply the backup as unsaved changes to the current buffer. When the buffer is closed, the backup will be removed. @@ -98,7 +100,7 @@ func (b *Buffer) ApplyBackup(fsize int64) bool { if err == nil { defer backup.Close() t := info.ModTime() - msg := fmt.Sprintf(backupMsg, t.Format("Mon Jan _2 at 15:04, 2006")) + msg := fmt.Sprintf(backupMsg, t.Format("Mon Jan _2 at 15:04, 2006"), util.EscapePath(b.AbsPath)) choice := screen.TermPrompt(msg, []string{"r", "i", "recover", "ignore"}, true) if choice%2 == 0 { diff --git a/internal/config/settings.go b/internal/config/settings.go index 448c63ed..9aee609d 100644 --- a/internal/config/settings.go +++ b/internal/config/settings.go @@ -34,7 +34,7 @@ func init() { // Options with validators var optionValidators = map[string]optionValidator{ - "autosave": validateNonNegativeValue, + // "autosave": validateNonNegativeValue, "tabsize": validatePositiveValue, "scrollmargin": validateNonNegativeValue, "scrollspeed": validateNonNegativeValue, @@ -213,7 +213,7 @@ func DefaultCommonSettings() map[string]interface{} { } var defaultGlobalSettings = map[string]interface{}{ - "autosave": float64(0), + // "autosave": float64(0), "colorscheme": "default", "infobar": true, "keymenu": false, diff --git a/runtime/help/options.md b/runtime/help/options.md index 9670f940..66d3bbfa 100644 --- a/runtime/help/options.md +++ b/runtime/help/options.md @@ -13,15 +13,6 @@ Here are the options that you can set: default value: `true` -* `autosave`: micro will save the buffer every `n` seconds automatically - (where `n` is the value of the option). Micro also will automatically - save and quit when you exit without asking. Be careful when using this - feature, because you might accidentally save a file, overwriting what - was there before. If the value of the option is `0` then micro will - not autosave. - - default value: `0` - * `backup`: micro will automatically keep backups of all open buffers. Backups are stored in `~/.config/micro/backups` and are removed when the buffer is closed cleanly. In the case of a system crash or a micro crash, the contents