forked from TrueCloudLab/restic
termstatus: Do formatting in Message, not Terminal
This commit is contained in:
parent
66d03c797e
commit
46f04bc5f0
2 changed files with 9 additions and 17 deletions
|
@ -1,6 +1,10 @@
|
||||||
package ui
|
package ui
|
||||||
|
|
||||||
import "github.com/restic/restic/internal/ui/termstatus"
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
|
"github.com/restic/restic/internal/ui/termstatus"
|
||||||
|
)
|
||||||
|
|
||||||
// Message reports progress with messages of different verbosity.
|
// Message reports progress with messages of different verbosity.
|
||||||
type Message struct {
|
type Message struct {
|
||||||
|
@ -19,27 +23,27 @@ func NewMessage(term *termstatus.Terminal, verbosity uint) *Message {
|
||||||
|
|
||||||
// E reports an error
|
// E reports an error
|
||||||
func (m *Message) E(msg string, args ...interface{}) {
|
func (m *Message) E(msg string, args ...interface{}) {
|
||||||
m.term.Errorf(msg, args...)
|
m.term.Error(fmt.Sprintf(msg, args...))
|
||||||
}
|
}
|
||||||
|
|
||||||
// P prints a message if verbosity >= 1, this is used for normal messages which
|
// P prints a message if verbosity >= 1, this is used for normal messages which
|
||||||
// are not errors.
|
// are not errors.
|
||||||
func (m *Message) P(msg string, args ...interface{}) {
|
func (m *Message) P(msg string, args ...interface{}) {
|
||||||
if m.v >= 1 {
|
if m.v >= 1 {
|
||||||
m.term.Printf(msg, args...)
|
m.term.Print(fmt.Sprintf(msg, args...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// V prints a message if verbosity >= 2, this is used for verbose messages.
|
// V prints a message if verbosity >= 2, this is used for verbose messages.
|
||||||
func (m *Message) V(msg string, args ...interface{}) {
|
func (m *Message) V(msg string, args ...interface{}) {
|
||||||
if m.v >= 2 {
|
if m.v >= 2 {
|
||||||
m.term.Printf(msg, args...)
|
m.term.Print(fmt.Sprintf(msg, args...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// VV prints a message if verbosity >= 3, this is used for debug messages.
|
// VV prints a message if verbosity >= 3, this is used for debug messages.
|
||||||
func (m *Message) VV(msg string, args ...interface{}) {
|
func (m *Message) VV(msg string, args ...interface{}) {
|
||||||
if m.v >= 3 {
|
if m.v >= 3 {
|
||||||
m.term.Printf(msg, args...)
|
m.term.Print(fmt.Sprintf(msg, args...))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -252,23 +252,11 @@ func (t *Terminal) Print(line string) {
|
||||||
t.print(line, false)
|
t.print(line, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Printf uses fmt.Sprintf to write a line to the terminal.
|
|
||||||
func (t *Terminal) Printf(msg string, args ...interface{}) {
|
|
||||||
s := fmt.Sprintf(msg, args...)
|
|
||||||
t.Print(s)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Error writes an error to the terminal.
|
// Error writes an error to the terminal.
|
||||||
func (t *Terminal) Error(line string) {
|
func (t *Terminal) Error(line string) {
|
||||||
t.print(line, true)
|
t.print(line, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Errorf uses fmt.Sprintf to write an error line to the terminal.
|
|
||||||
func (t *Terminal) Errorf(msg string, args ...interface{}) {
|
|
||||||
s := fmt.Sprintf(msg, args...)
|
|
||||||
t.Error(s)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Truncate s to fit in width (number of terminal cells) w.
|
// Truncate s to fit in width (number of terminal cells) w.
|
||||||
// If w is negative, returns the empty string.
|
// If w is negative, returns the empty string.
|
||||||
func Truncate(s string, w int) string {
|
func Truncate(s string, w int) string {
|
||||||
|
|
Loading…
Reference in a new issue