mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-19 14:00:35 +00:00
terminal: fix fgColor/bgColor commands [backport] (#15554)
Since #8296, fgSetColor is no longer a global. These commands were probably left out from the change as an oversight, so some tests have been added to make sure this won't happen again.
This commit is contained in:
@@ -689,10 +689,9 @@ template styledEchoProcessArg(f: File, color: Color) =
|
||||
template styledEchoProcessArg(f: File, cmd: TerminalCmd) =
|
||||
when cmd == resetStyle:
|
||||
resetAttributes(f)
|
||||
when cmd == fgColor:
|
||||
fgSetColor = true
|
||||
when cmd == bgColor:
|
||||
fgSetColor = false
|
||||
elif cmd in {fgColor, bgColor}:
|
||||
let term = getTerminal()
|
||||
term.fgSetColor = cmd == fgColor
|
||||
|
||||
macro styledWrite*(f: File, m: varargs[typed]): untyped =
|
||||
## Similar to ``write``, but treating terminal style arguments specially.
|
||||
|
||||
8
tests/stdlib/tterminal.nim
Normal file
8
tests/stdlib/tterminal.nim
Normal file
@@ -0,0 +1,8 @@
|
||||
discard """
|
||||
action: compile
|
||||
"""
|
||||
|
||||
import terminal, colors
|
||||
|
||||
styledEcho fgColor, colRed, "Test"
|
||||
styledEcho bgColor, colBlue, "Test"
|
||||
Reference in New Issue
Block a user