Ansi Colors 在Windows 10 上不起作用:修復
在最近的開發中,Windows 10 引入了一個控制台,允許透過以下方式進行彩色列印Ansi 轉義序列。然而,一些用戶遇到了這些顏色無法在筆記型電腦上正確顯示的問題。
其中一位使用者在 Windows 10.0.14393 上使用二進位文件,觀察到 Ansi 彩色列印在 Nodejs 應用程式中完美運行,但不在他們自己的應用程式中。儘管刪除了與控制台關聯的註冊表項和快捷方式並以其他使用者身份運行二進位文件,問題仍然存在。
解決方案:啟用虛擬終端處理
金鑰解決此問題的方法是在Windows 上啟用虛擬終端處理(VTP),這是自最近更新以來必需的。可以依照以下步驟操作:
建立初始化檔案(init_windows.go):
將下列程式碼加入名為init_windows.go 的檔案中:
package main import ( "os" "golang.org/x/sys/windows" ) func init() { stdout := windows.Handle(os.Stdout.Fd()) var originalMode uint32 windows.GetConsoleMode(stdout, &originalMode) windows.SetConsoleMode(stdout, originalMode|windows.ENABLE_VIRTUAL_TERMINAL_PROCESSING) }
注意:此解決方案改編自此問題主題:[https://github.com/sirupsen/logrus/issues/172#issuecomment-353724264] (https: //github.com/sirupsen/logrus/issues/172#issuecomment-353724264)
以上是為什麼我的 ANSI 顏色在 Windows 10 上不起作用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!