From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Lennart Borgman Newsgroups: gmane.emacs.devel Subject: Re: face for non-ASCII characters Date: Sat, 16 Apr 2011 18:01:12 +0200 Message-ID: References: <87k4t4zb5l.fsf@lifelogs.com> <87r5ncxp4z.fsf@lifelogs.com> <87hbo8tf4i.fsf@turtle.gmx.de> <87hbo8xis5.fsf@lifelogs.com> <87aau0t7uy.fsf@turtle.gmx.de> <87sk7svyam.fsf@lifelogs.com> <87vdcngws4.fsf@mail.jurta.org> <87y6hjxgfn.fsf_-_@lifelogs.com> <87hbo6x5pe.fsf@lifelogs.com> <87tydzdtn9.fsf@lifelogs.com> <877hav2f30.fsf@lifelogs.com> <87zknqnsmr.fsf@lifelogs.com> <87bp06nqy4.fsf@lifelogs.com> <877haunq8t.fsf@lifelogs.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: dough.gmane.org 1302969730 29382 80.91.229.12 (16 Apr 2011 16:02:10 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Sat, 16 Apr 2011 16:02:10 +0000 (UTC) Cc: emacs-devel@gnu.org To: Ted Zlatanov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Apr 16 18:02:06 2011 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([140.186.70.17]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1QB7wk-0003e8-Bm for ged-emacs-devel@m.gmane.org; Sat, 16 Apr 2011 18:02:06 +0200 Original-Received: from localhost ([::1]:37443 helo=lists2.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QB7wj-0003YZ-UR for ged-emacs-devel@m.gmane.org; Sat, 16 Apr 2011 12:02:05 -0400 Original-Received: from eggs.gnu.org ([140.186.70.92]:52698) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QB7wE-0002l2-G0 for emacs-devel@gnu.org; Sat, 16 Apr 2011 12:01:35 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QB7wD-00062y-GV for emacs-devel@gnu.org; Sat, 16 Apr 2011 12:01:34 -0400 Original-Received: from mail-ey0-f169.google.com ([209.85.215.169]:63461) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QB7wD-00062J-5F for emacs-devel@gnu.org; Sat, 16 Apr 2011 12:01:33 -0400 Original-Received: by eyd9 with SMTP id 9so1116256eyd.0 for ; Sat, 16 Apr 2011 09:01:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type:content-transfer-encoding; bh=zjpru9kFwiZx8zfLhVYaL+82bAVfHAGONLV3P/4Ns5I=; b=RmJTZYm6xgyy2LJpr/07wTWQlIxRs2uG5RBCjPdwCdc9eZmNQJs45PXPDNsEsOLkVK QH1ZjOPuLma1Wm3yQ6bMM/4YMznyHpLMBow9UMZ0UoX3KYDKgvwEn7VUnaDTElInGvw7 JN3vJ+lsXbqE2ROqvQ4QNpsFiBpuHLEluiJFY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:content-transfer-encoding; b=Y4B/+vDzleJHppyIv08cVMG48iz+BkXzFtQ7Ql3F+E14d8eYTapkSlg60h7DAOo1uf kDtyF29W7+zL7tdP0V36PWi0X4ZvSEtsGDLNYZBp8Bxs+w/omtbzkFBhTVAyYzPj8tAJ UA1uUABfpCa4mucXMswWKsbi+BwLULmNXz1rc= Original-Received: by 10.213.15.139 with SMTP id k11mr3122619eba.31.1302969692149; Sat, 16 Apr 2011 09:01:32 -0700 (PDT) Original-Received: by 10.213.9.196 with HTTP; Sat, 16 Apr 2011 09:01:12 -0700 (PDT) In-Reply-To: <877haunq8t.fsf@lifelogs.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 209.85.215.169 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:138525 Archived-At: 2011/4/16 Ted Zlatanov : > On Sat, 16 Apr 2011 17:50:07 +0200 Lennart Borgman wrote: > >>> so maybe (require 'idn nil t) is a better approach, and we can define a >>> stub replacement for `idn-is-recommended'. =C2=A0I didn't dig too much = into >>> it because of the possibility of inclusion I mentioned. > > LB> I think autoloading and checking if the function is defined is the > LB> best way. (Autoloading of `idn-is-recommended' should of course not b= e > LB> setup if idn.el is not available.) > > OK, but then this: > > (defcustom markchars-what > =C2=A0`(markchars-simple-pattern > =C2=A0 =C2=A0markchars-confusables > =C2=A0 =C2=A0,@(when (fboundp 'idn-is-recommended) '(markchars-nonidn-fun= ))) > ... > > will always add `markchars-nonidn-fun' to `markchars-what' and that will > break users without idn.el. Why? (fboundp 'idn-is-recommended) only returns true if the function is defined or autoloaded. If idn.el is not available the function should not be autoloaded, or? > LB> So using a char-table instead in idn.el would make the interface > LB> better? (But we need someone good at this to tell if that is usable > LB> here performancewise.) > > I think it's slightly better for characters to use char-table instead of > bool-vector. =C2=A0Semantically it's cleaner: you're using a char-table, > which is meant for characters, instead of a bool-vector, which is for > general data. =C2=A0But it's a really small difference so don't bother if= you > don't feel like it :) I sounds like a good idea, I am just waiting for some more info about performance. > OK, so after we resolve the autoload issue above and find out if the > confusables.txt and idn*.txt files can be turned into Emacs character > properties, we can publish 0.2, right? =C2=A0Is there anything else it ne= eds? > > Ted > > >