Pengaturan $ TERM untuk layar gnu

12

Jadi saya memiliki layar yang dikompilasi dengan 256 warna, berjalan pada Konsole dalam mode 256 warna. Jika mulai layar, TERM diatur ke "layar". Jika saya secara manual mengekspor TERM ke layar-256color semuanya berfungsi dengan baik.

Saya punya dua pertanyaan. Yang pertama adalah mengapa layar mengatur TERM ke "layar" alih-alih "layar-256color" ketika mendukung ini? Yang kedua adalah, jika saya memiliki baris berikut dalam file .screenrc saya

term    screen-256color

mengapa layar masih belum menetapkan istilah saya?

Informasi tambahan: Saya menjalankan Layar versi 4.00.03jw4 (FAU) 2-Mei-06 di Kubuntu Jaunty amd64

Zxaos
sumber
istilah layar-256color bekerja di sini dengan versi layar 4.00.03jw4 (FAU) 2-Mei-06 pada pengujian Debian. Lebih detail.
derobert
Saya tampaknya menjalankan versi layar yang sama seperti Anda. Saya ingin tahu apakah ini masalah terminfo?
Zxaos
Ya, kemungkinan besar terminfo Anda tidak memiliki layar-256color, sehingga layar benar menolak untuk set terminfo itu, karena aplikasi yang Anda akan berjalan di bawah itu akan gagal
njsf
Jika saya mengaturnya dengan tangan hal-hal bekerja dan 'warna tput' menggemakan jumlah warna yang benar Bagaimanapun, saya tidak cukup tahu tentang terminfo untuk memperbaikinya. Ada saran?
Zxaos
Jika tput berfungsi, maka Anda memiliki catatan terminfo.
derobert

Jawaban:

10

Layar selalu menetapkan TERM ke "layar" secara default. Namun demikian, Anda harus menyadari bahwa layar JANGKA = masih mendukung warna.

Saya menguji menambahkan "term screen-256color" ke ~ / .screenrc saya dan itu mengatur TERM menjadi "screen-256color" untuk saya (Versi layar 4.00.03 (FAU) 23-Oct-06). Mungkinkah layar mencari di tempat yang salah untuk file .screenrc Anda?

Anda juga dapat mencoba meluncurkan layar sebagai berikut:

screen -T screen-256color

Lihat apakah itu berhasil.

yadimka
sumber
Menentukan terminal dengan tangan meluncurkan layar dengan istilah yang benar. (Alasan saya peduli adalah bahwa Vim tampaknya tidak ingin bermain bagus, warna bijaksana, dengan layar bukan layar-256color kecuali saya memaksakannya ke mode 256 warna. Seakan-akan layar mencari saya. tempat, bagaimana saya memeriksanya?
Zxaos
Terima kasih, saran Anda membimbing saya untuk mencari tahu bahwa itu adalah profil layar yang diinstal yang mengacaukan penguraian .screenrc saya.
Zxaos
5

Masalahnya sebenarnya adalah beberapa profil layar yang saling bertentangan yang diinstal pada mesin saya. Meskipun mereka menggunakan .screenrc lokal saya, mereka mencegah saya mengatur istilah. Menonaktifkan penggunaan profil (saya mengganti nama profil symlink ~ / .screen-menjadi yang lain) menyebabkan layar membaca istilah yang diatur dalam file .screenrc saya.

Zxaos
sumber
0

Tambahkan '~ / .screenrc' Anda:

attrcolor b ".I"
termcapinfo xterm 'Co # 256: AB = \ E [48; 5;% dm: AF = \ E [38; 5;% dm'
defbce "on"
drybjed
sumber
Nggak. Variabel TERM masih diatur ke 'layar' bahkan ketika memulai layar dengan yang ada di
.screenrc