From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: master 431f8ff1e38: * lisp/imenu.el: Support more values for imenu-flatten (bug#70846) Date: Sat, 18 May 2024 11:12:06 -0400 Message-ID: References: <171558357066.26019.9766615061719600757@vcs2.savannah.gnu.org> <20240513065931.0D83AC12C31@vcs2.savannah.gnu.org> <86v83hwxjs.fsf@mail.linkov.net> <86ikzhq6ja.fsf@mail.linkov.net> <86o798x5hz.fsf@gnu.org> <86bk572e6a.fsf@mail.linkov.net> <861q62pb8y.fsf@mail.linkov.net> <864jayjd8u.fsf@gnu.org> <86le49ymsl.fsf@mail.linkov.net> <86msoo4cf3.fsf@mail.linkov.net> Mime-Version: 1.0 Content-Type: text/markdown; charset=UTF-8 Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="37180"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Cc: Eli Zaretskii , me@eshelyaron.com, emacs-devel@gnu.org To: Juri Linkov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat May 18 17:13:00 2024 Return-path: Envelope-to: ged-emacs-devel@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 1s8Lk3-0009SZ-Ux for ged-emacs-devel@m.gmane-mx.org; Sat, 18 May 2024 17:13:00 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1s8LjN-000787-Lw; Sat, 18 May 2024 11:12:17 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s8LjM-00077u-If for emacs-devel@gnu.org; Sat, 18 May 2024 11:12:16 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s8LjI-0002Xw-2z; Sat, 18 May 2024 11:12:16 -0400 Original-Received: from pmg3.iro.umontreal.ca (localhost [127.0.0.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id 093E94419B0; Sat, 18 May 2024 11:12:09 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1716045127; bh=igs0n1V+IS13K/0DfRIFmBYXk1WTeDl4uYPJNhukV+w=; h=From:To:Cc:Subject:In-Reply-To:References:Date:From; b=W6hKOePhDFiArgBrI4TY5JeYzFhpsCi2Vi2OwlwB4imLRfHFj0qHfVviKehDdEwNt f4Ox6+zveFpmJAdvRsEasI36Getn+f+VA24PlHXFsoZoLMiN42q/IcVG2CF15dg/GQ Wk+Me6UPUNMNEqYnqPl+icUHOJyk9kVeblqIIpx4MGazcADg9ANsAo7xOwYNMoc6LW omZJzZgZBGS8jQKq+gyObUUDbomQuU6VO+fcMk1nlUOa9wHa5tpgnMft6P8bbBToTC a4DUqG7h71zbJVOt+PEIEpsPI6srqvnChqinjFWrINpStTeNmvp3ZAmVfnArTPSXmP 1KYil1NFGgZhw== Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg3.iro.umontreal.ca (Proxmox) with ESMTP id AB5304400EB; Sat, 18 May 2024 11:12:07 -0400 (EDT) Original-Received: from pastel (unknown [45.72.201.215]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 7684912049C; Sat, 18 May 2024 11:12:07 -0400 (EDT) In-Reply-To: <86msoo4cf3.fsf@mail.linkov.net> (Juri Linkov's message of "Fri, 17 May 2024 19:43:12 +0300") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-Spam_score_int: -42 X-Spam_score: -4.3 X-Spam_bar: ---- X-Spam_report: (-4.3 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:319347 Archived-At: > because when `completing-read-default` calls `read-from-minibuffer`, > it uses the value of `minibuffer-allow-text-properties` from > the original buffer: > > val = read_minibuf (keymap, initial_contents, prompt, > !NILP (read), > histvar, histpos, default_value, > minibuffer_allow_text_properties, > !NILP (inherit_input_method)); Damn! This is too bad: a buffer-local setting of `minibuffer_allow_text_properties` can basically never be used then, because it's read from the wrong buffer. > Then `read_minibuf` uses its argument `allow_props`: > > if (allow_props) > val = Fminibuffer_contents (); > else > val = Fminibuffer_contents_no_properties (); > > Maybe it could use `minibuffer-allow-text-properties` directly here? Indeed: since a buffer-local setting can't work, we know that all callers must use a plain let-binding so the binding will be active during the whole minibuffer session, so we may as well read it at the end (in the minibuffer) rather than at the beginning (in the `minibuffer--original-buffer`). Stefan PS: Git shows that `minibuffer-allow-text-properties` was introduced eons ago (and basically never touched since then, even the docstring is mostly unchanged). And Grep shows it's not used very often (and several of those uses are around `completing-read`). Funnily enough, one of the few uses in our tree binds it to nil, I wonder why that was needed.