Files
kjol/tools/tsgo/cmd/tsgo/enablevtprocessing_windows.go
2026-07-09 16:50:43 -04:00

23 lines
524 B
Go

package main
import (
"golang.org/x/sys/windows"
)
func init() {
h, err := windows.GetStdHandle(windows.STD_OUTPUT_HANDLE)
if err != nil || h == windows.InvalidHandle {
return
}
fileType, err := windows.GetFileType(h)
if err != nil || fileType == windows.FILE_TYPE_CHAR {
var mode uint32
if err := windows.GetConsoleMode(h, &mode); err != nil {
return
}
if mode&windows.ENABLE_VIRTUAL_TERMINAL_PROCESSING == 0 {
_ = windows.SetConsoleMode(h, mode|windows.ENABLE_VIRTUAL_TERMINAL_PROCESSING)
}
}
}