diff --git a/main.go b/main.go index 85a151c..536cb17 100644 --- a/main.go +++ b/main.go @@ -70,6 +70,7 @@ func main() { } } case "list", "ls": + known := map[string]bool{} dirs, err := ioutil.ReadDir(saves) if err != nil { fmt.Fprintf(os.Stderr, "could not read saves dir: %+v\n", err) @@ -82,6 +83,19 @@ func main() { status = "m" } fmt.Printf("%s %s\n", status, dir.Name()) + known[dir.Name()] = true + } + dirs, err = ioutil.ReadDir(appSupport) + if err != nil { + fmt.Fprintf(os.Stderr, "could not read saves dir: %+v\n", err) + os.Exit(1) + } + for _, dir := range dirs { + if dir.Mode()&os.ModeSymlink == os.ModeSymlink { + if _, ok := known[dir.Name()]; !ok { + fmt.Fprintf(os.Stderr, "? %s\n", dir.Name()) + } + } } default: fmt.Fprintf(os.Stderr, "%s\n", usage)