[xyzzy:09198] format の ~R
- Subject: [xyzzy:09198] format の ~R
- From: southly <southly@xxxxxxxxxxxx>
- X-mailer: KaMail-0.0.2.8[05/11/25] on xyzzy-0.2.2.235 (windows-xp)
- X-yzzy-version: 0.2.2.235
こんにちは。
NANRIです。
format周りのソースを眺めているのですが、
format指示子Rの最大パラメータ数は5のはずが、
実際に5つ指定するとエラーになってしまいます。
4つまでの処理は正常でしたので、
試しにパラメータ数のチェック部分を変更すると
正常に動作するようになりました。
(format nil "~16,10,'*,'-,2:R" #x123abc)
=>"**12-3a-bc"
それと、padcharとcommacharにはいわゆる全角文字も許されていますが、正しく
最小幅に出力されないので、エラーにしてしまってよいように思います。
以上よろしくお願いします。
-----
NANRI
southly@xxxxxxxxxxxx
http://raido.sakura.ne.jp/southly/rn/
--- lprint.cc~ Sun Mar 10 04:43:29 2002
+++ lprint.cc Sun Jun 18 17:58:04 2006
@@ -2078,7 +2078,7 @@
void
Format::integer (wStream &stream, lisp linteger, int base, int istart)
{
- max_param (4);
+ max_param (4 + istart);
int mincol = integer_param_min (istart, 0, 0);
Char padchar = char_param (istart + 1, ' ');
Char commachar = char_param (istart + 2, ',');