Esecuzione di GNU Screen con 256 colori su OS X Lion

8

Terminal.app in Mac OS X Lion ha una funzione che impiega molto tempo per essere implementata: supporto a 256 colori. I colori funzionano bene. Il problema che sto avendo è che quando eseguo GNU Screen non ho accesso a 256 colori. Nella schermata, $ TERM è impostato su "schermo".

Ho letto cose diverse in posti diversi e sono molto confuso. Alcuni di questi includono:

  • Lo schermo GNU deve essere compilato con il supporto del colore (come posso sapere se lo schermo di OS X è stato compilato in questo modo?)
  • Deve essere installato un file terminfo speciale per screen-256color. OS X ha questo?
  • In .screenrc, il termine deve essere impostato su "screen-256color".
  • Alcune funzioni di Emacs devono essere richiamate affinché Emacs sia colorato ( link )

Ho provato le varianti di queste procedure e sono stato infruttuoso e incerto sul motivo per cui ho fallito. Qual è il modo più diretto per me di abilitare 256 colori nello schermo GNU?

    
posta hekevintran 06.02.2012 - 22:29
fonte

2 risposte

6

Per impostazione predefinita, screen non è consapevole del fatto che è in esecuzione in una percentuale dixterm di 256 colori. Per rendere i programmi in screen riconoscere questa funzione, devi impostare un paio di cose nella tua ~/.screenrc :

term "screen-256color"
# terminfo and termcap for nice 256 color terminal
# allow bold colors - necessary for some reason
attrcolor b ".I" 
# tell screen how to set colors. AB = background, AF=foreground 
termcapinfo xterm 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' 
# erase background with current bg color 
defbce "on" 

Se questo non funziona, la tua versione di screen probabilmente non è stata compilata con ./configure --enable-colors256 . Puoi controllare questo nella schermata di benvenuto quando inizi screen . La versione predefinita fornita con OS X non supporta 256 colori. Puoi controllare l'origine e compilare la tua versione, inserendo il binario risultante nella tua $PATH (l'ho messo in ~/bin che ho aggiunto al mio $PATH ):

git clone git://git.savannah.gnu.org/screen.git
cd screen/src
./autogen.sh
./configure --enable-colors256
make   # I got a lot of warnings here, but they don't seem to matter
sudo make install
cp screen ~/bin/screen

Fonti: 1 e 2

    
risposta data 30.03.2012 - 22:24
fonte
1

Aggiungi quanto segue al tuo ~/.screenrc

term "screen-256color"

E poi prova, dovrebbe funzionare.

    
risposta data 30.03.2012 - 22:13
fonte

Leggi altre domande sui tag