summaryrefslogtreecommitdiff
path: root/Completion/Base/Completer/_external_pwds
diff options
context:
space:
mode:
authorAxel Beckert <abe@deuxchevaux.org>2016-12-04 04:32:03 +0100
committerAxel Beckert <abe@deuxchevaux.org>2016-12-04 04:32:03 +0100
commit3e439c3863f14c82f70666804c8570a13b3732e6 (patch)
tree07036c43e0f3f9242bb6dd42cd2a849ec8ea8aca /Completion/Base/Completer/_external_pwds
parent2aedc4b88fd0e87b89583983951b04b96f48efd3 (diff)
parent7b7e84f0815ed22a0ee348a217776529035dccf3 (diff)
downloadzsh-3e439c3863f14c82f70666804c8570a13b3732e6.tar.gz
zsh-3e439c3863f14c82f70666804c8570a13b3732e6.zip
Merge tag 'zsh-5.2-test-1' into debian
Diffstat (limited to 'Completion/Base/Completer/_external_pwds')
-rw-r--r--Completion/Base/Completer/_external_pwds8
1 files changed, 6 insertions, 2 deletions
diff --git a/Completion/Base/Completer/_external_pwds b/Completion/Base/Completer/_external_pwds
index 4ad50f02b..dfc1abe16 100644
--- a/Completion/Base/Completer/_external_pwds
+++ b/Completion/Base/Completer/_external_pwds
@@ -22,9 +22,13 @@ case $OSTYPE in
)
;;
linux*)
- dirs=( /proc/${^$(pidof zsh):#$$}/cwd(N:A) )
+ dirs=( /proc/${^$(pidof -- -zsh zsh):#$$}/cwd(N:P) )
dirs=( $^dirs(N^@) )
;;
+ freebsd*)
+ dirs=( $(pgrep -U $UID -x zsh) )
+ dirs=( $(procstat -h -f $dirs|awk '{if ($3 == "cwd") print $NF}') )
+ ;;
*)
if (( $+commands[lsof] )); then
dirs=( ${${${(M)${(f)"$(lsof -a -u $EUID -c zsh -p \^$$ -d cwd -F n -w
@@ -32,7 +36,7 @@ case $OSTYPE in
fi
;;
esac
-dirs=( ${(D)dirs} )
+dirs=( ${(D)dirs:#$PWD} )
compstate[pattern_match]='*'
_wanted directories expl 'current directory from other shell' \