123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- package main
- import (
- "fmt"
- "git.swzry.com/zry/ztermtab"
- )
- func main() {
- test1()
- }
- func test1() {
- // 两列,第二列自由宽度的示例
- ttp := ztermtab.NewTerminalTablePrinter(80, " | ")
- // 参数说明:
- // title: 标题
- // minWidth: 最小宽度。对于自由列,该参数无效。
- // maxWidth: 最大宽度。请提前规划好各列最大宽度,应确保所有列最大宽度的和加上所有分隔符宽度小于终端宽度。
- // 对于自由列,该参数无效。另:若表格有自由列,则需要确保所有列的最大宽度的和加上所有分隔符宽
- // 度,再加上自由列的最小宽度仍然小于终端宽度。
- // truncateOverflow: 截断超长串。若为true,超出maxWidth的字符串会被截断;若为false,
- // 则超出maxWidth的字符串会换行。
- ttp.AddColumn("command", 10, 20, false)
- ttp.AddColumn("description", 0, 0, false)
- // 设置第二列为自由列,索引从0开始
- ttp.SetAutoWidthColumn(1)
- // 在开始添加第一行数据以后,AddColumn和SetAutoWidthColumen不再起作用。
- ttp.AddRow([]string{
- "aaa",
- "设置3A (Authentication & Authorization & Accounting)认证相关的选项",
- })
- ttp.AddRow([]string{
- "dhcp",
- "DHCP Settings",
- })
- ttp.AddRow([]string{
- "emoji😀",
- "😂😂😂😂😂😂💻🖥🖨⌨🖱🖲💾💿📼📹📡📽🎬👩👨🧑👧👦🧒👶☝👇👈👉💪💪💪🤘🖐✋👌👍👎✊",
- })
- lines := ttp.RenderToTerminalLines()
- printLines(lines)
- }
- func printLines(lines []string) {
- for _, v := range lines {
- fmt.Println(v)
- }
- }
|