From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: =?utf-8?Q?John_Ankarstr=C3=B6m?= Newsgroups: gmane.emacs.devel Subject: Mention early-init.el in icon-map-list docstring? Date: Mon, 06 Dec 2021 18:21:24 +0100 Message-ID: <877dch8x9n.fsf@ankarstrom.se> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="10299"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (berkeley-unix) To: emacs-devel@gnu.org Cancel-Lock: sha1:mUD/AeMuI/T1KqhPxMKTDDKN9uU= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Mon Dec 06 18:35:59 2021 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 1muHuA-0002MQ-8W for ged-emacs-devel@m.gmane-mx.org; Mon, 06 Dec 2021 18:35:58 +0100 Original-Received: from localhost ([::1]:53642 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1muHu8-0008F0-DK for ged-emacs-devel@m.gmane-mx.org; Mon, 06 Dec 2021 12:35:56 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:47372) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1muHtW-0006s4-Gv for emacs-devel@gnu.org; Mon, 06 Dec 2021 12:35:18 -0500 Original-Received: from ciao.gmane.io ([116.202.254.214]:36944) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1muHtU-0004h6-7B for emacs-devel@gnu.org; Mon, 06 Dec 2021 12:35:18 -0500 Original-Received: from list by ciao.gmane.io with local (Exim 4.92) (envelope-from ) id 1muHtG-0000ue-AN for emacs-devel@gnu.org; Mon, 06 Dec 2021 18:35:02 +0100 X-Injected-Via-Gmane: http://gmane.org/ Received-SPF: pass client-ip=116.202.254.214; envelope-from=ged-emacs-devel@m.gmane-mx.org; helo=ciao.gmane.io X-Spam_score_int: -16 X-Spam_score: -1.7 X-Spam_bar: - X-Spam_report: (-1.7 / 5.0 requ) BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.249, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no 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" Xref: news.gmane.io gmane.emacs.devel:281138 Archived-At: I just spent some time debugging why (setq icon-map-list nil) didn't affect some icons. It turns out that icon-map-list needs to be set in early-init.el. (See below for a detailed description.) Ideally, I would like the Customize interface to be able to set certain variables in early-init.el, but at a minimum I think that this should be mentioned in icon-map-list's docstring. *** icon-map-list controls whether Emacs should use its own icons or "stock" (e.g., GTK) icons for its tool bars. Quoting the docstring: "If you don’t want stock icons, set the variable to nil." Specifically, all icons that are part of the global tool bar are unaffected by the value of icon-map-list unless it is set in early-init.el. This includes icons such as "undo", "close" etc. Other tool bars that use these icons are also affected. For example, the "undo" and "close" icons in isearch's tool bar are the GTK variants, despite icon-map-list being set to nil, while all icons that are not part of the global tool bar are, correctly, the Emacs variants. I assume that Emacs first (in the function tool-bar-setup) sets up the global tool bar -- caching the icons --, then sees the new value of icon-map-list, which affects all newly loaded icons, but not the cached ones. By setting icon-map-list to nil in early-init.el instead of init.el, it is set before tool-bar-setup is run, resulting in the correct icons being used (and cached).