2008-10-05 16 views
7

Terminalimde (test scripts here) 256 renk çalışmam var, ancak ncurses (Ruby-ncurses) kullandığımda çalışmamaya başlıyor. Bu sayfada verilen çıkış sıralarını yazdırmak iyi çalışıyor, ancak ncurses 'in çalışmasını başlattığımda' çalışmayı durdurur 've bulduğum çeşitli ncurses renk değiştirme/string çıktı işlevlerinden herhangi biriyle renkleri çıkaramıyorum. Ne verir?Ruby-ncurses'dan 256 rengi alma

cevap

5

njsf size ncurses'in sizin terminali, çoğu komut xterm dizileri yapmak değil sadece çıkış [X.org dan bile bir] hakkında ne düşündüğünü gösterecektir: Sen burada kısmen vardı ve sonra çok daha fazla tinkering, sonunda işe koyuldum. Yardım ettiğin için teşekkür ederim. Hikaye: XTerm (ve rxvt ve Eterm) kaçış dizileri (gördüğüm şey) ile 256 rengi destekliyor ancak 'tput renkler', '8' diyecek ve ncurses bunlara ulaşamayacak çünkü ncurses güzel oynuyor ve terminfo aracılığıyla erişmeye çalışmak. benzer ağrısı olan herkes yararına

:

ben ncurses'in vadeli yüklemek için dosyaları terminfo'ya/lib/terminfo'ya/x/xterm-256color ve diğer 256color almak için (Ubuntu) paket lazım bulundu . Daha sonra TERM'imi xterm-256color'a ayarlıyorum ve ~/.Xdefault'lara '* customization: -color' satırını ekledim, 'xrdb -merge ~/.Xdefaults' komutunu yükledim ve ondan sonra uygun 256 renge sahip oldum. Yeni xtermlerde destek. ayarı

+0

Yep eğer , terminalinizi doğru bir şekilde ayarlamayı önermek için buraya geldiler .. Ayrıca, sürücü okuyucular için bir bit. Mac OS X Terminal.app, örneğin sadece 16 rengi destekler, bu yüzden ya iTerm'i ya da XTerm'i X11'de kullanın ya da unutun! – ocodo

7

Bunun hikayenin tamamı olup olmayacağından emin değilim, ancak terminal kapasitelerinizin 256 renk açıklamasını gerçekten sağladığından emin olun.

TERM ortamı değişkeni değeri nedir? Xterm-256color'a ayarlamayı deneyin ve tekrar çalıştırın. ncurses, uygun renk çıkış dizilerini almalıdır.

Ayrıca biz SXEmacs gelişme kullandığımız program ile Terminal yetenekleri ve terminal renk çıkışını test edebilirsiniz: gcc -o tty-renkler tty-colors.c ile

http://www.triatlantico.org/tmp/tty-colors.c

Derleme -lncurses

DÜZENLEME: Sadece net çıktıda bulunan betiklerin 256 renk olduğunu, bunun "hepsi ayarlı" olmadığını unutmayın. Curses programları terminfo ve termcap'a ve terminal ile nasıl etkileşime geçeceğini öğrenmek için TERM ortam değişkenine güvenir. Bir curses uygulamasının 256 rengi kullanabilmesi için TERM değişkenini 256 rengi destekleyen mevcut bir terminal adına ayarlamalıdır. C programı yukarıdaki

2

ENV [ 'TERM'] + = '-256color' ENV [ 'TERM'] == 'xterm' # ubuntu üzerinde 256 renk

eser aktive 10,04 +