From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Gregory Heytings Newsgroups: gmane.emacs.devel Subject: Re: Entering emojis Date: Thu, 28 Oct 2021 17:06:56 +0000 Message-ID: <8ff3b131c57f741d04e5@heytings.org> References: <87cznths5j.fsf@gnus.org> <87tuh4f1ie.fsf@gnus.org> <0353A9DA-0041-4D71-8E1B-09FB07A5FD0F@acm.org> <87ilxialzw.fsf@igel.home> <831r46wj6r.fsf@gnu.org> <83fssmuxui.fsf@gnu.org> <83bl3aux6y.fsf@gnu.org> <835ytiuvm9.fsf@gnu.org> <834k91vgie.fsf@gnu.org> <8ff3b131c5fa370d9eaf@heytings.org> <83mtmttsxz.fsf@gnu.org> <8ff3b131c56b7b2d1d6f@heytings.org> <83bl39tqnl.fsf@gnu.org> <8ff3b131c531f5254799@heytings.org> <83a6ittp5r.fsf@gnu.org> <8ff3b131c53b9df49236@heytings.org> <834k91th5c.fsf@gnu.org> <8ff3b131c5fe09753ca0@heytings.org> <83mtmtru6l.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; format=flowed; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="5966"; mail-complaints-to="usenet@ciao.gmane.io" Cc: mattiase@acm.org, emacs-devel@gnu.org, schwab@linux-m68k.org, stefankangas@gmail.com, raman@google.com To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Oct 28 19:08:50 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 1mg8tV-0001LF-Kb for ged-emacs-devel@m.gmane-mx.org; Thu, 28 Oct 2021 19:08:49 +0200 Original-Received: from localhost ([::1]:34166 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mg8tT-0000eC-Sb for ged-emacs-devel@m.gmane-mx.org; Thu, 28 Oct 2021 13:08:47 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:40884) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mg8rl-0006Ua-Ec for emacs-devel@gnu.org; Thu, 28 Oct 2021 13:07:01 -0400 Original-Received: from heytings.org ([95.142.160.155]:43386) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mg8rj-00023t-Cx; Thu, 28 Oct 2021 13:07:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20210101; t=1635440816; bh=FGhNqRCoeDtZ7CNLdTfAC11Rq4p2444oMPOaaPfcnK8=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=MzXOzRUb4WLwnksI1Gq5ZhowhI00FBUEZXaV0xk3sUZv0OTQ3u71q5Z01yJDWoDSu ThcZrAXa0Exrcs4iEk+3oOyyCJIC4KnlQIqZy2EWwipDSPEmRDQvBDbZ9lZdkvathc 0+iH4grsq6xZL/FKIAgiVLsAeYtzlwg9Ln57189cpsIhEnmHhmXKOyI/StJEZeukJl MUvA35m853zpOEuXYkMvy5gMtqhxdqHobd2ov0fyAHtmdlJGakYKOK0MPQzJ3AcyxL z3RAClMsXA1Xy1ulS8pglBvPOh6rKeoBivrSX6irwT/zDsZQeZhBf0s6K/xezoMOuW YCirM0PJZSbuw== In-Reply-To: <83mtmtru6l.fsf@gnu.org> Received-SPF: pass client-ip=95.142.160.155; envelope-from=gregory@heytings.org; helo=heytings.org X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_PASS=-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.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:278128 Archived-At: >> Given the limited available manpower in that narrow subfield, I'm not >> quite sure it was the best thing to do. Using a font with predefined >> ligatures is much easier to enter text. > > I think the issue is not whether the font delivers ligatures or not, the > issue is whether the font recognizes the sequences which should produce > either ligatures or series of glyphs with offsets, when the formatting > controls are in the sequence. It sounds like the existing fonts don't > recognize such sequences for what they are supposed to produce. > This is not how ligatures work. Ligatures automatically translate a sequence of characters into an appropriate glyph, which may or may not be a combination of other glyphs. For example, the Computer Modern font translates the two-character sequence "fi" into a character which looks better than "f" followed by "i". If for some reason you don't want that ligature to take place, you write "f{}i" (in TeX), and you get "f" followed by "i". Aegyptus does the same, for about ~2500 sequences of two to four hieroglyphs, known as quadrats. >> But it's not a joiner, it's a non-joiner. The logic is the opposite of >> what Unicode decided to do: known quadrats are automatically recognized >> and combined appropriately when their individual characters appear one >> after the other in a string. It's only when you want to avoid this >> that you have to add a non-joiner. > > That's not what the Unicode Standard says. > I don't know what you mean by this. As I said, the ligatures logic (used by Aegyptus) is the opposite of what Unicode decided to do. For some reason, Unicode decided to not use ligatures, and to use explicit positioning instructions instead. The "non-joiner" is the "{}" in "f{}i" above, it's an instruction of the writer which means "do not use a ligature here". The logic chosen by Unicode amounts to insert a special character between each "f" and "i" when you want the "fi" ligature, instead of inserting a special character between "f" and "i" when you don't want the "fi" ligature. With the ligature logic, to enter "em-hotep", which is composed of four characters, you just enter these four characters: G17, R4, X1, Q3. With the Unicode logic, to enter "em-hotep", you enter seven characters: G17, R4, vertical joiner, begin segment, X1, Q3, end segment. > > So I think we should indeed install you patch, and add a comment that if > and when the fonts learn to support these formatting controls, we should > go back to the version with the controls. Because etc/HELLO is supposed > to demonstrate our advanced text shaping and display capabilities, not > just that we can find suitable fonts for scripts. > > WDYT? > I don't know. The problem is that the sequence of egyptian characters in etc/HELLO that are displayed correctly by hb-view and LibreOffice (and that are included in my patch) is for some reason not displayed correctly by Emacs, even with the recent Aegyptus font installed. Are ligatures disabled for some reason in Emacs?