summaryrefslogtreecommitdiff
path: root/src/ansi.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/ansi.go')
-rw-r--r--src/ansi.go14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/ansi.go b/src/ansi.go
index f8fe56a1..f5506701 100644
--- a/src/ansi.go
+++ b/src/ansi.go
@@ -169,6 +169,8 @@ func interpretCode(ansiCode string, prevState *ansiState) *ansiState {
}
case 1:
switch num {
+ case 2:
+ state256 = 10 // MAGIC
case 5:
state256++
default:
@@ -177,8 +179,20 @@ func interpretCode(ansiCode string, prevState *ansiState) *ansiState {
case 2:
*ptr = tui.Color(num)
state256 = 0
+ case 10:
+ *ptr = tui.Color(1<<24) | tui.Color(num<<16)
+ state256++
+ case 11:
+ *ptr = *ptr | tui.Color(num<<8)
+ state256++
+ case 12:
+ *ptr = *ptr | tui.Color(num)
+ state256 = 0
}
}
}
+ if state256 > 0 {
+ *ptr = -1
+ }
return state
}