From 4d84b1b9350e99bf755de22ad00b45a677d5269c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Laurent?= <francois.laurent@posteo.net>
Date: Mon, 3 Jul 2023 15:14:57 +0200
Subject: [PATCH] implements #122

---
 scripts/larvatagger.sh | 8 +++++++-
 src/cli_toolkit.jl     | 6 +++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/scripts/larvatagger.sh b/scripts/larvatagger.sh
index 1156bf2..f392185 100755
--- a/scripts/larvatagger.sh
+++ b/scripts/larvatagger.sh
@@ -204,8 +204,14 @@ eval $DOCKER_RUN
 
 	predict)
 
+if [ "$(basename "$(dirname "$1")")" = "**" ]; then
+parentdir=$(cd "$(dirname "$(dirname "$1")")"; pwd -P)
+data_file=$(basename "$(dirname "$1")")/$(basename "$1")
+else
 parentdir=$(cd "$(dirname "$1")"; pwd -P)
-data_file=$(basename "$1"); shift
+data_file=$(basename "$1")
+fi
+shift
 
 RUN_ARGS="$RUN_ARGS -v \"$parentdir\":/data"
 
diff --git a/src/cli_toolkit.jl b/src/cli_toolkit.jl
index 371d4a4..82a00be 100644
--- a/src/cli_toolkit.jl
+++ b/src/cli_toolkit.jl
@@ -3,7 +3,7 @@ module Toolkit
 using DocOpt
 using Pkg
 using OrderedCollections
-using PlanarLarvae, PlanarLarvae.Datasets, PlanarLarvae.Formats
+using PlanarLarvae, PlanarLarvae.Datasets, PlanarLarvae.Formats, PlanarLarvae.Dataloaders
 
 include("Taggers.jl")
 using .Taggers
@@ -191,10 +191,14 @@ function main(args=ARGS; exit_on_error=true)
             if endswith(datapath, ".txt")
                 # assume that the file lists paths to data files to be processed;
                 # in this case, the path to the txt file is not relevant
+                @info "The listed data file paths are expected to be relative to current directory" cwd=pwd()
                 pwd()
             else
                 dirname(datapath)
             end
+        elseif occursin("*", datapath)
+            repository = Dataloaders.Repository(datapath)
+            repository.root
         else
             datapath
         end
-- 
GitLab