From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: "Themes" shipping configuration - an unusual convention Date: Thu, 30 Apr 2020 08:21:37 -0400 Message-ID: References: <863691n4xl.wl-me@enzu.ru> <87imhw431x.fsf@yahoo.com> <87mu78huhx.fsf_-_@yahoo.com> <87k12bdgx7.fsf@yahoo.com> <83zhb6grtq.fsf@gnu.org> <83ftcwgb07.fsf@gnu.org> <291bb5b2-92d5-85f1-57d8-895eed14ffc2@yandex.ru> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="53607"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Eli Zaretskii , Emacs developers , =?windows-1252?Q?S=E9bastien?= Gendre , Dmitry Gutov To: Stefan Kangas Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Apr 30 14:28:58 2020 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 1jU8JG-000DqZ-Dm for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Apr 2020 14:28:58 +0200 Original-Received: from localhost ([::1]:59124 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jU8JF-0004FB-9O for ged-emacs-devel@m.gmane-mx.org; Thu, 30 Apr 2020 08:28:57 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:38078) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jU8Hl-0001yS-VN for emacs-devel@gnu.org; Thu, 30 Apr 2020 08:27:42 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.90_1) (envelope-from ) id 1jU8H7-0001Qg-KI for emacs-devel@gnu.org; Thu, 30 Apr 2020 08:27:25 -0400 Original-Received: from mailscanner.iro.umontreal.ca ([132.204.25.50]:16155) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jU8CH-00043n-6b; Thu, 30 Apr 2020 08:21:45 -0400 Original-Received: from pmg1.iro.umontreal.ca (localhost.localdomain [127.0.0.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id A6C09100997; Thu, 30 Apr 2020 08:21:43 -0400 (EDT) Original-Received: from mail01.iro.umontreal.ca (unknown [172.31.2.1]) by pmg1.iro.umontreal.ca (Proxmox) with ESMTP id D6B5C1007E4; Thu, 30 Apr 2020 08:21:38 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=iro.umontreal.ca; s=mail; t=1588249298; bh=UpERUrudGXPRhmDqOq+CG24/3hrEDn7PiRhIo8WhqYk=; h=From:To:Cc:Subject:References:Date:In-Reply-To:From; b=aj5pJ0n8DLjhVCOi5QdSiJ1yvUHulzJMlT5lkc6CO5K4a6PZ3hGbw2AGdyDbU9izk /3csytlMaewJfGBQwurv9JLhCcfJpNBEAR4KOr1L8OnONrrWFNik6iV0A0XLtTXozS OMxodwQNeNN8Ib8FBfvcGFJXoZpgfqOpXAbnhNQ5BmOqAaysvrzSzVhAnuI0dsD49Q YXCyOmIftf7+d2i+MRMX96Sx0/W8sZschW2BIEcDdlaRuG65y/cjNkcmG0/jhcrsfq 6EGfl1RRJioTwIAiqNmLHrQKCXpiuS8FAAQedmVBv1x9dSoaSf0Y8umSRfroL7CPCJ CvGRLzv86ZZTg== Original-Received: from alfajor (unknown [216.154.3.202]) by mail01.iro.umontreal.ca (Postfix) with ESMTPSA id 6042F1205FB; Thu, 30 Apr 2020 08:21:38 -0400 (EDT) In-Reply-To: (Stefan Kangas's message of "Thu, 30 Apr 2020 09:49:19 +0200") Received-SPF: pass client-ip=132.204.25.50; envelope-from=monnier@iro.umontreal.ca; helo=mailscanner.iro.umontreal.ca X-detected-operating-system: by eggs.gnu.org: First seen = 2020/04/30 08:03:38 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] X-Received-From: 132.204.25.50 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 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:248223 Archived-At: > So a theme can be used to change configuration, and indeed this is the > recommended way to do it. Interesting, and news to me. A custom-theme is a set of custom settings, yes. > AFAIK, all other applications I have used understand "theme" to mean a > "package containing graphical appearance details". This definition > from Wikipedia: https://en.wikipedia.org/wiki/Theme_(computing) Yes, but at the same time, it's hard to draw the line: if a theme controls the shape of menus (e.g. chooses between scroll-down menus and pie-menus), is it "graphical appareance"? What about the structure of a menu? What about the place where completions are displayed (a popup child frame vs the *Completions* buffer)? In any case, I'm not sure we want to start adding an artificial barrier: the underlying technique conflates the two and I don't think it's a problem, even if it doesn't correspond to what some other applications offer (FWIW, I believe some application's themes are also able to change pretty much any aspect of the behavior. IIRC that's the case for Enlightenment, for example). > I don't think users will expect a "theme" to modify the behavior > of Emacs. It wouldn't be the first time that Emacs goes beyond users expectations ;-) > We could introduce a *separate* convention, called e.g. "custom > profiles", which are understood to also change settings. They could > have their own directory in our tree called "etc/profiles", and > separate commands to load them (say, M-x load-profile). I'm fine with using a different naming convention for the actual behavior-oriented themes, but I see no need to hide the fact that the implementation is the same. Stefan