Terminal

強制 Bash 使用 8 種顏色

  • November 5, 2019

我製作了一些要在終端中播放的動畫和遊戲,它們依賴於只有 8 種顏色可用的終端。當我在有 16 種顏色可用的終端上執行它們時(當您執行 neofetch 並查看可用顏色時尤其明顯),它們根本無法正確渲染。

有沒有一種快速而骯髒的方法來強制 linux 終端只使用 8 種顏色?

編輯:問題也可能是我在製作這些程序時在 Ubuntu 18.04 LTS 上使用了舊版本的 ncurses。我試圖讓他們在具有最新版本庫的發行版上看起來正確。對於任何有興趣嘗試回答我最初提出的問題的人,如果可能的話,我仍然會接受任何展示如何強制 gnome-terminal 恢復到 8 色模式的方法。

編輯:問題與我經常使用 standend() 將繪圖功能恢復為黑色文本上的白色有關。出於某種原因,這並沒有像我期望的那樣在某些發行版上做。通過明確地告訴它 attron() 一個明確定義為黑白的顏色對,我解決了這個問題。這是一個 hacky 和硬編碼的解決方案,源於我以硬編碼的方式濫用 ncurses 庫。考慮一下這個問題已經解決了,儘管我對使用原始轉義序列進行程式的一些可消化資源感興趣,以便將來更好地理解這個問題。

這個問題與我經常使用 standend() 將繪圖功能恢復為黑色文本上的白色有關。出於某種原因,這並沒有像我期望的那樣在某些發行版上做。通過明確地告訴它 attron() 一個明確定義為黑白的顏色對,我解決了這個問題。這是一個 hacky 和硬編碼的解決方案,源於我以硬編碼的方式濫用 ncurses 庫。

引用自:https://unix.stackexchange.com/questions/550099