From 81d1ce1dde89ed9c0d9eccc59d2eec9b0d709e31 Mon Sep 17 00:00:00 2001 From: bel Date: Fri, 4 Apr 2025 21:57:49 -0600 Subject: [PATCH] hmm i want an autosuggest pattern list --- main.go | 2 ++ main_test.go | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/main.go b/main.go index 9e64b0d..c77b6b4 100644 --- a/main.go +++ b/main.go @@ -8,6 +8,7 @@ import ( "os/signal" "path" "regexp" + "strings" "syscall" ) @@ -58,6 +59,7 @@ func one(ctx context.Context, outd, inf string, patterns []string, overrides map if found["title"] == "" || found["season"] == "" || found["episode"] == "" { continue } + found["title"] = strings.Join(strings.Fields(found["title"]), "_") if err := mvNLn(ctx, outd, inf, found["title"], found["season"], found["episode"]); err != nil { return err diff --git a/main_test.go b/main_test.go index 68df089..e2909d9 100644 --- a/main_test.go +++ b/main_test.go @@ -42,6 +42,12 @@ func TestRun(t *testing.T) { "[SubsPlease] Tokidoki Bosotto Russia-go de Dereru Tonari no Alya-san - 01 (720p) [A12844D5].mkv", "[SubsPlease] Tokidoki Bosotto Russia-go de Dereru Tonari no Alya-san - 02 (720p) [2608F490].mkv", }, + patterns: []string{ + `^\[[^\]]*\] (?P.*) - (?<episode>[0-9]*)`, + }, + overrides: map[string]string{ + "season": "01", + }, want: []string{ "Tokidoki_Bosotto_Russia-go_de_Dereru_Tonari_no_Alya-san_S01E01.mkv", "Tokidoki_Bosotto_Russia-go_de_Dereru_Tonari_no_Alya-san_S01E02.mkv", @@ -74,6 +80,7 @@ func TestRun(t *testing.T) { t.Error("failed to list outdir: %w", err) } else { for _, entry := range entries { + t.Logf("%s", entry.Name()) if !slices.Contains(c.want, path.Base(entry.Name())) { t.Errorf("unexpected %s", entry.Name()) }