Wie verhindern Sie, dass CodeRunner seiner Konsolenausgabe [00m[00m[00m[00m[00m] voranstellt?

Es scheint eine Verbindung zwischen der Konsolenausgabe von CodeRunner und Ihrem tatsächlichen Terminal- Eingabeaufforderungsskript zu geben, dh wenn ein solcher Eingabeaufforderungscode beispielsweise aus ~/.bash_profile stammt (was CodeRunner standardmäßig liest).

Ich habe eine ziemlich ausgefallene (sprich: großartige ) Terminal-Eingabeaufforderung ( Screenshot | Code ), die die Konsolenausgabe von CodeRunner zu vermasseln scheint, was [00m[00m[00m[00m[00mjedes Mal, wenn ich Code ausführe, zu verstümmelten Zeichen am Anfang führt, obwohl er fehlerfrei und unabhängig von der Sprache ist) . Ich zögere, meine Eingabeaufforderung zu ändern, um diese lästigen Zeichen loszuwerden.

Wenn ich Invoke bash im Anmeldemodus deaktiviere, wenn ich Code in den erweiterten Einstellungen von CodeRunner ausführe, sehe ich bash: source: No such file or directorystattdessen …

Also stecke ich zwischen einem Felsen und einer schwierigen Stelle fest und versuche, eine saubere Konsole in CodeRunner zu bekommen …

Wie kann das behoben werden? (Ich habe versucht, den Entwickler diesbezüglich zu kontaktieren, aber ich erhalte keine Antwort.)

Antworten (1)

Der Schuldige ist wahrscheinlich Zeile 88 in Ihrer prompt.sh:

trap 'echo -ne "\033[00m"' DEBUG

Dadurch wird ein ANSI-Escape-Code ausgegeben, um die Farben und den Stil vor der Ausgabe jedes Befehls zurückzusetzen.

Wenn Sie Ihr Bash-Skript untersuchen, scheint diese Zeile unnötig zu sein, da Sie die Formatierung am Ende Ihrer Eingabeaufforderung hier in Zeile 76 zurücksetzen:

PS1="$status_style"'$fill \t\n'"$BY\$(__name_and_server)$Y\w$G\$(__git_prompt)$RESET$ "

Ich schlage vor, Sie entfernen einfach Zeile 88 und versuchen es so.

Etwas unabhängig von diesem Problem, aber ich schlage auch vor, Zeile 73 wie folgt zu bearbeiten:

local RESET="\[\033[0m\]"

Auf diese Weise setzen Sie das ANSI-Styling wirklich zurück, während Sie es zuvor auf Weiß eingestellt haben.

Die Welt wäre ein besserer Ort mit hilfsbereiten Menschen wie dir, Gerry! Deine Hilfe hat super funktioniert!