From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY) Date: Sun, 17 May 2020 17:30:35 +0300 Message-ID: References: <20200517124125.000013a4@web.de> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="107700"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: K-9 Mail for Android To: emacs-devel@gnu.org, Arthur Miller , Julius Pfrommer Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sun May 17 16:32:12 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 1jaKKq-000Rwa-0A for ged-emacs-devel@m.gmane-mx.org; Sun, 17 May 2020 16:32:12 +0200 Original-Received: from localhost ([::1]:59098 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jaKKp-0000RK-3H for ged-emacs-devel@m.gmane-mx.org; Sun, 17 May 2020 10:32:11 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:42900) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1jaKJO-0007Z3-Qp for emacs-devel@gnu.org; Sun, 17 May 2020 10:30:42 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:59926) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jaKJN-0002A7-Nd; Sun, 17 May 2020 10:30:41 -0400 Original-Received: from [176.12.226.120] (port=57403 helo=[10.159.73.135]) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1jaKJM-0008DK-Pe; Sun, 17 May 2020 10:30:41 -0400 In-Reply-To: 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:250606 Archived-At: On May 17, 2020 5:09:08 PM GMT+03:00, Arthur Miller wrote: > Julius Pfrommer writes: >=20 > > Hi all, > > > > during the recent discussion on "Emacs being too square", I recalled > a > > few projects that use OpenGL for terminal emulators [1,2]=2E With good > > performance, smooth scrolling and the possibility to add more visual > > *bling*=2E > > > > I had a good look at Emacs' code-base to see if similar approaches > > could be used=2E As you can imagine, I got lost in a forest of #ifdef > for > > different platforms and GUI toolkits=2E The code looks scary to touch= =2E > If > > you don't have access to *all supported platform*, it is likely that > > changes break a platform you could not test locally=2E >=20 > I have been looking into same, some time ago and recently, and I > experience same problem=2E A forest of cases, all coded into same place > in > giant files of 5K+ lines :-)=2E >=20 > > To make the code-base less scary, there should be more code-sharing > > across GUI platforms=2E And this is indeed possible! > Emacs and Emacs src could benefit of some modularization and > refactoring > definitely=2E I suggest to go through the archives and the Git logs to see how many such= efforts have been made and are already in the codebase=2E It isn't like t= he advantages of this are unclear to the development team, or that nothing = is being done in that direction=2E Far from it=2E