Antwort

Antwort

Was muss ich tun, damit die Escape-Sequenz für doppelte Unterstreichungen \E[4:2mmit tmux funktioniert?

Es funktioniert in meinem Terminal (mintty) außerhalb von tmux und ich habe erfolgreich die Terminfo meines Terminals angepasst, umdie Terminfo-Erweiterungenmit denen tmux kompatibel ist, um Echtfarben und Überstreichungen innerhalb von tmux zu aktivieren.

Allerdings bekomme ich die erweiterte Unterstreichungsfunktion (die „Smulx“-Codes) nicht zum Laufen. Hier ist meine Terminfo:

# Compile and add to database using 'tic -x <filename>'                      
#                                                                            
stanterm-256color|xterm with non-standard terminfo extensions,               
  use=xterm-256color,                                                        
  Tc,                                                                        
  Smol=\E[53m, Rmol=\E[55m,                                                  
# These underline extensions don't work in Tmux :(                           
# Smulx=\E[< WHAT GOES HERE? >m,  
# Smul2=\E[4:2m, does not work within tmux                                           

Mein .tmux.confenthält nur das Minimale

set -g default-terminal "tmux-256color"

Ich verwende tmux 3.0 über byobu (tmux wurde aus dem Quellcode erstellt, da die Overline-Funktion sehr neu ist). Irgendwelche Ideen?

Danke


Antwort

Option 1: Passen Sie die tmux-Konfiguration an

Erhöhen Sie set -as terminal-overrides ',*:Smulx=\E[4::%p1%dm'Ihre .tmux.confErträge

# .tmux.config
set -g default-terminal "tmux-256color"
set -as terminal-overrides ',*:Smulx=\E[4::%p1%dm'

# ... rest of your configuration

Option 2: Terminfo anpassen

Hängen Sie den entsprechenden Termcap-String Smulx=\E[4:%p1%dm,an Ihr Terminfo anQuelleDatei und kompilieren Sie sie mit tic -x <termfile>. Beachten Sie, dass im Gegensatz zur vorherigen Option der SmulxEintrag einen einzelnen Doppelpunkt erfordert.

Ich habe mich für die zweite Option entschieden. Meine Terminfo-Quelldatei sieht folgendermaßen aus:

# Compile and add to database using 'tic -x <filename>'
#
stanterm-256color|xterm with non-standard terminfo extensions,
  use=xterm-256color,
  Tc, 
  Smol=\E[53m, Rmol=\E[55m, 
  Smulx=\E[4:%p1%dm,

Antwort1

-als Terminal-Overrides festlegen ',*:Smulx=\E[4::%p1%dm'

verwandte Informationen