mirror of
https://github.com/foomo/posh.git
synced 2025-10-16 12:45:38 +00:00
fix: env list
This commit is contained in:
parent
e6ac04284d
commit
f2fece8fe3
@ -107,8 +107,23 @@ func (c *Env) list(ctx context.Context, r *readline.Readline) error {
|
|||||||
data := pterm.TableData{{"Name", "Value"}}
|
data := pterm.TableData{{"Name", "Value"}}
|
||||||
values := os.Environ()
|
values := os.Environ()
|
||||||
sort.Strings(values)
|
sort.Strings(values)
|
||||||
|
var pairs [][]string
|
||||||
for _, s := range values {
|
for _, s := range values {
|
||||||
data = append(data, strings.SplitN(s, "=", 2))
|
pairs = append(pairs, strings.SplitN(s, "=", 2))
|
||||||
}
|
}
|
||||||
return pterm.DefaultTable.WithHasHeader(true).WithData(data).Render()
|
var maxKeyLen int
|
||||||
|
for _, pair := range pairs {
|
||||||
|
maxKeyLen = max(maxKeyLen, len(pair[0]))
|
||||||
|
}
|
||||||
|
maxValueLen := pterm.GetTerminalWidth() - maxKeyLen - 5
|
||||||
|
for i, pair := range pairs {
|
||||||
|
var value string
|
||||||
|
for len(pair[1]) > maxValueLen {
|
||||||
|
value += pair[1][:maxValueLen] + "\n"
|
||||||
|
pair[1] = pair[1][maxValueLen:]
|
||||||
|
}
|
||||||
|
pairs[i][1] = value + pair[1]
|
||||||
|
}
|
||||||
|
data = append(data, pairs...)
|
||||||
|
return pterm.DefaultTable.WithHasHeader(true).WithHeaderRowSeparator("-").WithData(data).Render()
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user