diff options
author | Tanaka Akira <akr@users.sourceforge.net> | 1999-10-26 15:36:10 +0000 |
---|---|---|
committer | Tanaka Akira <akr@users.sourceforge.net> | 1999-10-26 15:36:10 +0000 |
commit | e0b26186f1d3c1a3a580eb7e8a8199c25536f4e6 (patch) | |
tree | e4247c2507fa1a135740a3cd02e7405cbdbfa69a /Completion/Base/_job | |
parent | 56f338eb8bfd4bcdbf14b495ff8a34425c3527d4 (diff) | |
download | zsh-e0b26186f1d3c1a3a580eb7e8a8199c25536f4e6.tar.gz zsh-e0b26186f1d3c1a3a580eb7e8a8199c25536f4e6.tar.xz zsh-e0b26186f1d3c1a3a580eb7e8a8199c25536f4e6.zip |
manual/8424
Diffstat (limited to 'Completion/Base/_job')
-rw-r--r-- | Completion/Base/_job | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/Completion/Base/_job b/Completion/Base/_job new file mode 100644 index 000000000..081956c51 --- /dev/null +++ b/Completion/Base/_job @@ -0,0 +1,26 @@ +#autoload + +local expl disp jobs job jids + +if [[ "$1" = -r ]]; then + jids=( "${(@k)jobstates[(R)running*]}" ) + shift + _description expl 'running job' +elif [[ "$1" = -s ]]; then + jids=( "${(@k)jobstates[(R)running*]}" ) + shift + _description expl 'suspended job' +else + [[ "$1" = - ]] && shift + jids=( "${(@k)jobtexts}" ) + _description expl job +fi + +disp=() +jobs=() +for job in "$jids[@]"; do + disp=( "$disp[@]" "[${(l:2:: :)job}] ${jobtexts[$job]}" ) + jobs=( "$jobs[@]" "$job" ) +done + +compadd "$@" "$expl[@]" -ld disp - "$jobs[@]" |