From owner-freebsd-users-jp@FreeBSD.ORG Wed Jan 28 14:56:13 2015 Return-Path: Delivered-To: freebsd-users-jp@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DB47DB99 for ; Wed, 28 Jan 2015 14:56:13 +0000 (UTC) Received: from mail-oi0-x236.google.com (mail-oi0-x236.google.com [IPv6:2607:f8b0:4003:c06::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 99E77E05 for ; Wed, 28 Jan 2015 14:56:13 +0000 (UTC) Received: by mail-oi0-f54.google.com with SMTP id v63so17818687oia.13 for ; Wed, 28 Jan 2015 06:56:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=+DK28OubFEvyx9u/f3Sc5gGlYGXdQALbqMyl5oyI3QI=; b=rBX78A7RtlW2SPm9aWJRZhGRsCB9xPs4xuqb6Pqhicl+AOfVixXEXH7aIobIVz2Oi/ yWljQ+5Fhr0Zm9FxkdidVuG3XiQPMbqBwpIK96dtq7UnyuhVdqXAXF3XAYv8obmek7d8 EAeIOgleuqi4zxD+Ud/+hvtzAPo3xtn66Z4HvhlAlk3mp6cmvML/O6Q0Rw6BgRcx0Gmo NhLgjo1iw3ZQKC7BD6/l5IZ1LRj7xsh53poOLRrTG8BoQsda+M6j/hHfx2sIxbeM2NH4 Fck7VG3D7VppBBi9KCvigAJ7t/Z9W+x3cpwAxgRMEd9y/6lcL3DbitIh2noeyCpyph2N UAAA== MIME-Version: 1.0 X-Received: by 10.182.241.133 with SMTP id wi5mr2388952obc.10.1422456972831; Wed, 28 Jan 2015 06:56:12 -0800 (PST) Received: by 10.202.71.130 with HTTP; Wed, 28 Jan 2015 06:56:12 -0800 (PST) In-Reply-To: <20150128.210840.1687762521217576676.hermes@ceres.dti.ne.jp> References: <20150128.210840.1687762521217576676.hermes@ceres.dti.ne.jp> Date: Wed, 28 Jan 2015 23:56:12 +0900 Message-ID: From: Mitsutoshi NAKANO To: tamago-tsunagi-misc Content-Type: text/plain; charset=ISO-2022-JP Content-Transfer-Encoding: 7bit Cc: freebsd-users-jp@freebsd.org, openSUSE ja ML , debian-devel , =?ISO-2022-JP?B?QW50aHkbJEIkTjMrSC8bKEI=?= , chise-ja@lists.chise.org Subject: [FreeBSD-users-jp 95433] Re: [tsunagi 37] Re: please review and test new tamago-tsunagi X-BeenThere: freebsd-users-jp@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: Discussion relevant to FreeBSD communities in Japan List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Jan 2015 14:56:13 -0000 このメールは TO tamago-tsunagi-misc@lists.sourceforge.jp CC chise-ja@lists.chise.org anthy-dev@lists.sourceforge.jp opensuse-ja@opensuse.org debian-devel@debian.or.jp freebsd-users-jp@freebsd.org で、複数のMLに送信しております。 2015年1月28日 21:08 ARAI Shun-ichi : > あらいです。 > > In ; > Mitsutoshi NAKANO wrote > as Subject "[tsunagi 34] please review and test new tamago-tsunagi (was: egg-simで "Invalid code(s)")": > >> 上記mail >> http://sourceforge.jp/projects/tamago-tsunagi/lists/archive/misc/2015-January/000029.html >> の件で、tamago-tsunagiを修正してみました。 >> あらいさんがおっしゃるとおり、egg-sim.elの(make-char-list)の >> (make-char)がエラーを発していましたので >> (ignore-errors)で囲ってみました。 >> >> ISO-8859-3に文字が定義されていない点があり、 >> そこで(make-char)がエラーを返していたようです。 >> http://en.wikipedia.org/wiki/ISO/IEC_8859-3 >> >> simを起動すると未定義のところはnilになっており、 >> それを無理に入力しようとするとエラーになりますが、 >> 一応、動かないという状態は脱したように思われます。 > >  私もその後調べて、なんとかエラーを出さないようにできないか頑張ってみ > たのですが、挫折しました。 >  当方では結局、このようなコードになりました。 > > ---- > diff -aur tsunagi-5.0.1.0.orig/egg-sim.el tsunagi-5.0.1.0/egg-sim.el > --- tsunagi-5.0.1.0.orig/egg-sim.el 2014-12-15 10:36:45.000000000 +0900 > +++ tsunagi-5.0.1.0/egg-sim.el 2015-01-28 16:05:39.415558358 +0900 > @@ -56,19 +56,23 @@ > (<= to max) > (cond ((= (charset-dimension charset) 1) > (while (<= from to) > - (setq result (cons (char-to-string > - (make-char charset to)) > - result) > - to (1- to))) > + (condition-case nil > + (setq result (cons (char-to-string > + (make-char charset to)) > + result) ) > + (error nil) ) > + (setq to (1- to)) ) > result) > ((= (charset-dimension charset) 2) > (while (<= from to) > (let ((code max)) > (while (<= min code) > - (setq result (cons (char-to-string > - (make-char charset to code)) > - result) > - code (1- code)))) > + (condition-case nil > + (setq result (cons (char-to-string > + (make-char charset to code)) > + result) ) > + (error nil) ) > + (setq code (1- code)) )) > (setq to (1- to))) > result))))) > > ---- > >  一応、latin-3 の F0 と言うのか 112 と言うのか、最初にエラーで引っ掛かっ > た文字は一覧に出てこないようになっているようです。 >  参考までに。 あらいさんのpatchをあててみました。 一応動いているように見えるのですが、どこらへんで挫折したのでしょうか? 私がresultのlistにnilを残したのは、 nilを取ってlistを詰めてしまうと、その他の動作に悪影響がでる可能性があると考えて、 保守的なcodeにしようとしたからなのですが、 動作確認してみたところ、 あらいさんのようにnilを取り詰めしても、動作には影響がないように見えます。 仮にcharset tableに穴が沢山ある文字集合が実在したなら、 私の実装では一覧にnilが沢山並ぶことになるので、 あらいさんの修正の方が優れているのではないかと今は考えています。 あらいさんはご自身のコードのどの辺に問題を感じてらっしゃるのでしょうか? というわけでtestとreviewのご依頼をあちこちのMLに投げましたが、 あらいさんの修正の方が採用される可能性があります。 >各位 -- Mitsutoshi NAKANO ただ今就職活動中。