From 4e73cdc4c376ad61d2e4858bc87cf01eab0dd403 Mon Sep 17 00:00:00 2001 From: Johannes Altmanninger Date: Tue, 18 May 2021 22:59:25 +0200 Subject: fish-completion: don't print full path when PASSWORD_STORE_DIR is set "__fish_pass_print" enumerates all files in the password store and uses sed to strip their common prefix - the password store directory. If $PASSWORD_STORE_DIR had a trailing slash, sed would fail to remove the prefix. Fix this by canonicalizing $PASSWORD_STORE_DIR. --- src/completion/pass.fish-completion | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/completion/pass.fish-completion b/src/completion/pass.fish-completion index 3e70af1..38a4865 100644 --- a/src/completion/pass.fish-completion +++ b/src/completion/pass.fish-completion @@ -6,11 +6,11 @@ set -l PROG 'pass' function __fish_pass_get_prefix - set -l prefix "$PASSWORD_STORE_DIR" - if [ -z "$prefix" ] - set prefix "$HOME/.password-store" + if set -q PASSWORD_STORE_DIR + realpath -- "$PASSWORD_STORE_DIR" + else + echo "$HOME/.password-store" end - echo "$prefix" end function __fish_pass_needs_command -- cgit v1.2.3