[tsunagi 37] Re: please review and test new tamago-tsunagi

Back to archive index

ARAI Shun-ichi herme****@ceres*****
2015年 1月 28日 (水) 21:08:40 JST


あらいです。

In <CANW2****@mail*****>;
   Mitsutoshi NAKANO <itsan****@gmail*****> 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 と言うのか、最初にエラーで引っ掛かっ
た文字は一覧に出てこないようになっているようです。
 参考までに。




Tamago-tsunagi-misc メーリングリストの案内
Back to archive index