From a28e1cb7a0ad30ba6e26277fe98e51641e8f57c2 Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Sat, 4 Oct 2025 23:59:50 +0100 Subject: [PATCH] Refactor Signed-off-by: Oliver Davies --- internal/cli/edit.go | 4 +++- internal/cli/find.go | 4 +++- internal/cli/links.go | 4 +++- internal/cli/titles.go | 4 +++- internal/cli/view.go | 4 +++- internal/zet/parse.go | 21 --------------------- internal/zet/zet.go | 25 +++++++++++++++++++++++++ 7 files changed, 40 insertions(+), 26 deletions(-) delete mode 100644 internal/zet/parse.go diff --git a/internal/cli/edit.go b/internal/cli/edit.go index 659e336..cb0ad66 100644 --- a/internal/cli/edit.go +++ b/internal/cli/edit.go @@ -52,7 +52,9 @@ zet edit|e latest os.Exit(0) } - zets := zet.ParseZetList(ids) + zetList := zet.CreateZetList(ids) + + zets := zetList.Parse() selected, err := fzf.SelectWithFzf(zets) diff --git a/internal/cli/find.go b/internal/cli/find.go index 842fa9b..23b43b2 100644 --- a/internal/cli/find.go +++ b/internal/cli/find.go @@ -27,7 +27,9 @@ If -j or --json is added, the results will be in JSON format.`, zets := zet.SearchZets(args[0]) - result := zet.ParseZetList(zets) + zetList := zet.CreateZetList(zets) + + result := zetList.Parse() if jsonOutput { json, err := json.AsJSON(result) diff --git a/internal/cli/links.go b/internal/cli/links.go index 4b8a565..9ed57f1 100644 --- a/internal/cli/links.go +++ b/internal/cli/links.go @@ -23,7 +23,9 @@ var linksCmd = &cobra.Command{ zets := zet.SearchZets(args[0]) - lines := zet.ParseZetList(zets) + zetList := zet.CreateZetList(zets) + + lines := zetList.Parse() for _, line := range lines { line = strings.TrimSpace(line) diff --git a/internal/cli/titles.go b/internal/cli/titles.go index e336566..29348ae 100644 --- a/internal/cli/titles.go +++ b/internal/cli/titles.go @@ -20,7 +20,9 @@ If -j or --json is added, the results will be in JSON format.`, Run: func(cli *cobra.Command, args []string) { zets := zet.GetAllZets() - result := zet.ParseZetList(zets) + zetList := zet.CreateZetList(zets) + + result := zetList.Parse() if jsonOutput { json, err := json.AsJSON(result) diff --git a/internal/cli/view.go b/internal/cli/view.go index e831fdc..0ac406a 100644 --- a/internal/cli/view.go +++ b/internal/cli/view.go @@ -52,7 +52,9 @@ zet view|v latest os.Exit(0) } - zets := zet.ParseZetList(ids) + zetList := zet.CreateZetList(ids) + + zets := zetList.Parse() selected, err := fzf.SelectWithFzf(zets) diff --git a/internal/zet/parse.go b/internal/zet/parse.go deleted file mode 100644 index e69211f..0000000 --- a/internal/zet/parse.go +++ /dev/null @@ -1,21 +0,0 @@ -package zet - -import ( - "fmt" - "strconv" -) - -func ParseZetList(ids []int) []string { - var lines []string - - green := "\033[32m" - reset := "\033[0m" - - for _, num := range ids { - line := fmt.Sprintf("%s%s%s %s", green, strconv.Itoa(num), reset, getTitle(num)) - - lines = append(lines, line) - } - - return lines -} diff --git a/internal/zet/zet.go b/internal/zet/zet.go index 0775244..a7e8a9e 100644 --- a/internal/zet/zet.go +++ b/internal/zet/zet.go @@ -12,6 +12,31 @@ import ( "code.oliverdavies.uk/opdavies/cmd-zet/internal/git" ) +type ZetList struct { + Ids []int +} + +func CreateZetList(ids []int) *ZetList { + return &ZetList{ + Ids: ids, + } +} + +func (z *ZetList) Parse() []string { + var lines []string + + green := "\033[32m" + reset := "\033[0m" + + for _, num := range z.Ids { + line := fmt.Sprintf("%s%s%s %s", green, strconv.Itoa(num), reset, getTitle(num)) + + lines = append(lines, line) + } + + return lines +} + func getTitle(id int) string { return getTitleFromFile(path.Join(strconv.Itoa(id), "index.adoc")) }