summaryrefslogtreecommitdiff
path: root/lisp/erc/erc-dcc.el
diff options
context:
space:
mode:
authorF. Jason Park <jp@neverwas.me>2022-11-04 05:01:35 -0700
committerF. Jason Park <jp@neverwas.me>2022-11-04 19:32:23 -0700
commitae0642f8595e5bc5b521bbfa73ae114bf25a418d (patch)
tree8a6b0427774853d0af7e4aa7ab3bda2f224cba18 /lisp/erc/erc-dcc.el
parent0606b095d2411f43a7e842707bcec006e9952a60 (diff)
downloademacs-ae0642f8595e5bc5b521bbfa73ae114bf25a418d.tar.gz
Offer completions for GET subcommand flags in erc-dcc
* lisp/erc/erc-dcc.el (pcomplete/erc-mode/DCC): Add /DCC GET switches. This is unfinished business from bug#54458. * test/lisp/erc/erc-dcc-tests.el (erc-dcc-tests--pcomplete-common, pcomplete/erc-mode/DCC--get-basic, pcomplete/erc-mode/DCC--get-1flag, pcomplete/erc-mode/DCC--get-2flags, pcomplete/erc-mode/DCC--get-2flags-reverse): Add helper and tests for completing /DCC GET switches.
Diffstat (limited to 'lisp/erc/erc-dcc.el')
-rw-r--r--lisp/erc/erc-dcc.el7
1 files changed, 5 insertions, 2 deletions
diff --git a/lisp/erc/erc-dcc.el b/lisp/erc/erc-dcc.el
index 90a10766c4c..ebeab921fb9 100644
--- a/lisp/erc/erc-dcc.el
+++ b/lisp/erc/erc-dcc.el
@@ -411,8 +411,11 @@ where FOO is one of CLOSE, GET, SEND, LIST, CHAT, etc."
"Provide completion for the /DCC command."
(pcomplete-here (append '("chat" "close" "get" "list")
(when (fboundp 'make-network-process) '("send"))))
+ (when (equal "get" (downcase (pcomplete-arg 1)))
+ (pcomplete-opt "ts")
+ (pcomplete-opt (if (equal "-s" (pcomplete-arg 'first 2)) "t" "s")))
(pcomplete-here
- (pcase (intern (downcase (pcomplete-arg 1)))
+ (pcase (intern (downcase (pcomplete-arg 'first 1)))
('chat (mapcar (lambda (elt) (plist-get elt :nick))
(cl-remove-if-not
(lambda (elt)
@@ -428,7 +431,7 @@ where FOO is one of CLOSE, GET, SEND, LIST, CHAT, etc."
erc-dcc-list)))
('send (pcomplete-erc-all-nicks))))
(pcomplete-here
- (pcase (intern (downcase (pcomplete-arg 2)))
+ (pcase (intern (downcase (pcomplete-arg 'first 1)))
('get (mapcar (lambda (elt) (plist-get elt :file))
(cl-remove-if-not
(lambda (elt)