Você precisa da versão GHCI > = 7.6.1 para a opção -interactive-print
.
Reddit: boa produção no GHCi (HOWTO nos comentários)
I was prettying up my GHCi and found a new flag in GHC 7.6 (-interactive-print)
Milestone: 7.6.1
Usando esse método para obter cores bonitas do GHCI , não estou conseguindo cores qualquer. No entanto, meu terminal é um urxvt com 256 cores ativadas e TERM é xterm-256color
. Alguma idéia do que eu poderia ter perdido?
Meu ~ / .ghci lê:
import qualified IPPrint
import qualified Language.Haskell.HsColour as HsColour
import qualified Language.Haskell.HsColour.Colourise as HsColour
import qualified Language.Haskell.HsColour.Output as HsColour
let myColourPrefs = HsColour.defaultColourPrefs { HsColour.conid = [HsColour.Foreground HsColour.Yellow, HsColour.Bold], HsColour.conop = [HsColour.Foreground HsColour.Yellow], HsColour.string = [HsColour.Foreground HsColour.Green], HsColour.char = [HsColour.Foreground HsColour.Cyan], HsColour.number = [HsColour.Foreground HsColour.Red, HsColour.Bold], HsColour.layout = [HsColour.Foreground HsColour.White], HsColour.keyglyph = [HsColour.Foreground HsColour.White] }
let myPrint = putStrLn . HsColour.hscolour (HsColour.TTYg HsColour.XTerm256Compatible) myColourPrefs False False "" False . IPPrint.pshow
:set -interactive-print=myPrint
:set -XNoMonomorphismRestriction
:set prompt "λ "
O prompt deve ficar assim:
Você precisa da versão GHCI > = 7.6.1 para a opção -interactive-print
.
Reddit: boa produção no GHCi (HOWTO nos comentários)
I was prettying up my GHCi and found a new flag in GHC 7.6 (-interactive-print)
Milestone: 7.6.1
Você precisa colocar :set -XNoMonomorphismRestriction
antes de let myPrint = ...
, testado usando o GHCi 7.6.3.
Alternativamente, sem -XNoMonomorphismRestriction:
let myPrint :: (Show a) => a -> IO (); myPrint = putStrLn . HsColour.hscolour (HsColour.TTYg HsColour.XTerm256Compatible) myColourPrefs False False "" False . IPPrint.pshow
Full .ghci (ligeira modificação da solução no post original do Reddit): link