Menjalankan Layar GNU dengan 256 warna pada OS X Lion


8

Terminal.app di Mac OS X Lion memiliki fitur yang membutuhkan waktu lama untuk diimplementasikan: dukungan 256 warna. Warnanya bekerja dengan baik. Masalah yang saya alami adalah ketika saya menjalankan Layar GNU saya tidak memiliki akses ke 256 warna. Di layar, $ TERM diatur ke "layar".

Saya sudah membaca berbagai hal di tempat yang berbeda dan saya sangat bingung. Beberapa di antaranya adalah:

  • Layar GNU harus dikompilasi dengan dukungan warna (Bagaimana saya bisa tahu jika layar OS X dikompilasi dengan cara ini?)
  • File terminfo khusus untuk layar-256color harus diinstal. Apakah OS X punya ini?
  • Dalam .screenrc, istilah harus diatur ke "screen-256color".
  • Fungsi-fungsi tertentu dalam Emacs harus dipanggil agar Emacs menjadi berwarna ( http://www.emacswiki.org/emacs/GnuScreen#toc6 )

Saya mencoba variasi prosedur ini dan tidak berhasil serta tidak yakin mengapa saya gagal. Apa cara paling langsung bagi saya untuk mengaktifkan 256 warna di Layar GNU?


1
@ PaulR Anda benar, tapi itu pertanyaan yang bagus.

Jawaban:


6

Secara default, screentidak menyadari bahwa itu berjalan dalam kemampuan 256 warna xterm. Untuk membuat program screenmengenali fitur ini, Anda perlu mengatur beberapa hal di ~/.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" 

Jika ini tidak berhasil untuk Anda, versi Anda screenmungkin belum dikompilasi ./configure --enable-colors256. Anda dapat memeriksa ini di layar pembuka saat memulai screen. Versi default yang menyertai OS X tidak mendukung 256 warna. Anda dapat memeriksa sumbernya dan mengkompilasi versi Anda sendiri, meletakkan biner yang dihasilkan di $PATH( Anda taruh di ~/binmana saya menambahkan ke saya $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

Sumber: 1 dan 2


1
Terima kasih banyak. Masalah ini telah menjengkelkan saya begitu lama. Seseorang di Apple berpikir itu adalah ide yang baik untuk mengirim emulator terminal dengan 256 warna dan terminal multiplexer dengan 8 haha!
hekevintran

FWIW, saya melaporkan ini sebagai bug di bugreport.apple.com , jadi semoga ini akan diperbaiki di Mountain Lion.
Mathias Bynens

2
Pengguna homebrew : homebrew-dupes memiliki resep untuk menyertakan layar--enable-colors256 . $ brew ketuk homebrew / dupes # jika Anda belum menginstal $ brew layar instal
chrisk

1

Tambahkan berikut ini ke ~/.screenrc

term "screen-256color"

Dan kemudian coba, itu akan berhasil.


FWIW inilah yang saya butuhkan di 10.7.5 dan 10.8.2.
tvon

@tvon Saya tidak bisa mengaktifkannya di OSX 10.7.5 saya. Ada yang tahu kenapa?
Phani
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.