passwurrd now recursively walks directories

This commit is contained in:
Paul Wilde 2022-10-24 10:00:56 +01:00
parent 582bc2795f
commit ce07da510b

View file

@ -4,14 +4,17 @@ import std/[os,osproc,re,strutils]
const pw_store = getHomeDir() & ".password-store/" const pw_store = getHomeDir() & ".password-store/"
var passwords: seq[string] = @[] var passwords: seq[string] = @[]
let gpg_re = re("(" & pw_store & "|\\.gpg)") let gpg_re = re("(" & pw_store & "|\\.gpg)")
proc parseFiles(path: string) =
for file in walkDir(path):
if file.path.endsWith(".gpg"):
let pw = replace(file.path, gpg_re,"")
passwords.add(pw)
elif file.kind == pcDir:
parseFiles(file.path)
proc getPasswords(): seq[string] = proc getPasswords(): seq[string] =
for dir in walkDir(pw_store): parseFiles(pw_store)
if dir.kind == pcFile:
continue
for file in walkDir(dir.path):
if file.path.endsWith(".gpg"):
let pw = replace(file.path,gpg_re,"")
passwords.add(pw)
return passwords return passwords
proc passwordToClipboard(password: string) = proc passwordToClipboard(password: string) =