Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: Bug#423897: zsh: better completion for screen
- X-seq: zsh-workers 23439
- From: Clint Adams <schizo@xxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxx
- Subject: Re: Bug#423897: zsh: better completion for screen
- Date: Mon, 14 May 2007 15:44:29 -0400
- Cc: Alexander Myodov <maa_public@xxxxxxx>, 423897@xxxxxxxxxxxxxxx
- In-reply-to: <20070514193129.27357.92367.reportbug@xxxxxxxxxxxxxxx>
- Mail-followup-to: zsh-workers@xxxxxxxxxx, Alexander Myodov <maa_public@xxxxxxx>, 423897@xxxxxxxxxxxxxxx
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
- References: <20070514193129.27357.92367.reportbug@xxxxxxxxxxxxxxx>
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:(${scr_cmds[@]})' \
> '*::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.
Messages sorted by:
Reverse Date,
Date,
Thread,
Author