colori vs b/n nell'output a console
Luca Giuzzi
giuzzi a dmf.bs.unicatt.it
Ven 22 Set 2000 14:23:46 UTC
Distinguiamo fra le due cose...
un tty significa "TeleType" ed e' il nome standard per
un terminale (testo) connesso ad un sistema unix.
Il terminale puo' essere una apparecchiatura separata
(tipo i vari VT100/120/300 di DEC) oppure "virtuale"...
Esempi di terminali "virtuali" sono offerti dagli xterms,
dalle connessioni esterne tramite telnet/rlogin/ssh, dalle
sessioni sotto screen(1) e dalle "virtual consoles".
Cosa e' una console allora?
Una console e' un terminale privilegiato connesso direttamente
alla macchina e su cui vengono riportati messaggi importanti di
sistema. Su certe piattaforme la console consente di effettuare
il reboot del sistema in modo indipendente o di accedere ad
un debugger. La cosa importante e' che la console puo' essere su
uno dei terminali "virtuali" accessibili con Alt+Fn, ma
puo' anche non esserlo. Ad esempio, in fase di debugging di un
nuovo kernel e' bene che la console sia in realta' un
/dev/ttySn [i.e. reindirizzata su un dispositivo seriale]...
giusto per essere in grado di vedere dove si e' bloccato il
sistema nel caso la scheda video locale non venga propriamente
inizializzata.
Concordo che il termine "virtual consoles" confonde un poco le
idee. Bisogna aggiungere che sotto il kernel 2.0 la console era
sempre assegnata alla "virtual console corrente"
(/dev/tty = c 5 0)...
sotto 2.2, esiste un device particolare (/dev/console= c 5 1),
donde la distinzione.
Ciao,
lg
P.S.
Riguardo i codici di escape... ANSI e' uno standard, lo so
e buona parte dei terminali attualmente a disposizione riescono
ad interpretare i codici di escape per i colori. Purtroppo non
tutti ce la fanno (e in particolare il telnet standard sotto un
certo sistema chiamato "finestre" non lo fa)... in piu' ci sono
delle sottili e non-cosi'-sottili differenze fra
xterm/kterm/nxterm/eterm/gnome-terminal... e spesso la gente
desidera riciclare i vecchi terminali (non standard) che ha
a disposizione. In breve: ti consiglio di passare attraverso una
libreria tipo ncurses o slang. Sicuramente questo ti richiedera'
un po' piu' di tempo che non il solo inviare i codici di
formattazione, ma sicuramente ne vale la pena sul lungo periodo
(anche come esperienza di programmazione).
Maggiori informazioni sulla lista
Lug
|