github.com/Arneball/complete@v1.1.2/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  }