diff --git a/color/basic_color.v b/color/basic_color.v index baacad5..35bc1ef 100644 --- a/color/basic_color.v +++ b/color/basic_color.v @@ -22,55 +22,55 @@ enum BasicColor { } fn (c BasicColor) render(msg string) string { - if no_color { - return msg - } + return if no_color { + msg + } else { + func := match c { + .black { term.black } + .red { term.red } + .green { term.green } + .yellow { term.yellow } + .blue { term.blue } + .magenta { term.magenta } + .cyan { term.cyan } + .white { term.white } + .bright_black { term.bright_black } + .bright_red { term.bright_red } + .bright_green { term.bright_green } + .bright_yellow { term.bright_yellow } + .bright_blue { term.bright_blue } + .bright_magenta { term.bright_magenta } + .bright_cyan { term.bright_cyan } + .bright_white { term.bright_white } + } - func := match c { - .black { term.black } - .red { term.red } - .green { term.green } - .yellow { term.yellow } - .blue { term.blue } - .magenta { term.magenta } - .cyan { term.cyan } - .white { term.white } - .bright_black { term.bright_black } - .bright_red { term.bright_red } - .bright_green { term.bright_green } - .bright_yellow { term.bright_yellow } - .bright_blue { term.bright_blue } - .bright_magenta { term.bright_magenta } - .bright_cyan { term.bright_cyan } - .bright_white { term.bright_white } + func(msg) } - - return func(msg) } fn (c BasicColor) render_bg(msg string) string { - if no_color { - return msg - } + return if no_color { + msg + } else { + func := match c { + .black { term.bg_black } + .red { term.bg_red } + .green { term.bg_green } + .yellow { term.bg_yellow } + .blue { term.bg_blue } + .magenta { term.bg_magenta } + .cyan { term.bg_cyan } + .white { term.bg_white } + .bright_black { term.bright_bg_black } + .bright_red { term.bright_bg_red } + .bright_green { term.bright_bg_green } + .bright_yellow { term.bright_bg_yellow } + .bright_blue { term.bright_bg_blue } + .bright_magenta { term.bright_bg_magenta } + .bright_cyan { term.bright_bg_cyan } + .bright_white { term.bright_bg_white } + } - func := match c { - .black { term.bg_black } - .red { term.bg_red } - .green { term.bg_green } - .yellow { term.bg_yellow } - .blue { term.bg_blue } - .magenta { term.bg_magenta } - .cyan { term.bg_cyan } - .white { term.bg_white } - .bright_black { term.bright_bg_black } - .bright_red { term.bright_bg_red } - .bright_green { term.bright_bg_green } - .bright_yellow { term.bright_bg_yellow } - .bright_blue { term.bright_bg_blue } - .bright_magenta { term.bright_bg_magenta } - .bright_cyan { term.bright_bg_cyan } - .bright_white { term.bright_bg_white } + func(msg) } - - return func(msg) } diff --git a/color/paintbrush.v b/color/paintbrush.v index c540254..5c78bdb 100644 --- a/color/paintbrush.v +++ b/color/paintbrush.v @@ -37,23 +37,23 @@ pub fn new_brush(p BrushParams) !Brush { } pub fn (p &Brush) render(msg string) string { - if no_color || p.disabled { - return msg - } + return if no_color || p.disabled { + msg + } else { + mut result := msg - mut result := msg + if fg := p.fg { + result = fg.render(result) + } + if bg := p.bg { + result = bg.render(result) + } + for style in p.style { + result = style.render(result) + } - if fg := p.fg { - result = fg.render(result) + result } - if bg := p.bg { - result = bg.render(result) - } - for style in p.style { - result = style.render(result) - } - - return result } pub fn (p &Brush) cprint(msg string) { diff --git a/color/style.v b/color/style.v index b29c9c7..fd91403 100644 --- a/color/style.v +++ b/color/style.v @@ -16,22 +16,22 @@ enum Style { } pub fn (s Style) render(msg string) string { - if no_color { - return msg - } + return if no_color { + msg + } else { + func := match s { + .reset { term.reset } + .bold { term.bold } + .dim { term.dim } + .italic { term.italic } + .underline { term.underline } + .slow_blink { term.slow_blink } + .rapid_blink { term.rapid_blink } + .inverse { term.inverse } + .hidden { term.hidden } + .strikethrough { term.strikethrough } + } - func := match s { - .reset { term.reset } - .bold { term.bold } - .dim { term.dim } - .italic { term.italic } - .underline { term.underline } - .slow_blink { term.slow_blink } - .rapid_blink { term.rapid_blink } - .inverse { term.inverse } - .hidden { term.hidden } - .strikethrough { term.strikethrough } + func(msg) } - - return func(msg) } diff --git a/color/true_color.v b/color/true_color.v index 487b50b..1904f92 100644 --- a/color/true_color.v +++ b/color/true_color.v @@ -21,17 +21,17 @@ struct TrueColor { } fn (c TrueColor) render(msg string) string { - if no_color { - return msg + return if no_color { + msg + } else { + term.rgb(c.r, c.g, c.b, msg) } - - return term.rgb(c.r, c.g, c.b, msg) } fn (c TrueColor) render_bg(msg string) string { - if no_color { - return msg + return if no_color { + msg + } else { + term.bg_rgb(c.r, c.g, c.b, msg) } - - return term.bg_rgb(c.r, c.g, c.b, msg) }