diff --git a/utils/resume/main.go b/utils/resume/main.go index 50eec7f..acceda1 100644 --- a/utils/resume/main.go +++ b/utils/resume/main.go @@ -2,33 +2,60 @@ package main import ( "encoding/json" - "flag" "fmt" "io/ioutil" "os" + + "github.com/manifoldco/promptui" ) func main() { - source := flag.String("source", "/Users/ehlxr/ehlxr/blog/Hexo/source/resume/index.md", "source file path") - dest := flag.String("dest", "/Users/ehlxr/ehlxr/blog/resume/data.json", "destination file path") - flag.Parse() + // source := flag.String("source", "/Users/ehlxr/ehlxr/blog/Hexo/source/resume/index.md", "source file path") + // dest := flag.String("dest", "/Users/ehlxr/ehlxr/blog/resume/data.json", "destination file path") + // flag.Parse() - fmt.Printf("is these right? (n/no cancel)\n source file path: %s \n destination file path: %s\n", *source, *dest) - var in string - fmt.Scanln(&in) - if in == "no" || in == "n" { - fmt.Println("bye!") - os.Exit(0) + // fmt.Printf("is these right? (n/no cancel)\n source file path: %s \n destination file path: %s\n", *source, *dest) + // var in string + // fmt.Scanln(&in) + // if in == "no" || in == "n" { + // fmt.Println("bye!") + // os.Exit(0) + // } + + prompt := promptui.SelectWithAdd{ + Label: "What's your source file path", + Items: []string{"/Users/ehlxr/ehlxr/blog/Hexo/source/resume/index.md"}, + AddLabel: "Other", + } + + _, source, err := prompt.Run() + + if err != nil { + fmt.Printf("Prompt failed %v\n", err) + return + } + + prompt = promptui.SelectWithAdd{ + Label: "What's your destination file path", + Items: []string{"/Users/ehlxr/ehlxr/blog/resume/data.json"}, + AddLabel: "Other", + } + + _, dest, err := prompt.Run() + + if err != nil { + fmt.Printf("Prompt failed %v\n", err) + return } m := make(map[string]interface{}) m["show"] = "1" - m["content"] = string(readFile(*source)) + m["content"] = string(readFile(source)) j, err := json.Marshal(m) if err != nil { panic(err) } - writeFile(*dest, j) + writeFile(dest, j) fmt.Println("Done !") }