Baru-baru ini saya bermigrasi dari 10,6 ke 10,8. Saya menggunakan Terminal
untuk terhubung ke berbagai kotak linux di mana variabel TERM diamati xterm-color
. Ini tampaknya konsisten dengan pengaturan 10.6 dari TERM.
Namun, sejak memutakhirkan, saya mengalami masalah dengan Terminal
sesi saya jika / ketika saya mengubah ukurannya ke sesuatu yang lebih luas dari 80x24. Garis teks yang biasanya sangat panjang tampaknya membungkus 80 kolom sampai saya mengubah ukuran lagi, pada titik yang ditampilkan dengan benar. Artinya, itu seperti lebar terjebak pada ukuran terakhir (membungkus segala sesuatu dengan lebar sebelumnya) sampai mengubah ukuran dilakukan setelah menampilkan sesuatu mengharapkan lebar yang lebih besar.
Jenis ini terasa seperti entri kutukan [n] untuk yang xterm-color
diubah (tidak) atau yang terminal
tidak benar-benar meniru xterm-color
perangkat. Perilaku ini berbeda (mungkin lebih baik - saya masih mengevaluasi) jika menentukan yang jelas xterm
.
Apakah ada pengaturan yang lebih baik untuk TERM saat menggunakan Mountain Lion's Terminal
?
sumber
Jawaban:
Seperti halnya banyak emulator terminal, Terminal mengemulasi sebagian besar VT100 plus beberapa fitur dari terminal yang lebih baru, dan beberapa ekstensi umum dari xterm dan emulator lainnya.
Tidak ada file terminfo yang persis terkait dengan Terminal, tetapi pertandingan terdekat dulu
xterm-color
, yang mewakili cabang xterm yang lebih tua. Namun, dalam versi terbaru, Terminal lebih sepenuhnya kompatibel dengan xterm danxterm-256color
merupakan nilai default baru untukTERM
variabel lingkungan.Dalam Preferensi> Pengaturan> [profil]> Tingkat Lanjut> Emulasi ada menu pop-up Deklarasikan terminal sebagai: yang menetapkan nilai
TERM
(dan hanya itu yang dilakukan — itu tidak mengubah fitur yang didukung Terminal). Jika Anda menggunakan Mac yang telah Anda tingkatkan dari versi OS yang lebih lama, Anda mungkin ingin / perlu memperbarui pengaturan agar sesuai dengan standar baru yang disarankan jika masih diatur kexterm-color
. Penggunaanxterm-color
tidak direkomendasikan dan dimungkinkan untuk menimbulkan masalah karena tidak cocok dengan set fitur Terminal saat ini.Terlepas dari kenyataan bahwa instalasi ncurses harus menyertakan semua file terminfo, beberapa distro Linux tidak, dan khususnya beberapa di antaranya menghilangkan
xterm-256color
. Jika demikian, Anda akan melihat program mengeluh dengan berbagai cara tentang tidak dapat menemukannya, dan solusinya adalah menginstal seluruh rangkaian file terminfo, atau setidaknya semua yang xterm.Jika
xterm-256color
tidak tersedia, hal terbaik berikutnya adalahxterm-16color
, diikuti olehxterm
. Ketiga ini kompatibel dan mewakili versi xterm saat ini dengan berkurangnya jumlah warna yang didukung (xterm
hanya menyatakan delapan warna dasar ANSI, meskipun banyak program mengabaikannya dan menganggap bahwa enam belas didukung, tetapixterm-16color
adalah yang harus dipilih jika Anda ingin secara eksplisit menyatakan dukungan untuk enam belas warna).Sulit untuk mengatakan dengan tepat apa yang menyebabkan masalah yang Anda lihat, tetapi hal pertama yang harus dicoba adalah menjalankan
infocmp
perintah pada host jarak jauh untuk melihat apa yang dikatakannya. Itu akan memberi tahu Anda istilah apa yang diharapkan dan apakah itu ditemukan.Jika ini adalah masalah umum ncurses atau terminfo, kemungkinan akan terjadi dengan program lain, seperti vim. Anda mungkin mencoba menjalankan vim atau kurang, misalnya, untuk membandingkan perilaku. Jika Anda merasa termotivasi, Anda dapat menjalankan vttest http://invisible-island.net/vttest/ pada host jarak jauh dan memeriksa bahwa Terminal merespons dengan tepat tes untuk menggambar atribut teks, mengubah ukuran tampilan, dan beralih ke / dari layar alternatif.
Saat Anda mengubah ukuran jendela terminal, program terminal memberi tahu perangkat tty, yang mengirimkan
SIGWINCH
sinyal ke proses yang terhubung dengannya. Program bertanggung jawab untuk merespons sinyal dengan tepat. Satu hal untuk diuji adalah apakah variabelLINES
danCOLUMNS
diperbarui dalam bash ketika Anda mengubah ukuran jendela terminal. Jika itu berfungsi, maka mekanisme sinyal berperilaku dengan benar.Kemungkinan lain adalah bahwa program tidak beralih ke / dari layar alternatif dengan benar (yang dapat disebabkan oleh pemilihan istilah yang tidak kompatibel). Anda dapat memeriksa item menu Lihat> Sembunyikan / Tampilkan Layar Alternatif untuk melihat layar mana yang sedang aktif. Jika itu menunjukkan layar yang salah, Anda dapat mencoba beralih secara manual dengan item menu dan melihat apakah itu menyelesaikan masalah.
sumber