On Mon, May 14, 2007 at 11:31:29PM +0400, Alexander Myodov wrote:
> Currently -r and -R completions list only detached sessions, and -x
> completion lists only attached sessions. In fact, when any of these arguments
> used together with -D or -d command (in the format either "-D -r" or "-Dr"),
> they should complete any available sessions, no matter are they detached or
> attached.
> This means that any combination of "-[Dd][Rrx]" or "-[Dd] -[Rrx]" should
> complete into the list of any available sessions.
> I include the trivial patch to handle the "-[Dd][Rrx]" part (the file to
> change is /usr/share/zsh/4.3.2/functions/Completion/Unix/_screen); if anyone
> can provide the similar completion for "-[Dd] -[Rrx]", it would be good.
>
>
> --- _screen.old 2007-05-14 22:25:16.000000000 +0400
> +++ _screen.new 2007-05-14 22:51:36.000000000 +0400
> @@ -75,7 +75,11 @@
> '-p[preselect the named window]:window number or name:((\=\:windowlist
> -\:blank\ window \:window\ number))' \
> '-q[quiet startup, exit with non-zero return code if unsuccessful]' \
> '-r[reattach to a detached screen process]: :->detached-sessions' \
> + '-Dr: :->any-sessions' \
> + '-dr: :->any-sessions' \
> '-R[reattach if possible, otherwise start a new session]:
> :->detached-sessions' \
> + '-DR: :->any-sessions' \
> + '-dR: :->any-sessions' \
> '-s[shell to execute rather than $SHELL]:shell name: _command_names -e' \
> '-S[name this session <pid>.sockname instead of
> <pid>.<tty>.<host>]:session name' \
> "-t[set title (window's name)]:title" \
> @@ -84,6 +88,8 @@
> '(-)-v[print screen version]' \
> '(-)-wipe[do nothing, clean up SockDir]' \
> '-x[attach to a not detached screen (multi display mode)]:
> :->attached-sessions' \
> + '-Dx: :->any-sessions' \
> + '-dx: :->any-sessions' \
> '-X[execute command as a screen command in the specified
> session]:screencmd:([EMAIL PROTECTED])' \
> '*::arguments: _normal'
>
> @@ -101,6 +107,11 @@
> -ls)"}:#*[Dd]etached*}##[[:blank:]]}%%[[:blank:]]*}
> )
> ;;
> + any-sessions)
> + sessions=(
> + ${${${(M)${(f)"$(_call_program screen-sessions $words[1] \
> + -ls)"}:#*tached*}##[[:blank:]]}%%[[:blank:]]*}
> + )
> esac
>
> # check if initial PID is necessary to make sessions unambiguous
This option agglutination makes me uncomfortable, but -s isn't on for
_arguments, and -dmS is already in there, so I'll commit this.
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]