summaryrefslogtreecommitdiff
path: root/indexers/pikdex/index.go
diff options
context:
space:
mode:
Diffstat (limited to 'indexers/pikdex/index.go')
-rw-r--r--indexers/pikdex/index.go15
1 files changed, 14 insertions, 1 deletions
diff --git a/indexers/pikdex/index.go b/indexers/pikdex/index.go
index aec6b00..64b111f 100644
--- a/indexers/pikdex/index.go
+++ b/indexers/pikdex/index.go
@@ -121,7 +121,20 @@ func (u *pikdex) Index(absPath string, f fs.FS, runners []model.Runner) ([]model
if err != nil {
spool.Warn("%v\n", err)
}
- targets = append(targets, t)
+ sub := t.Sub()
+ if strings.Join(sub, " ") == t.ShortestId() {
+ desiredIndex := 0
+ for i := len(targets) - 1; i >= 0; i-- {
+ if slices.Equal(targets[i].Sub(), sub) {
+ desiredIndex = i
+ } else {
+ break
+ }
+ }
+ targets = slices.Insert(targets, desiredIndex, t)
+ } else {
+ targets = append(targets, t)
+ }
return nil
}
if err != nil {