From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Detlev Zundel Newsgroups: gmane.emacs.bugs Subject: bug#18337: 24.4.50; apropos fails on "scroll" Date: Fri, 29 Aug 2014 15:13:15 +0200 Message-ID: References: <8669c0bb-347f-4b61-8202-562182aeba7f@default> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1409318068 19315 80.91.229.3 (29 Aug 2014 13:14:28 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 29 Aug 2014 13:14:28 +0000 (UTC) Cc: Dmitry Antipov , 18337@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Fri Aug 29 15:14:20 2014 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XNM0S-0008Ko-6X for geb-bug-gnu-emacs@m.gmane.org; Fri, 29 Aug 2014 15:14:20 +0200 Original-Received: from localhost ([::1]:41996 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNM0R-0000xt-OK for geb-bug-gnu-emacs@m.gmane.org; Fri, 29 Aug 2014 09:14:19 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:59616) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNM0I-0000oJ-0N for bug-gnu-emacs@gnu.org; Fri, 29 Aug 2014 09:14:17 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XNM0A-00070o-Vd for bug-gnu-emacs@gnu.org; Fri, 29 Aug 2014 09:14:09 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:33401) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XNM0A-00070T-Rv for bug-gnu-emacs@gnu.org; Fri, 29 Aug 2014 09:14:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.80) (envelope-from ) id 1XNM0A-0001sk-8j for bug-gnu-emacs@gnu.org; Fri, 29 Aug 2014 09:14:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Detlev Zundel Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 29 Aug 2014 13:14:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 18337 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: confirmed Original-Received: via spool by 18337-submit@debbugs.gnu.org id=B18337.14093180027173 (code B ref 18337); Fri, 29 Aug 2014 13:14:02 +0000 Original-Received: (at 18337) by debbugs.gnu.org; 29 Aug 2014 13:13:22 +0000 Original-Received: from localhost ([127.0.0.1]:53198 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XNLzV-0001rc-AL for submit@debbugs.gnu.org; Fri, 29 Aug 2014 09:13:21 -0400 Original-Received: from mailout2.hostsharing.net ([83.223.90.233]:60040) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1XNLzS-0001rO-Fs for 18337@debbugs.gnu.org; Fri, 29 Aug 2014 09:13:19 -0400 Original-Received: from h07.hostsharing.net (h07.hostsharing.net [83.223.95.26]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mailout2.hostsharing.net (Postfix) with ESMTPS id 49F378F0892; Fri, 29 Aug 2014 15:13:16 +0200 (CEST) Original-Received: from deepthought (ppp-188-174-140-148.dynamic.mnet-online.de [188.174.140.148]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by h07.hostsharing.net (Postfix) with ESMTPSA id 116DE6131B5E; Fri, 29 Aug 2014 15:13:16 +0200 (CEST) Original-Received: from dzu by deepthought with local (Exim 4.84) (envelope-from ) id 1XNLzP-00042s-Ea; Fri, 29 Aug 2014 15:13:15 +0200 In-Reply-To: (Stefan Monnier's message of "Thu, 28 Aug 2014 09:17:04 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 140.186.70.43 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.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:92804 Archived-At: Hi Stefan, [added Dmitry on CC as the changelog seems to make a connection to the problem at hand] >> (when (setq properties (symbol-plist 'vertical-scroll-bar)) >> (setq doc (list (car properties))) >> (while (setq properties (cdr (cdr properties))) >> (setq doc (cons (car properties) doc))) >> (nreverse doc)) > >> => (0 event-symbol-element-mask event-symbol-elements modifier-cache variable-documentation) > >> Applying 'symbol-name to that list then yields the error. > > Note that, while convention is to use a symbol for property names, that > is not the only valid choice. 0 is a valid property name (tho an odd > one, arguably). I think in this case it actually caught an error though. > So while this 0 should probably be changed the mapconcat code that burps > on it should probably be changed not to assume that only symbols will > be used as property names. Looking deeper, it turns out that the 0 results from this: buffer.c:5473 DEFSYM (Qvertical_scroll_bar, "vertical-scroll-bar"); Fput (Qvertical_scroll_bar, Qchoice, list4 (Qnil, Qt, Qleft, Qright)); DEFSYM (Qhorizontal_scroll_bar, "horizontal-scroll-bar"); DEFSYM (Qfraction, "fraction"); Fput (Qfraction, Qrange, Fcons (make_float (0.0), make_float (1.0))); DEFSYM (Qoverwrite_mode, "overwrite-mode"); Fput (Qoverwrite_mode, Qchoice, list3 (Qnil, intern ("overwrite-mode-textual"), intern ("overwrite-mode-binary"))); As far as I can tell, it should thus really be 'choice. Actually both vertical-scroll-bar and overwrite-mode have the problem: (symbol-plist 'vertical-scroll-bar) => (0 (nil t left right) event-symbol-element-mask (vertical-scroll-bar 0) event-symbol-elements (vertical-scroll-bar) modifier-cache ((0 . vertical-scroll-bar)) variable-documentation 374228) (symbol-plist 'overwrite-mode) => (0 (nil overwrite-mode-textual overwrite-mode-binary) event-symbol-element-mask (overwrite-mode 0) event-symbol-elements (overwrite-mode) modifier-cache ((0 . overwrite-mode)) :minor-mode-function binary-overwrite-mode variable-documentation 370277) The changelog mentions this 2014-07-16 Dmitry Antipov More precise control over values of some buffer-local variables. * keyboard.c (Qvertical_scroll_bar): * frame.c (Qleft, Qright): Move to ... * buffer.c (Qleft, Qright, Qvertical_scroll_bar): ... here. * buffer.c (Qchoice, Qrange, Qoverwrite_mode, Qfraction): New symbols. (syms_of_buffer): DEFSYM all of the above, attach special properties. Use special symbols to DEFVAR_PER_BUFFER overwrite-mode, vertical-scroll-bar, scroll-up-aggressively and scroll-down-aggressively. Dmitry, do you know why the construct for choice fails? Thanks Detlev -- We can forgive a man for making a useful thing as long as he does not admire it. The only excuse for making a useless thing is that one admires it intensely. --- Oscar Wilde