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: Unicode confusables and reordering characters considered harmful, a simple solution Date: Wed, 03 Nov 2021 21:16:56 +0000 Message-ID: <11d5fecb4494b19a9730@heytings.org> References: <875ytag0hb.fsf@yahoo.com> <87zgqmd5np.fsf@mat.ucm.es> <83wnlqk3rn.fsf@gnu.org> <72dd5c2a-42c7-b12e-05ed-e93adbd89727@gmail.com> <83ilxajyhw.fsf@gnu.org> <83fssejxf8.fsf@gnu.org> <835ytajsv2.fsf@gnu.org> <831r3yjqo9.fsf@gnu.org> <83v91aibe7.fsf@gnu.org> <87o872s0wf.fsf_-_@db48x.net> <83lf25gm1j.fsf@gnu.org> <86h7ctyupr.fsf@mail.linkov.net> <11d5fecb44ffbf6b7dd1@heytings.org> <838ry5ggy9.fsf@gnu.org> <11d5fecb446ff1ae06b6@heytings.org> <83zgqlf0c2.fsf@gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="e8SXAtSz80" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="28186"; mail-complaints-to="usenet@ciao.gmane.io" Cc: juri@linkov.net, cpitclaudel@gmail.com, stefan@marxist.se, emacs-devel@gnu.org, db48x@db48x.net, monnier@iro.umontreal.ca, yuri.v.khan@gmail.com To: Eli Zaretskii Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Nov 03 22:18:47 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 1miNeh-00076g-1N for ged-emacs-devel@m.gmane-mx.org; Wed, 03 Nov 2021 22:18:47 +0100 Original-Received: from localhost ([::1]:44946 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1miNef-0004uZ-HT for ged-emacs-devel@m.gmane-mx.org; Wed, 03 Nov 2021 17:18:45 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:43138) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miNd9-00028a-Ay for emacs-devel@gnu.org; Wed, 03 Nov 2021 17:17:11 -0400 Original-Received: from heytings.org ([95.142.160.155]:51776) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1miNcx-0006sX-EZ; Wed, 03 Nov 2021 17:17:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=heytings.org; s=20210101; t=1635974216; bh=JNjdRzK/BG3J+gh4hABPlj1fPsyW7Pulepf5T3zS7+8=; h=Date:From:To:cc:Subject:In-Reply-To:Message-ID:References:From; b=q+SvKRK0j4eMte6SKVZGrp3KIi6OI7pKiiPxIimDvMmoNjJjio4luyeHen2Dr7z8f pqTCmxI6Zr155126cYEevmfgIjYNyN0XstU6PDlXAmInMO21RrOuZZQOBlONCt063i 5sNENbJUgtDKMjFIfiMR3i5mT/eHbxc8XetMEVPlktiVdVbJAV86qxa/PtpKf2LXl3 JW8WEAIFeWG7/Sqvg1aazW+T5baCaKCQSEBvTzpDa7TCP9an5AhW/O0VVFFaXDwpMA S7zhZjRZ0DnjG0PNcgk3CGheV64s4NjQH8riOsMY0QflCqDo3os/z8/o/SYkcUWxqf Rgz6KAqHxA7eQ== In-Reply-To: <83zgqlf0c2.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.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:278631 Archived-At: --e8SXAtSz80 Content-Type: text/plain; charset=us-ascii; format=flowed >> I tried various of the predefined colors with highlight-regexp, of >> course those with a distinct background, and none make any of those >> characters more visible. Not even with a single pixel wide bar. > > That's very strange, because I see them even if I make the region span > only a single such character. The default background of the region face > is quite pale, and still I see them quite clearly, even with the default > light theme. > Here's a screenshot with emacs -Q (current trunk). I did M-x highlight-regexp RET y RET hi-green RET M-x highlight-regexp RET hi-green RET. There's one reordering character between each of the "abcdefghij" string. I zoomed that picture, I see absolutely nothing. --e8SXAtSz80 Content-Type: image/png; name=reordering.png Content-Transfer-Encoding: base64 Content-ID: <11d5fecb4476fade752f@heytings.org> Content-Description: Content-Disposition: attachment; filename=reordering.png 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 --e8SXAtSz80--