diff --git a/test.go b/test.go new file mode 100644 index 0000000..29dd616 --- /dev/null +++ b/test.go @@ -0,0 +1,29 @@ +package main + +import ( + "io" + "fmt" + "strings" + "terminal" +) + +func main() { + term, _ := terminal.NewWithStdInOut() + defer term.ReleaseFromStdInOut() // defer this + term.SetPrompt("root@hello: # ") + line, err:= term.ReadLine() + for { + if err == io.EOF { + term.Write([]byte(line)) + fmt.Println() + return + } + if (err != nil && strings.Contains(err.Error(), "control-c break")) || len(line) == 0{ + line, err = term.ReadLine() + } else { + term.Write([]byte(line+"\r\n")) + line, err = term.ReadLine() + } + } + term.Write([]byte(line)) +}