From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Boruch Baum Newsgroups: gmane.emacs.bugs Subject: bug#48063: 28.0.50: apropos-value{, -internal}: suppress false positives Date: Tue, 27 Apr 2021 11:17:27 -0400 Message-ID: <20210427151727.5x4vzmveyh6ogfv4@E15-2016.optimum.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="ryaccqtf5tyggrz2" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23120"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: NeoMutt/20180716 To: 48063@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Tue Apr 27 17:19:50 2021 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 1lbPV7-0005uK-Pv for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 27 Apr 2021 17:19:49 +0200 Original-Received: from localhost ([::1]:45286 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lbPV6-0005jn-RP for geb-bug-gnu-emacs@m.gmane-mx.org; Tue, 27 Apr 2021 11:19:48 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59014) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lbPTO-0003of-NX for bug-gnu-emacs@gnu.org; Tue, 27 Apr 2021 11:18:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:39027) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lbPTO-0005KI-Em for bug-gnu-emacs@gnu.org; Tue, 27 Apr 2021 11:18:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lbPTO-0005Rg-8c for bug-gnu-emacs@gnu.org; Tue, 27 Apr 2021 11:18:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Boruch Baum Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 27 Apr 2021 15:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 48063 X-GNU-PR-Package: emacs X-Debbugs-Original-To: Emacs Bug Reporting Original-Received: via spool by submit@debbugs.gnu.org id=B.161953666420887 (code B ref -1); Tue, 27 Apr 2021 15:18:02 +0000 Original-Received: (at submit) by debbugs.gnu.org; 27 Apr 2021 15:17:44 +0000 Original-Received: from localhost ([127.0.0.1]:50570 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lbPT5-0005Qo-Ie for submit@debbugs.gnu.org; Tue, 27 Apr 2021 11:17:43 -0400 Original-Received: from lists.gnu.org ([209.51.188.17]:41718) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lbPT3-0005Qg-C5 for submit@debbugs.gnu.org; Tue, 27 Apr 2021 11:17:42 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:58918) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lbPT3-0003VT-4k for bug-gnu-emacs@gnu.org; Tue, 27 Apr 2021 11:17:41 -0400 Original-Received: from mout.gmx.net ([212.227.17.22]:55429) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lbPSw-0005CC-Mj for bug-gnu-emacs@gnu.org; Tue, 27 Apr 2021 11:17:40 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1619536650; bh=9yFA2HuazkzbGF40Bu+d/vIkYkfu+NJP/7KF+dJUPDY=; h=X-UI-Sender-Class:Date:From:To:Subject; b=RTFoJMDSoHKyM8KVh/oxGW0Im4v9LgmXIYO5uahuDkRIo/qcxE6USYRJvzJH6wM+I TGN9cUrdjZC4VW7qMS9EuRP2Wj3Wll7LrFW64ptV7EOpEMjwsZdrsJHtFqQi1t2tEn 9nRutusW6tplD1z8YKDxdNbXldzTvqyn46QpsXcU= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from E15-2016.optimum.net ([70.19.86.82]) by mail.gmx.net (mrgmx105 [212.227.17.174]) with ESMTPSA (Nemesis) id 1N0Fxf-1lQMQw45ix-00xMyP for ; Tue, 27 Apr 2021 17:17:30 +0200 Content-Disposition: inline X-Provags-ID: V03:K1:eEg72DKO2IMnvTqGBPv1p1N5GYI6iANO3nwq5kE3OwDJnycZB7T LP+ouwEYie7Xo9EbSd2w4D0MttPET5mXOVlwsl6Onj0JA33U8spN9QvkVOpTmTspJh6ADzO dv35aC2/BeP7ksXVSKUx7pwjJp6cNCYqt2hxRS2YOJxJ50hFj3va5CLtNz0j6pjbM5JKfZI 7/UfoPzv90Rq7L7DHb0TA== X-UI-Out-Filterresults: notjunk:1;V03:K0:qAFdxROVX/Y=:4vTdd4yQfYOiF9sQE3ZKT+ 7e32GAh6uUKfXwDP3En7gAYlMp7R4kHEfcO7uRi/6l3zXqcd1MKPlTUEsDkNF4BzeJOxwUKn3 ewOJRplKTKe3jpuBZ7hXNR/ucWdntBkfXzNZLuLRQk0tVIfX3kVFzOcIsZNo+Wd6v4PdIr0rc 4FZo1BbTjygYCvlQe2K4w0C9CnQfosogbsmOyBrNOyLfx4UNExHt9doogQk73u94vKfJQdpdn +W6NHtw2CeWBFfs92oO2Dq7ov14qCNJHJBSJzNiKUkVy+Pyv51gLdTfWE8WwH6hSFXZIu1rMY 2XMZtW490XFjnqQycwVCfuexgPnl8xvMnRJClMjYmw1JuRXcUzVRv2OAzmciSN/P8SAp8ns3N T1e9ltXFaCYWg+BSxcq9dYLeA2ODVjrGQLGOuhEvi3M46KZT3ZdISro+Ojqj4YYXYk92OGW2L WdFWJzdXpdS0MjInT+I3WTaH5WyfKzWLFc9K2TrhRIajjRWHGKRxcxUGB4TyM6bi4WVDUhmx7 B7KAwlpYk9YH81ZxWKzVm2sSFKajcKOZucfRLMi7bEJI1L0k9Mok5V5IIJpp+PmltcLlfCh7H hHSnv7BLIspoj0a2zPHgmXatw6IIlYcSz80x/LPww1J5sYcsZhgRMwoSMf7HsnCiYkhaCATRh nlOjR5ZGPQhSab/WR31aK6/973uS/TLsVeboQAB2PEJAHNyQhJ2p9o9KpRlpUAwjE8N0kiH2E Tl9hdQnOIPf4dkCbe0RrfrXkv0VR2mV7jTLZYtjEePj+hCPywuWW6kCsrTnraclKybTbo8g5 Received-SPF: pass client-ip=212.227.17.22; envelope-from=boruch_baum@gmx.com; helo=mout.gmx.net X-Spam_score_int: -25 X-Spam_score: -2.6 X-Spam_bar: -- X-Spam_report: (-2.6 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action 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:205024 Archived-At: --ryaccqtf5tyggrz2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Function apropos-value will always return false positive, some of which entail printing out very long variable value strings. The attached patch apropos-value.patch fixes those cases. The second patch just changes what seems to be an indentation bug in the function. The cases of false positives are: + variables reflecting the apropos request itself + (car minibuffer-history) + (car command-history) + variables internal to apropos: + apropos--current + apropos-pattern-quoted + pattern =2D- hkp://keys.gnupg.net CA45 09B5 5351 7C11 A9D1 7286 0036 9E45 1595 8BC0 --ryaccqtf5tyggrz2 Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="apropos-value.patch" Content-Transfer-Encoding: quoted-printable diff --git a/apropos.el b/apropos.el index 6d8c784..44c87ee 100644 =2D-- a/apropos.el +++ b/apropos.el @@ -817,6 +817,7 @@ Returns list of symbols and values found." (lambda (symbol) (setq f nil v nil p nil) (or (memq symbol '(apropos-regexp + apropos--current apropos-pattern-quoted patter= n apropos-pattern apropos-all-words-regexp apropos-words apropos-all-words do-all apropos-accumulator @@ -933,7 +934,10 @@ Returns list of symbols and documentation found." =0C (defun apropos-value-internal (predicate symbol function) (when (funcall predicate symbol) - (setq symbol (prin1-to-string (funcall function symbol))) + (setq symbol (prin1-to-string + (if (memq symbol '(command-history minibuffer-history)) + (cdr (funcall function symbol)) + (funcall function symbol)))) (when (string-match apropos-regexp symbol) (if apropos-match-face (put-text-property (match-beginning 0) (match-end 0) --ryaccqtf5tyggrz2 Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="apropos-value-indent-change.patch" Content-Transfer-Encoding: quoted-printable diff --git a/apropos.el b/apropos.el index 44c87ee..9529271 100644 =2D-- a/apropos.el +++ b/apropos.el @@ -812,35 +812,35 @@ Returns list of symbols and values found." (apropos-parse-pattern pattern t) (or do-all (setq do-all apropos-do-all)) (setq apropos-accumulator ()) - (let (f v p) - (mapatoms - (lambda (symbol) - (setq f nil v nil p nil) - (or (memq symbol '(apropos-regexp - apropos--current apropos-pattern-quoted patter= n - apropos-pattern apropos-all-words-regexp - apropos-words apropos-all-words - do-all apropos-accumulator - symbol f v p)) - (setq v (apropos-value-internal 'boundp symbol 'symbol-value))) - (if do-all - (setq f (apropos-value-internal 'fboundp symbol 'symbol-function) - p (apropos-format-plist symbol "\n " t))) - (if (apropos-false-hit-str v) - (setq v nil)) - (if (apropos-false-hit-str f) - (setq f nil)) - (if (apropos-false-hit-str p) - (setq p nil)) - (if (or f v p) - (setq apropos-accumulator (cons (list symbol - (+ (apropos-score-str f) - (apropos-score-str v) - (apropos-score-str p)) - f v p) - apropos-accumulator)))))) - (let ((apropos-multi-type do-all)) - (apropos-print nil "\n----------------\n"))) + (let (f v p) + (mapatoms + (lambda (symbol) + (setq f nil v nil p nil) + (or (memq symbol '(apropos-regexp + apropos--current apropos-pattern-quoted pattern + apropos-pattern apropos-all-words-regexp + apropos-words apropos-all-words + do-all apropos-accumulator + symbol f v p)) + (setq v (apropos-value-internal 'boundp symbol 'symbol-value))= ) + (if do-all + (setq f (apropos-value-internal 'fboundp symbol 'symbol-functi= on) + p (apropos-format-plist symbol "\n " t))) + (if (apropos-false-hit-str v) + (setq v nil)) + (if (apropos-false-hit-str f) + (setq f nil)) + (if (apropos-false-hit-str p) + (setq p nil)) + (if (or f v p) + (setq apropos-accumulator (cons (list symbol + (+ (apropos-score-str f) + (apropos-score-str v) + (apropos-score-str p)) + f v p) + apropos-accumulator)))))) + (let ((apropos-multi-type do-all)) + (apropos-print nil "\n----------------\n"))) ;;;###autoload (defun apropos-local-value (pattern &optional buffer) --ryaccqtf5tyggrz2--