summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common.go18
1 files changed, 17 insertions, 1 deletions
diff --git a/common.go b/common.go
index fafc11a..fd2edf8 100644
--- a/common.go
+++ b/common.go
@@ -25,7 +25,23 @@ func (r *RepoList) Hide() {
}
// better name: use this
-func (r *RepoList) FindRepoByName(path string) *RepoRow {
+// matches by path or by name
+func (r *RepoList) FindByName(name string) *RepoRow {
+ loop := r.ReposSortByName()
+ for loop.Scan() {
+ repo := loop.Repo()
+ if repo.GoPath() == name {
+ return repo
+ }
+ base := filepath.Base(repo.GoPath())
+ if base == name {
+ return repo
+ }
+ }
+ return nil
+}
+
+func (r *RepoList) FindByPath(path string) *RepoRow {
return r.FindRepo(path)
}