Ich habe meine Dotfiles auf Github (schamlose Gabelung der guten Arbeit anderer Leute) versioniert . Bei der Arbeit habe ich sie auf einem zentralen Linux-Server (SuSE Enterprise Linux 10). Ich synchronisiere sie von einem zentralen Verwaltungsserver mit Zielservern (sie haben oft keinen externen http-Zugriff).
Wir haben SuSE Enterprise Linux 11 eingeführt und ich stelle fest, dass auf diesen Servern "rote" oder magentafarbene Bash-Eingabeaufforderungsfarben aus meinen Profileinstellungen nicht funktionieren. In ähnlicher Weise funktionieren meine vim-Farbschemaeinstellungen nicht - zum Beispiel verschwindet das Wort anstelle der Hervorhebung von Suchbegriffen. Rot- und Gelbtöne werden nicht geehrt.
Kann mich jemand auf eine Umgebung oder Einstellung hinweisen, die bei diesen SLES 11-Boxen möglicherweise anders ist? Unten finden Sie Screenshots meiner SLES10- und SLES11-Anmeldungen mit synchronisierten Punktedateien (z. B. .bash_profile, .bash_prompt, .vimrc usw.).
$TERMauf beiden Servern ist xterm-256color. ** Siehe Update-Hinweise
Von einem SLES10-Server:

Gleiche Dotfiles, aber auf einem SLES11-Server:

Aktualisieren
- Ich habe festgestellt, dass $ TERM anders ist, wenn ich direkt von meiner Workstation aus SSHed habe als vom SLES10-Dienstprogrammserver. Ich glaube, TERM wird vom Utility-Server weitergeleitet.
- Die Init- Skriptsätze von .bash_prompt,
$TERMderen Ausgabe aufinfocmpdemncurses-develPaket basiert, von dem ich bestätigt habe, dass es sich nicht auf dem SLES11-Server-Image befindet. Wenninfocmpes nicht ausgeführt wird oder nicht verfügbar$TERMist, bleibt es unverändert oder was auch immer es war, bevor das Skript ausgeführt wurde . - Für den Fall, dass
$TERMgeerbt wird (bereits festgelegt), lässt die bedingte Logik des Skripts .bash_prompt sie derzeit unberührt, wenninfocmpsie nicht ausgeführt wird. - Das Skript .bash_prompt verwendet dann
tputBefehle, um mehrere Variablen mit Farbcodes zu initialisieren - Werte, die weit über dem Standardwert für 8 Farben liegen.tputwird beeinflusst von$TERM.
Meine aktuelle Theorie: Mein PS1Setup-Skript gibt möglicherweise einige nicht unterstützte Terminalwerte aus - früher festgelegt aus der bedingten Logik basierend auf Befehlen, die von den falschen / nicht unterstützten beeinflusst werden $TERM. Dies "vermasselt" dann nachfolgende Befehle wie vim.
Kann jemand diese Theorie auf der Grundlage seines Verständnisses tputund des Einflusses ncursesauf das System bestätigen? Ich habe Artikel darüber bemerkt , wie ncurses mehr Farbwerte im Terminal ermöglicht.