From 33ca442a875e7df58a6f016322cc94211b1d565b Mon Sep 17 00:00:00 2001 From: celogeek <65178+celogeek@users.noreply.github.com> Date: Wed, 29 Dec 2021 11:11:54 +0100 Subject: [PATCH] tree view for listing images --- internal/piwigocli/images_list.go | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/internal/piwigocli/images_list.go b/internal/piwigocli/images_list.go index 867e88b..9242e94 100644 --- a/internal/piwigocli/images_list.go +++ b/internal/piwigocli/images_list.go @@ -131,22 +131,25 @@ func (c *ImagesListCommand) Execute(args []string) error { treeLinkChar := "│ " treeMidChar := "├── " treeEndChar := "└── " + treeAfterEndChar := " " treeView = func(t *Tree, prefix string) { - if prefix == "" { - fmt.Println(t.Name) - } else { - fmt.Println(prefix + treeMidChar + t.Name) - } for i, st := range t.Children { - if i < len(t.Children)-1 { + switch i { + case len(t.Children) - 1: + fmt.Println(prefix + treeEndChar + st.Name) + treeView(st, prefix+treeAfterEndChar) + case 0: + fmt.Println(prefix + treeMidChar + st.Name) + treeView(st, prefix+treeLinkChar) + default: + fmt.Println(prefix + treeMidChar + st.Name) treeView(st, prefix+treeLinkChar) - } else { - treeView(st, prefix+treeEndChar) } } } + fmt.Println(treeMap[""].Name) treeView(treeMap[""], "") return nil