From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23891 invoked by alias); 26 May 2018 15:16:47 -0000 Mailing-List: contact zsh-workers-help@zsh.org; run by ezmlm Precedence: bulk X-No-Archive: yes List-Id: Zsh Workers List List-Post: List-Help: List-Unsubscribe: X-Seq: 42854 Received: (qmail 6919 invoked by uid 1010); 26 May 2018 15:16:47 -0000 X-Qmail-Scanner-Diagnostics: from mail-wr0-f178.google.com by f.primenet.com.au (envelope-from , uid 7791) with qmail-scanner-2.11 (clamdscan: 0.99.2/21882. spamassassin: 3.4.1. Clear:RC:0(209.85.128.178):SA:0(-3.7/5.0):. Processed in 0.52897 secs); 26 May 2018 15:16:47 -0000 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on f.primenet.com.au X-Spam-Level: X-Spam-Status: No, score=-3.7 required=5.0 tests=BAYES_00,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_PASS,T_DKIM_INVALID autolearn=ham autolearn_force=no version=3.4.1 X-Envelope-From: doron.behar@gmail.com X-Qmail-Scanner-Mime-Attachments: | X-Qmail-Scanner-Zip-Files: | DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references; bh=AMFBq7ZZ9rVWGhxJ63qjq5Te894brlDDGHESXcw/Afc=; b=Xm78iXS5fBOEDMUmvELb6CZ8+WLMt248eq6eSp/l58XYDMVoyfg0YtcbPdtlRnBkJw obWSoIhndKfGSzoPLVR5yZQ17QaUDIhFwwvBwbih5jXtdG7eqk2zEcJYqc+IWM9RBIqp U8KKomNDGiEvjls0dSnS9NXh7vHm/qPAIW+nfDlUI2lVUGBo3ImZlez3PwO3UTRooii5 9cNNYc6FeMH1Hak2Def6gcG0CVIc5OC3deJsO/N8kBhSDmOVrMcmLGpcAADxXTJl5Nqe QZh6KtqL6d/TCMnihox7HdR8hyeq7Ba7OMvUuu3F0mPKRhs9RPBgMD+fAXam5KHf8zLJ dv0A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=AMFBq7ZZ9rVWGhxJ63qjq5Te894brlDDGHESXcw/Afc=; b=ISe8YUt0aPOUjZzp1hTKVA52TIra38vXwkvc4w/XloZP0Enf8JXoYnBt4y+vlZolPS XBZbFc/BKEiL3gIrRtaGC6LwgzzYl6Jbm5T2OgSLtVI1trVBuywdF0PKNna/8FO2JMTb czg/MNwIVvCPgZKoqqND1M331q9vRSxEwp1yyNEppy9M23H7VKu+5vNydrKGkyX0Onsq Tg5laNlT/DIHm1MYKA1xvAw4dFMvbQTa7KYLq0RI0I8MT0eaau+CIibKO37CfmLb4l4Y LYyf8QCQ2wo6sj0C6YD8ce9CEtmQ9J6AFx1Y4fancoNMcfnEJ2fKUZC2Db7kkHjFXbCf JWmw== X-Gm-Message-State: ALKqPwfKeaQwnEnFTdBwJNZ5JeSkwmhkR5QhlrE8jQ1WoarDxVOESTQo I8w/j/uVdmPZIC3ryPJhB0ONfPKa X-Google-Smtp-Source: AB8JxZp93bxT2aBnYdG7Npcx1aM44mLQYrpuwhX/WZNW65X+vB2KY8OSM/sk55BoOZMAzqwIEV9ufw== X-Received: by 2002:adf:e0c7:: with SMTP id e7-v6mr5177979wri.70.1527347802702; Sat, 26 May 2018 08:16:42 -0700 (PDT) From: doron.behar@gmail.com To: zsh-workers@zsh.org Subject: [PATCH 1/1] _gpg: Use explicit UIDs for state = public keys. Date: Sat, 26 May 2018 18:16:28 +0300 Message-Id: <20180526151628.17983-2-doron.behar@gmail.com> X-Mailer: git-send-email 2.17.0 In-Reply-To: <20180526151628.17983-1-doron.behar@gmail.com> References: <20180526151628.17983-1-doron.behar@gmail.com> From: Doron Behar Use the `--with-colons` option and parse the output while IFS=":" according to the output format. --- Completion/Unix/Command/_gpg | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/Completion/Unix/Command/_gpg b/Completion/Unix/Command/_gpg index 48a36eff2..71fa7667d 100644 --- a/Completion/Unix/Command/_gpg +++ b/Completion/Unix/Command/_gpg @@ -206,8 +206,19 @@ fi case "$state" in public-keys) - _wanted public-keys expl 'public key' \ - compadd ${${(Mo)$(_call_program public-keys $words[1] $needed --list-public-keys --list-options no-show-photos):%<*>}//(<|>)/} && return + OLDIFS="${IFS}" + IFS=":" + public_keys=($($words[1] $needed --list-public-keys --list-options no-show-photos --with-colons)) + for i in {1..${#public_keys[@]}}; do + if [[ ${public_keys[$i]} =~ "fpr" ]] && [[ ${public_keys[$((i + 19))]} =~ "@" ]] ; then + # +9 is the uid + # +19 is the description + uids_and_emails+=(${public_keys[$((i + 9))]}":"${public_keys[$((i + 19))]}) + i=$((i+20)) + fi + done + _describe uids uids_and_emails + IFS="${OLDIFS}" ;; secret-keys) _wanted secret-keys expl 'secret key' compadd \ -- 2.17.0