2009年7月23日

[ruby-list:46234] Re: irbでの式展開中の動作について

けいじゅ@いしつかです.

In [ruby-list:45210] the message: "[ruby-list:45210] Re: irbでの式展開
中の動作について", on Jul/07 23:42(JST) Yukihiro Matsumoto writes:

>まつもと ゆきひろです

>irbでは式展開の中でのネストしたダブルクオートには対応していま

>せん。irbが使っているパーサーはネストを許す前に開発されたもの
>で、それ以降改善されていないからです。バグと言えばバグなので
>すが、対応が大変な割にメリットが薄いので対応される可能性はそ
>んなに高くないです。

ずいぶんたってしまいましたが, この問題に一応対応しました[redmine Bug#1695].

完全に対処できているかどうかはちょっと微妙でなくもないですが...

ただ, プロンプトが, 下記のような感じになっちゃうのですが, これは勘弁し
てください.

irb(main):001:0> "
irb(main):002:0" hi
irb(main):003:0" #{
irb(main):004:0> 'a'.gsub("'
irb(main):005:1" "
irb(main):006:1> , '\\\'
irb(main):007:1' '
irb(main):008:1> )
irb(main):009:0> }
irb(main):010:0" "

"#{exp}"を複数行にわたって書くこともないってことで.

ここからが本題ですが. 上記を実行すると,

SyntaxError: (irb):6: syntax error, unexpected ',', expecting ')'
, '\\\'
^
(irb):8: syntax error, unexpected ')', expecting '}'
(irb):10: unterminated string meets end of file
from /home/keiju/var/bin/irb:13:in `<main>'


というエラーになります. rubyで直接実行しても同様です. これって, バグの
ような気がするのですが? いかがでしょう?

__
---------------------------------------------------->> 石塚 圭樹 <<---
---------------------------------->> e-mail: keiju@xxxxx <<---


投稿者 xml-rpc : 2009年7月23日 18:50
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/86905
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。