github.com/alexandrestein/complete@v1.1.2-0.20180313112007-cc6c1c3aa2ce/log.go (about) 1 package complete 2 3 import ( 4 "io" 5 "io/ioutil" 6 "log" 7 "os" 8 ) 9 10 // Log is used for debugging purposes 11 // since complete is running on tab completion, it is nice to 12 // have logs to the stderr (when writing your own completer) 13 // to write logs, set the COMP_DEBUG environment variable and 14 // use complete.Log in the complete program 15 var Log = getLogger() 16 17 func getLogger() func(format string, args ...interface{}) { 18 var logfile io.Writer = ioutil.Discard 19 if os.Getenv(envDebug) != "" { 20 logfile = os.Stderr 21 } 22 return log.New(logfile, "complete ", log.Flags()).Printf 23 }