diff --git a/ui/terminal/simple_status.go b/ui/terminal/simple_status.go index cef3b5d5c..9e9ffc003 100644 --- a/ui/terminal/simple_status.go +++ b/ui/terminal/simple_status.go @@ -22,30 +22,24 @@ import ( ) type simpleStatusOutput struct { - writer io.Writer - formatter formatter - keepANSI bool - outputLevel status.MsgLevel + writer io.Writer + formatter formatter + keepANSI bool } // NewSimpleStatusOutput returns a StatusOutput that represents the // current build status similarly to Ninja's built-in terminal // output. -func NewSimpleStatusOutput(w io.Writer, formatter formatter, keepANSI bool, quietBuild bool) status.StatusOutput { - level := status.StatusLvl - if quietBuild { - level = status.PrintLvl - } +func NewSimpleStatusOutput(w io.Writer, formatter formatter, keepANSI bool) status.StatusOutput { return &simpleStatusOutput{ - writer: w, - formatter: formatter, - keepANSI: keepANSI, - outputLevel: level, + writer: w, + formatter: formatter, + keepANSI: keepANSI, } } func (s *simpleStatusOutput) Message(level status.MsgLevel, message string) { - if level >= s.outputLevel { + if level >= status.StatusLvl { output := s.formatter.message(level, message) if !s.keepANSI { output = string(stripAnsiEscapes([]byte(output))) @@ -54,13 +48,10 @@ func (s *simpleStatusOutput) Message(level status.MsgLevel, message string) { } } -func (s *simpleStatusOutput) StartAction(_ *status.Action, _ status.Counts) { +func (s *simpleStatusOutput) StartAction(action *status.Action, counts status.Counts) { } func (s *simpleStatusOutput) FinishAction(result status.ActionResult, counts status.Counts) { - if s.outputLevel > status.StatusLvl { - return - } str := result.Description if str == "" { str = result.Command diff --git a/ui/terminal/status.go b/ui/terminal/status.go index ff0af4737..2ad174fee 100644 --- a/ui/terminal/status.go +++ b/ui/terminal/status.go @@ -29,9 +29,9 @@ import ( func NewStatusOutput(w io.Writer, statusFormat string, forceSimpleOutput, quietBuild, forceKeepANSI bool) status.StatusOutput { formatter := newFormatter(statusFormat, quietBuild) - if forceSimpleOutput || quietBuild || !isSmartTerminal(w) { - return NewSimpleStatusOutput(w, formatter, forceKeepANSI, quietBuild) - } else { + if !forceSimpleOutput && isSmartTerminal(w) { return NewSmartStatusOutput(w, formatter) + } else { + return NewSimpleStatusOutput(w, formatter, forceKeepANSI) } }