From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jonas Bernoulli Newsgroups: gmane.emacs.bugs Subject: bug#41276: [PATCH v2 8/8] * lisp/epa.el (epa-show-key): New command. Date: Tue, 7 Jul 2020 17:47:39 +0200 Message-ID: <20200707154739.1829-9-jonas@bernoul.li> References: <20200707154739.1829-1-jonas@bernoul.li> <20200707154739.1829-2-jonas@bernoul.li> <20200707154739.1829-3-jonas@bernoul.li> <20200707154739.1829-4-jonas@bernoul.li> <20200707154739.1829-5-jonas@bernoul.li> <20200707154739.1829-6-jonas@bernoul.li> <20200707154739.1829-7-jonas@bernoul.li> <20200707154739.1829-8-jonas@bernoul.li> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="13007"; mail-complaints-to="usenet@ciao.gmane.io" To: 41276@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Jul 07 17:53:08 2020 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1jspu8-0003Is-B4 for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 07 Jul 2020 17:53:08 +0200 Original-Received: from localhost ([::1]:38394 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jspu7-0001T3-7W for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 07 Jul 2020 11:53:07 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:53628) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jsppF-0006nb-Bs for bug-gnu-emacs@gnu.org; Tue, 07 Jul 2020 11:48:05 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:53248) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1jsppF-0002lj-2f for bug-gnu-emacs@gnu.org; Tue, 07 Jul 2020 11:48:05 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1jsppF-0000az-1o for bug-gnu-emacs@gnu.org; Tue, 07 Jul 2020 11:48:05 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jonas Bernoulli Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 07 Jul 2020 15:48:05 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 41276 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 41276-submit@debbugs.gnu.org id=B41276.15941368722214 (code B ref 41276); Tue, 07 Jul 2020 15:48:05 +0000 Original-Received: (at 41276) by debbugs.gnu.org; 7 Jul 2020 15:47:52 +0000 Original-Received: from localhost ([127.0.0.1]:36553 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jspp2-0000ZY-AP for submit@debbugs.gnu.org; Tue, 07 Jul 2020 11:47:52 -0400 Original-Received: from mail.hostpark.net ([212.243.197.30]:48008) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1jspow-0000Y6-3q for 41276@debbugs.gnu.org; Tue, 07 Jul 2020 11:47:46 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by mail.hostpark.net (Postfix) with ESMTP id 13AFA1664C for <41276@debbugs.gnu.org>; Tue, 7 Jul 2020 17:47:43 +0200 (CEST) X-Virus-Scanned: by Hostpark/NetZone Mailprotection at hostpark.net Original-Received: from mail.hostpark.net ([127.0.0.1]) by localhost (mail0.hostpark.net [127.0.0.1]) (amavisd-new, port 10124) with ESMTP id 3QDESDOCSAI2 for <41276@debbugs.gnu.org>; Tue, 7 Jul 2020 17:47:42 +0200 (CEST) Original-Received: from customer (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.hostpark.net (Postfix) with ESMTPSA id DB15C1665A for <41276@debbugs.gnu.org>; Tue, 7 Jul 2020 17:47:42 +0200 (CEST) X-Mailer: git-send-email 2.26.0 In-Reply-To: <20200707154739.1829-8-jonas@bernoul.li> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:182803 Archived-At: Users can move in `epa-key-list-mode' buffers using either `next-line'/`previous-line' or `widget-forward'/`widget-backward'. When using the first set of commands, then the cursor stays in the current column and that normally is the first column. The key widgets do not begin until the third character of their respective lines. All `epa' commands work regardless of whether the cursor is on the widget or before them. The `epa-show-key' command did not exist until now because the `widget-button-press' already performs its task. But because the widgets don't span complete lines we actually need this command too. --- lisp/epa.el | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/lisp/epa.el b/lisp/epa.el index 8f45c667b9..3c7dd8309a 100644 --- a/lisp/epa.el +++ b/lisp/epa.el @@ -25,7 +25,9 @@ (require 'epg) (require 'font-lock) (require 'widget) -(eval-when-compile (require 'wid-edit)) +(eval-when-compile + (require 'subr-x) + (require 'wid-edit)) (require 'derived) (defgroup epa nil @@ -189,6 +191,7 @@ epa-key-list-mode-map (let ((keymap (make-sparse-keymap)) (menu-map (make-sparse-keymap))) (set-keymap-parent keymap widget-keymap) + (define-key keymap "\C-m" 'epa-show-key) (define-key keymap "m" 'epa-mark-key) (define-key keymap "u" 'epa-unmark-key) (define-key keymap "d" 'epa-decrypt-file) @@ -502,6 +505,14 @@ epa-select-keys (let ((keys (epg-list-keys context names secret))) (epa--select-keys prompt keys))) +(defun epa-show-key () + "Show a key on the current line." + (interactive) + (if-let ((key (get-text-property (point) 'epa-key))) + (save-selected-window + (epa--show-key key)) + (error "No key on this line"))) + (defun epa--show-key (key) (let* ((primary-sub-key (car (epg-key-sub-key-list key))) (entry (assoc (epg-sub-key-id primary-sub-key) -- 2.26.0