diff options
author | Péter Szilágyi <peterke@gmail.com> | 2015-05-05 18:24:15 +0800 |
---|---|---|
committer | Péter Szilágyi <peterke@gmail.com> | 2015-05-05 19:44:39 +0800 |
commit | c750ef09e1571fbdb36d408ff894ed2bbcc80014 (patch) | |
tree | 54fbe761882dd7c6eba364ecd93a2fb32ae68ab5 /cmd | |
parent | ac85fdc75edfaf999a7b2d25c5313c1b3eeb86ad (diff) | |
download | dexon-c750ef09e1571fbdb36d408ff894ed2bbcc80014.tar.gz dexon-c750ef09e1571fbdb36d408ff894ed2bbcc80014.tar.zst dexon-c750ef09e1571fbdb36d408ff894ed2bbcc80014.zip |
cmd/geth: fix #853 colorize console output in windows
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/geth/main.go | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/cmd/geth/main.go b/cmd/geth/main.go index 0f5ebf5be..e00b139c0 100644 --- a/cmd/geth/main.go +++ b/cmd/geth/main.go @@ -23,14 +23,14 @@ package main import ( "bufio" "fmt" + "io" "io/ioutil" "os" + "path" "runtime" "strconv" "time" - "path" - "github.com/codegangsta/cli" "github.com/ethereum/ethash" "github.com/ethereum/go-ethereum/accounts" @@ -41,6 +41,8 @@ import ( "github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/eth" "github.com/ethereum/go-ethereum/logger" + "github.com/mattn/go-colorable" + "github.com/mattn/go-isatty" "github.com/peterh/liner" ) import _ "net/http/pprof" @@ -301,6 +303,14 @@ func run(ctx *cli.Context) { } func console(ctx *cli.Context) { + // Wrap the standard output with a colorified stream (windows) + if isatty.IsTerminal(os.Stdout.Fd()) { + if pr, pw, err := os.Pipe(); err == nil { + go io.Copy(colorable.NewColorableStdout(), pr) + os.Stdout = pw + } + } + cfg := utils.MakeEthConfig(ClientIdentifier, nodeNameVersion, ctx) ethereum, err := eth.New(cfg) if err != nil { |