From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Split `simple.el'? Date: Wed, 04 Apr 2018 17:02:15 +0300 Message-ID: <83zi2j2hp4.fsf@gnu.org> References: <5f1e960c-483f-4902-b4c2-b7a4ca3b04f4@default> <10c96362-297f-db97-d4a9-da3d66d4dd34@cs.ucla.edu> <83in974gwf.fsf@gnu.org> Reply-To: Eli Zaretskii NNTP-Posting-Host: blaine.gmane.org X-Trace: blaine.gmane.org 1522850458 22226 195.159.176.226 (4 Apr 2018 14:00:58 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 4 Apr 2018 14:00:58 +0000 (UTC) Cc: eggert@cs.ucla.edu, emacs-devel@gnu.org To: Stefan Monnier Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Apr 04 16:00:54 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1f3iy5-0005gn-Ox for ged-emacs-devel@m.gmane.org; Wed, 04 Apr 2018 16:00:53 +0200 Original-Received: from localhost ([::1]:60677 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f3j0B-0003Wb-7b for ged-emacs-devel@m.gmane.org; Wed, 04 Apr 2018 10:03:03 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45689) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f3izJ-0003Vl-7Z for emacs-devel@gnu.org; Wed, 04 Apr 2018 10:02:15 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1f3izF-0000QY-8m for emacs-devel@gnu.org; Wed, 04 Apr 2018 10:02:09 -0400 Original-Received: from fencepost.gnu.org ([2001:4830:134:3::e]:40808) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1f3izF-0000QT-5W; Wed, 04 Apr 2018 10:02:05 -0400 Original-Received: from [176.228.60.248] (port=4932 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1f3izE-0002lG-Is; Wed, 04 Apr 2018 10:02:04 -0400 In-reply-to: (message from Stefan Monnier on Wed, 04 Apr 2018 09:14:43 -0400) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:224320 Archived-At: > From: Stefan Monnier > Cc: Paul Eggert , emacs-devel@gnu.org > Date: Wed, 04 Apr 2018 09:14:43 -0400 > > > IOW, it's a system configuration bug: with such a large number of > > fonts, one should have at least one font that covers each Unicode > > codepoint, and one might need to customize their fontsets to find the > > fonts more quickly. > > Maybe we should setup some cache to avoid always recomputing this. I think we already do: the realized fontset is implemented as a char-table, where we record that a character has no fonts in the fontset. The underlying problem in this case happens when such characters need to be displayed for the first time. Maybe you mean a persistent cache on disk? If so, Unix back-ends already have that, AFAIK. But Drew is on Windows. Maybe Emacs on Windows could also benefit from some system-wide caching, but I don't know if something like that exists, or how to change Emacs to use it if it does. Or maybe the methods we use already employ what caching is there, and this is the best we can do. In any case, setting up a cache would mean it needs to be updated each time a font is installed or removed.