dotfiles/nushell/config/pass.nu

39 lines
785 B
Plaintext

# pass aliases / completion
def _pass_completion [] {
_ls ~/.password-store/**/* | each { |x|
if $x.type == "file" {
$x.name
| path parse
| update extension ""
| get parent stem
| str join "/"
} else {
$x.name + "/"
}
| split row '/'
| skip 4
| str join "/"
}
| prepend git
| prepend insert
}
export extern "pass" [ host?: string@_pass_completion ]
# pass shortcut
def p [ ...arg: string@_pass_completion ] {
for a in $arg {
pass $a
}
}
# pass with copy
def pc [ arg: string@_pass_completion ] { pass --clip $arg }
# open pdf encrypted file
def ppdf [p: string] {
pc thomas/key/pdf
pueue add evince $p
}