2012-10-16 11 views
20

Sto cercando di ottenere 256 colori nella fantastica console ConEmu-Maximus5.Impossibile abilitare 256 colori in ConEmu

Aggiornamento: Ora mostra solo 8 colori. Lo so perché l'uscita '$ tput colori' è '8'

Ho seguito il instructions ed attivato:

  • TrueMod (colore a 24-bit) Supporto
  • Inject ConEmuHk
  • ANSI x3. 64/xterm 256 colori

Non capisco cosa fare con 'verificare se il buffer/diapositiva. '

  • Sono in Windows 7.
  • comincio ConEmu con un collegamento diretto personalizzato, in modo che i carichi di file bash Cygwin.
 
"C:\Program Files\ConEmu\ConEmu64.exe" /cmd ""C:\cygwin\bin\bash.exe" --login -i" 
  • Nel mio profilo bashrc devo -> export TERM = Cygwin
  • Questo è il mio prompt dei comandi personalizzati:
 
    function prompt { 

    local RED="\[\033[0;31m\]" 
    local GREEN="\[\033[0;32m\]" 
    local COOLRED="\e[38;5;173m" 
    local COOLGREEN="\e[38;5;113m" 
    PS1="$COOLRED\[email protected]\h $LIGHT_COOLGREEN\$PWD \[\e[0m\] > " 

    } 

    prompt 
  • Il valore di ConEmuANSI in ON , a proposito.

devo alcune schermate:

enter image description here

Come si può vedere il prompt dei comandi sembra molto stravagante, perché non ama le impostazioni di colore 256. Se sostituisco le variabili COOLRED e COOLGREEN con RED e GREEN, allora sembra ok, ma non è 256 colori.

ulteriori screenshot per le impostazioni:

enter image description here enter image description here

e l'ultimo sceen sparato è mintty di Cygwin. Tutto è ok lì. Pieno 256 colori supportati. È una vergogna che non ha linguette. Questo è principalmente il motivo per cui sto cercando di passare a ConEmu.

enter image description here

La ringrazio molto per l'aiuto !!!

+0

spiegare al nocciolo;) Che lima dovrei creare in bash per ridefinire pronta? – Maximus

+0

Crea semplicemente un file chiamato .bashrc nella tua home directory – RafaelGP

+0

Strano. ".bashrc" non funziona, ma ".profile" sì. – Maximus

risposta

12

Bash non invia sequenze ANSI alla console. Cerca di elaborarli da soli. Inoltre, poiché il terminale * nix è generalmente solo a 8 colori (non tenendo conto della modalità a 256 colori), bash utilizza la tavolozza a 8 colori anziché la tavolozza a 16 colori, che è comune al terminale Windows.

Penso che 256 colori siano funzionanti in quanto _isatty restituisce zero in quel terminale. Ma restituisce un valore diverso da zero sotto ConEmu. Potrebbe essere nelle build future Risolvi questo puzzle (come creare un vero terminale con funzionalità PTY per alcune applicazioni).

Per quanto riguarda la domanda

non avete bisogno in 256-colori in effetti. Per ridefinire la tavolozza dei prompt è possibile utilizzare la funzione "Estendi colori in primo piano con sfondo". In breaf - configura i colori 16, 17, ecc. In ConEmu, imposta lo sfondo rapido in bash al # 5 (configurabile in ConEmu) e voilà.

C'è stato un piccolo errore nell'elaborazione di "Emissione ..." di ConEmu. Utilizzare la build 121016 o successiva.

PS1="\e[30;45m\[email protected]\h \e[34;45m$PWD \[\e[0m\] > " 

ConEmu and real console window

ConEmu settings

seguenti informazioni non corrisponde alla domanda, ma può essere utile

versione attuale non supporta la modalità a 256 colori in buffer della console 'tutto' (limitazione, sì, rimuovendolo nei piani).

Quindi, si può andare 2 modi

  • totalmente disabilita scorrimento all'indietro del buffer (molti modi, ad esempio "cmd -cur_console: h0")
  • lavoro nella parte inferiore della scroll-tampone.
+0

Grazie per il tuo duro lavoro.È vero, non ho davvero bisogno di 256 colori. Ho solo bisogno di circa 16 belle cose, e posso farlo nella sezione colori. Saluti! – RafaelGP

+0

Alcune spiegazioni aggiunte. – Maximus

+6

@Maximus Sarei felice di vedere 256 colori in ConEmu - Voglio essere in grado di vedere full capacitly di LS_COLORS per esempio – antitoxic

-1
local COOLRED="\e[38;5;173m" 

local COOLGREEN="\e[38;5;113m" 

Quelle \e s sono probabilmente da un es. C printf stringa. Non li vuoi in uno script di shell. Attenersi alla notazione originale \033. Inoltre ti manca la chiusura \].Queste righe dovrebbero ora leggere

local COOLRED="\[\033[38;5;173m\]" 

local COOLGREEN="\[\033[38;5;113m\]" 
+2

Grazie per la risposta. Ho provato le tue variabili, ma ancora senza fortuna. Ho provato a rimuovere la mia richiesta colore personalizzata, nel caso in cui, e quando stampo AnsiColors256.ans sembra che solo può visualizzare 8 colori. – RafaelGP

+0

'\ e' è in genere analogo al carattere di escape e ** sono effettivamente ** richiesti. Non hanno niente a che vedere con 'printf'. – Qix

1

Non ho potuto ottenere il supporto a 256 colori per funzionare (i colori si sarebbero mostrati, ma sembravano uguali a quelli della tavolozza a 16 colori). Sono passato alla combinazione di colori "xterm" e ora funziona con eseguibili nativi di Windows (come Python) ma non in qualsiasi cosa che usi Cygwin. Cygwin sembra avere un'elaborazione della sequenza di fuga del terminale che non è possibile disattivare, che sconfigge l'iniezione ConEmuHk.

This is documented on the ConEmu wiki, here.

Problemi correlati