"refactor(common): 重构序列化工具包,将serialize重命名为utils并添加bitset组件"
This commit is contained in:
43
common/utils/log/term/env.go
Normal file
43
common/utils/log/term/env.go
Normal file
@@ -0,0 +1,43 @@
|
||||
// Copyright 2013 Apcera Inc. All rights reserved.
|
||||
|
||||
package term
|
||||
|
||||
import (
|
||||
"os"
|
||||
"strconv"
|
||||
)
|
||||
|
||||
// GetEnvWindowSize returns the window Size, as determined by process
|
||||
// environment; if either LINES or COLUMNS is present, and whichever is
|
||||
// present is also numeric, the Size will be non-nil. If Size is nil,
|
||||
// there's insufficient data in environ. If one entry is 0, that means
|
||||
// that the environment does not include that data. If a value is
|
||||
// negative, we treat that as an error.
|
||||
func GetEnvWindowSize() *Size {
|
||||
lines := os.Getenv("LINES")
|
||||
columns := os.Getenv("COLUMNS")
|
||||
if lines == "" && columns == "" {
|
||||
return nil
|
||||
}
|
||||
|
||||
nLines := 0
|
||||
nColumns := 0
|
||||
var err error
|
||||
if lines != "" {
|
||||
nLines, err = strconv.Atoi(lines)
|
||||
if err != nil || nLines < 0 {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
if columns != "" {
|
||||
nColumns, err = strconv.Atoi(columns)
|
||||
if err != nil || nColumns < 0 {
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
return &Size{
|
||||
Lines: nLines,
|
||||
Columns: nColumns,
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user