Qual è il punto dei colori ANSI personalizzati in Preferenze Terminale?

2

Nelle preferenze dell'App Terminal, puoi impostare colori ANSI personalizzati per blu, verde, giallo, rosso brillante, ecc. ma in realtà non cambiano nulla in Shell. Ad esempio, utilizzando ls -G vengono ancora visualizzati i colori ANSI predefiniti. So che puoi personalizzare il testo, il cursore e i colori di sfondo, ma quale effetto cambia i colori ANSI? Ho provato a modificare LSCOLORS in bash_profile ma non ha funzionato.

Come posso fare in modo che i colori ANSI nella shell corrispondano ai colori personalizzati impostati nelle preferenze di Terminale.

    
posta Char 01.07.2018 - 17:30
fonte

1 risposta

2

Per comprendere l'effetto che ha cambiato questi colori, devi capire come funzionano i colori ANSI.

Nei primi giorni dei codici di escape ANSI per la colorazione, la specifica consentiva ai programmatori (o ad altri utenti) di scrivere codici per scegliere tra 8 colori (nero, rosso, verde, giallo, blu, magenta, ciano e bianco). Come una sorta di defacto, i produttori di terminali standard hanno anche permesso di scegliere versioni Brither degli stessi colori (cioè nero brillante, rosso brillante, ecc.).

Il colore effettivo di "rosso" o "verde" non è standardizzato e varia a seconda del software del terminale. Questi sono i colori che Apple ti consente di ridefinire. Cioè se vuoi che il tuo "rosso" sia più o meno rosso (o qualcos'altro interamente), ti lascerà.

In seguito è stato fatto del lavoro per espandere questi codici di escape per consentire una gamma di colori più ampia. Nella versione standard ISO di questi codici di escape è possibile per il programmatore selezionare qualsiasi colore RGB a 24 bit immettendo un codice di escape che specifica la quantità di rosso, verde e blu che va nel colore specifico desiderato.

Ciò significa che se si esegue un programma nel Terminale che utilizza la vecchia serie di codici di escape che fanno riferimento ai "nomi" di colore (cioè rosso, verde, ciano), è possibile modificare ciò che questi riferimenti cromatici significano nelle preferenze.

Tuttavia, per i programmi che utilizzano i codici di escape più recenti che fanno riferimento a codici colore specifici (ad esempio rgb (123,74,101)) il programmatore ha già chiesto esplicitamente un colore specifico e non è possibile modificarlo come utente dalle preferenze di Terminale.

    
risposta data 05.07.2018 - 20:06
fonte

Leggi altre domande sui tag