In letzter Zeit habe ich festgestellt, dass colorama * nicht wie vorgesehen funktioniert. ANSI-Escape-Sequenzen werden nicht in WinAPI-Aufrufe konvertiert, um die Textfarben der PoSh-Konsole zu ändern. Mir ist aufgefallen, dass es in einer alten cmd-Konsole korrekt funktioniert, aber nicht in PowerShell.
Ich habe auch bemerkt , dass colorama wie vorgesehen funktioniert , wenn ich die init - Funktion mit dem convert Parameter aufrufen: colorama.init(convert=True)
. Normalerweise erkennt colorama Windows-Konsolen automatisch.
Dazu testet Colorama eine Umgebungsvariable mit dem Namen TERM
. Meine PowerShell kehrt zurück cygwin
!
Wie finde ich die Cygwin-Installation, mit der diese Variable festgelegt wird?
Anmerkungen:
TERM
ist nicht in cmd Konsolen eingestellt- Ich habe nie ein eigenständiges Cygwin installiert, aber viele meiner installierten Tools bringen ihre eigenen Cygwin-Ordner / -Installationen mit (> 6).
- Das Deinstallieren dieser Tools ist keine Option
In einem aktuellen Workound lösche ich in jeder PS-Sitzung env: TERM.
- colorama ist ein Konsolen-Wrapper, der in / für Python geschrieben wurde, um farbige Textausgaben unter Linux und Windows zu ermöglichen.
TERM
oder ein cygwin
Wert deklariert. Es sollte also von einem Skript gesetzt werden.