Rubyのsprintfは数字を3桁ずつコンマで区切る書式指定がない件

1,000,000等と表示することは多いというのに、いちいちgsub使うのはうざい。数字の表記方法でよく使われるのだからsprintfでサポートすべきだと思うな。スクリプト言語なんだし。sprintf.cと自前で実装してるんだからさ。

"%#d" % 100000    # => "100000"
"%#x" % 0x100000  # => "0x100000"
"%#o" % 0100000   # => "0100000"
"%#b" % 0b1011    # => "0b1011"
"%," % 100000     # => 
# ~> -:5:in `%': malformed format string - %, (ArgumentError)
# ~> 	from -:5:in `<main>'

「%#d」とか「%,」あたりが妥当だろうか。

追記

,だけでいいんでしたっけ?
_で区切る国とかありませんでしたっけ?

そのへんはlocale依存ということで。あるいは「%_」も定義するか。
区切るのも「整形」であることには変わりないからsprintf/formatで実装されるべきだと俺は思う。名前重要。もっと利便性を追究すべきだと思うんだよね。