Saya merevisi jawaban saya sekarang karena saya yakin akan banyak hal.
Adalah keliru untuk menyimpulkan bahwa urutan ANSI sedang ditangani melalui BIOS atau selain dari kernel; memang, mereka ditangani di kernel. Saya menemukan apa yang saya lewatkan sebelumnya berkat hnaz_ pada kanal IRC LinuxNewbies: drivers/char/vt.c
mengimplementasikan emulasi terminal Digital Equipment VT102 yang digunakan oleh driver terminal virtual.
Jadi ... sebagai jawaban yang pasti, setelah meninjau kode sumber yang menangani urutan pelarian untuk terminal virtual: Jika Anda menginginkan 256 warna dukungan pada terminal virtual, Anda harus membangun kernel Anda sendiri setelah memperluas kode yang mem-parsing urutan pelarian untuk menangani spesifikasi warna yang lebih luas.
Fungsi ini disebut csi_m (). Perubahan harus serupa dengan yang memperpanjang emulator terminal berbasis-X untuk menangani urutan pelepasan yang menentukan kode warna yang lebih kaya. Mungkin akan ada perubahan lain yang diperlukan juga, tetapi di sinilah Anda akan mulai.
kmscon
adalah terminal pengguna yang mencoba untuk meningkatkan terminal (termasuk warna 24-bit). Meskipun perkembangannya telah stagnan mendukung alternatif sistemd.256 warna RXVT / xterm / URXVT / etc Anda ditentukan oleh terminfo dan pengaturan
TERM
variabel. Di sebagian besar distribusi Linux, terminal virtual Anda didefinisikan/etc/inittab
, dan menggunakan tipe terminal default yang menentukan berapa banyak warna yang dapat digunakan terminal.Iya nih.
Pastikan framebuffer Anda menggunakan resolusi / kedalaman bit yang benar. Coba tambahkan
vga=773
ke opsi kernel, misalnya, untuk mendapatkan 1024x768 dan 256 warna (kedalaman warna 8-bit).Tetapkan JANGKA berbeda (misalnya,
export TERM=foo
). Anda harus bereksperimen untuk menemukan yang tepat. Jika Anda menemukan satu yang berfungsi, Anda dapat memodifikasi/etc/inittab
terminal virtual Anda sehingga menjalankannya secara default (lihat bagian selanjutnya).Artikel ini membahas opsi lain yang mungkin cocok untuk Anda. Ini merekomendasikan Qingy (Qingy bukan GettY) sebagai pengganti getty, dan dapat memberi Anda apa yang Anda cari jika beralih variabel TERM bukan pilihan.
Berbicara tentang penggantian getty, saya bersumpah saya telah melihat instruksi untuk mengganti getty dengan
GNU screen
suatu tempat di sepanjang jalan. Saya tidak menemukan tautan saat ini, tetapi karena ada JANGKA 256 warna untukscreen
, Anda mungkin memeriksanya./etc/inittab
menggunakan baris seperti ini untuk mengatur terminal virtual:Ini manualnya
/sbin/getty
(dari sistem Debian saya, jadi iniagetty
programnya secara teknis ):Perhatikan di
baud_rate,... port [term]
sana di akhir. Itu cocok dengan perintah di/etc/inittab
baris (/sbin/getty 38400 ttyN
) - perhatikan tidak ada[term]
argumen, jadi kami mendapatkan default (berjalanecho $TERM
tepat setelah Anda masuk pada konsol virtual untuk melihat apa yang digunakan sistem Anda). Dari halaman manual lagi:Jika Anda menemukan TERM yang berfungsi, ubah baris getty di inittab Anda dan tambahkan TERM yang tepat di akhir:
sumber
Lihatlah fbterm - ini adalah framebuffer pengganti yang dapat berjalan dalam mode 256-warna (Anda hanya menjalankannya sebagai root dari TTY)
Saya sangat sukses dengan itu - beberapa aplikasi berfungsi dengan baik, dan melaporkan 256 warna; namun Emacs (alasan utama saya ingin 256 warna pada TTY) sepertinya tidak berfungsi; ada sedikit diskusi tentang hal ini di sini, tetapi tidak benar-benar terselesaikan:
http://lists.gnu.org/archive/html/emacs-devel/2011-08/msg00989.html
Namun, mplayer harus bekerja!
sumber
emacs
dalamtmux
dapat membantu karena harus menerjemahkan urutan pelarian untuk terminal di sekitarnya.kmscon
kmscon adalah cara untuk memberi Anda 256 warna dan video tanpa memasang sistem windows (X, Wayland).
Itu ditinggalkan tetapi saat ini dikelola melalui garpu .
Dokumentasi tentang instalasi ramping, tetapi halaman README di sini seharusnya membantu Anda.
Saya telah menginstal ini dan menggunakannya untuk aplikasi konsol yang membutuhkan 256 warna (karena konfigurasi saya).
Baca instruksi instalasi dengan hati-hati.
sumber
Urutan melarikan diri ANSI untuk mengatur warna latar depan dan latar belakang teks adalah apa yang membatasi hal-hal di sini.
Dari memori urutan ini terlihat seperti melarikan diri [01; 34m Ada kode di 30 untuk latar depan dan saya pikir 40 di latar belakang.
Jadi saya tidak berpikir ada cara untuk mencapai apa yang Anda cari.
sumber