Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
PATCH: rdesktop completion
- X-seq: zsh-workers 33486
- From: Oliver Kiddle <okiddle@xxxxxxxxxxx>
- To: Zsh workers <zsh-workers@xxxxxxx>
- Subject: PATCH: rdesktop completion
- Date: Tue, 21 Oct 2014 20:42:20 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.co.uk; s=s1024; t=1413916941; bh=F7OKN5bha0b+qbXd02R9+AALM2zM7sxW6ApyzjKo9Dk=; h=X-Yahoo-Newman-Id:X-Yahoo-Newman-Property:X-YMail-OSG:X-Yahoo-SMTP:Received:From:To:Subject:MIME-Version:Content-Type:Content-ID:Date:Message-ID; b=cvoLtFfAVXdS+gZkuQwPU9OImqt0ce2avF0D3v6n6vMfaGllKmLTWSx+Eg8rnti4+tdqUDLss23+zevzTj9u7iH7LG4OwvmrM3SyKM+dvpJltvHgMyu1N3BX4Okn5Zl5In1GMPOJSCA6tn5z6Y+0CvJ7deHH0aRkc+wB53yoz80=
- List-help: <mailto:zsh-workers-help@zsh.org>
- List-id: Zsh Workers List <zsh-workers.zsh.org>
- List-post: <mailto:zsh-workers@zsh.org>
- Mailing-list: contact zsh-workers-help@xxxxxxx; run by ezmlm
New completion function.
Oliver
diff --git a/Completion/X/Command/_rdesktop b/Completion/X/Command/_rdesktop
new file mode 100644
index 0000000..0bd08d9
--- /dev/null
+++ b/Completion/X/Command/_rdesktop
@@ -0,0 +1,71 @@
+#compdef rdesktop
+
+local curcontext="$curcontext" state line expl redir ret=1
+typeset -A opt_args
+
+_arguments -C -s \
+ '-u[username]:username:_users' \
+ '-d[domain]:domain' \
+ '-s[shell]:startup shell' \
+ '-c[working directory]:directory:_directories' \
+ '-p[password]:password' \
+ '-n[hostname]:host:_hosts' \
+ '-k[keyboard map]:keyboard map' \
+ '(-f)-g[geometry]:geometry (WxH)' \
+ '(-g)-f[fullscreen mode]' \
+ '-b[force server to use bitmaps for screen updates]' \
+ '-B[use X server backing store]' \
+ '-E[disable encryption]' \
+ "-m[don't send mouse motion events]" \
+ '-C[use private colormap]' \
+ '-D[hide window decorations]' \
+ '-K[do not override window manager key bindings]' \
+ '-S[single application mode]' \
+ '-T[set window title]:title' \
+ '-N[enable numlock synchronisation]' \
+ '-X[embed in another window]:window:_x_window' \
+ '-a[colour depth]:depth:(8 15 16 24)' \
+ '-z[enable compression]' \
+ '-x[bandwidth performance behaviour]:experience:((b\:broadband l\:lan m\:modem))' \
+ '-P[enable bitmap caching]' \
+ '*-r[device redirection]: :->redirection' \
+ '-0[attach to server console]' \
+ '(-5)-4[use RDP version 4]' \
+ '(-4)-5[use RDP version 5]' \
+ ':server:->hostsport' && ret=0
+
+case $state in
+ hostsport)
+ if compset -P '*:'; then
+ _ports && ret=0
+ else
+ compset -S ':*'
+ _hosts && ret=0
+ fi
+ ;;
+ redirection)
+ redir="${PREFIX%%:*}"
+ if compset -P '*='; then
+ curcontext="${curcontext%:*}:$redir"
+ compset -P '*='
+ case $redir in
+ comport|lptport) _wanted devices expl device _files -g '*(-%)' && ret=0 ;;
+ disk) _directories && ret=0 ;;
+ printer) _printers && ret=0 ;;
+ scard) _message -e aliases 'alias name' ;;
+ esac
+ else
+ compset -S '=*'
+ _values -S : 'redirection' \
+ 'comport:port' \
+ 'disk:sharename' \
+ 'lptport:lptport' \
+ 'printer:printername:_printers -S=' \
+ 'sound:sound:(local off remote)' \
+ 'lspci' \
+ 'scard:sound card name' && ret=0
+ fi
+ ;;
+esac
+
+return ret
Messages sorted by:
Reverse Date,
Date,
Thread,
Author