[#44189] [ANN] Rails勉強会@東京 第24回のお知らせ — "MOROHASHI Kyosuke" <moronatural@...>
各位
1 message
2007/11/08
[#44190] Ruby/KAKASIのインストールに失敗する — <boku.charhan@...>
お忙しいところ失礼します、WINDOWS XPを使っているんですが
8 messages
2007/11/08
[#44197] Re: Ruby/KAKASIのインストールに失敗する
— Nobuyoshi Nakada <nobu@...>
2007/11/09
なかだです。
[#44192] [ANN]Ruby勉強会@新潟 第1回のお知らせ — "Masatoshi Itagaki" <masatoshi@...>
各地でRuby勉強会が開催されるようになっていますが、新潟でも開催しようと
6 messages
2007/11/08
[#44207] REXML で UTF16 のファイルが読み込めない — <rook401@...>
REXML で UTF16 のファイルを読み込もうとするとエラーになります。
5 messages
2007/11/12
[#44208] はじめまして — "Ohto, Yasunori" <Yasunori.Ohto@...>
はじめまして
8 messages
2007/11/12
[#44224] WinXPでのCursesプログラム — "Masao Ochi" <ochi@...>
初めて投稿させていただきます。越智と申します。
5 messages
2007/11/15
[#44237] Float を利用するRubyプログラム — SASADA Koichi <ko1@...>
ささだです.
16 messages
2007/11/17
[#44241] Re: Float を利用するRubyプログラム
— SASADA Koichi <ko1@...>
2007/11/19
ささだです.
[#44245] Re: Float を利用する Ruby プログラム
— NISHIMATSU Takeshi <t_nissie@...>
2007/11/19
西松と申します。
[#44246] 数学関数が足りない (Re: Re: Float を利用する Ruby プログラム)
— Nobuyoshi Nakada <nobu@...>
2007/11/19
なかだです。
[#44250] Re: 数学関数が足りない (Re: Re: Float を利用する Ruby プログラム)
— NISHIMATSU Takeshi <t_nissie@...>
2007/11/19
西松です。
[#44268] Complex#cproj patch for ruby-1.9/lib/complex.rb
— NISHIMATSU Takeshi <t_nissie@...>
2007/11/21
西松と申します。
[#44263] RUBY FORUM 2008のお知らせ — "TAISEI OKAZAKI" <okazaki@...>
度々のお知らせ失礼いたします。
4 messages
2007/11/21
[#44286] TmailをgemでWindowsにインストールしようとするとエラーになる — "garyo hosu" <garyohosu@...>
いつもお世話になっております。garyoです。
7 messages
2007/11/30
[#44287] Re: TmailをgemでWindowsにインストールしようとするとエラーになる
— rubikitch@...
2007/11/30
From: "garyo hosu" <garyohosu@gmail.com>
[ruby-list:44179] [PATCH] optparse においてショートオプションがない && 引数が長い場合のサマリの修正
From:
Kobayashi Noritada <nori1@...>
Date:
2007-11-02 10:49:05 UTC
List:
ruby-list #44179
こんにちは、小林です。
Rabbit を使っていて気付いたのですが、optparse において、
ショートオプションがないオプションの引数が長いとき、
ヘルプ (オプションサマリ) の表示がおかしくなります。
例:
require 'optparse'
OptionParser.new {|opt|
opt.on('--long-opt-1=arg', 'long opt + short arg')
opt.on('--long-opt-2=very-very-very-long-arg', 'long opt + long arg')
opt.on('-3=very-very-very-very-very-very-very-very-long-arg',
'short opt + long arg')
opt.on('-4', '--long-opt-4=arg', 'short/long opts + short arg')
opt.on('-5',
'--long-opt-5=very-very-very-very-very-very-very-very-long-arg',
'short/long opts + long arg')
opt.on('-6', '-7', '--long-opt-6',
'--long-opt-7=very-very-very-very-very-very-very-very-long-arg',
'multiple short/long opts + long arg')
opt.parse!(ARGV)
}
サマリ表示結果:
noritada[19:17]% ruby foo.rb --help terra:~/tmp/opt
Usage: foo [options]
--long-opt-1=arg long opt + short arg
=very-very-very-long-arg long opt + long arg
--long-opt-2
-3=very-very-very-very-very-very-very-very-long-arg
short opt + long arg
-4, --long-opt-4=arg short/long opts + short arg
-5=very-very-very-very-very-very-very-very-long-arg
--long-opt-5 short/long opts + long arg
-6, -7=very-very-very-very-very-very-very-very-long-arg
--long-opt-6, --long-opt-7 multiple short/long opts + long arg
(long-opt-2 に関する表示が乱れていることが分かります。)
そこで、修正するパッチを作成してみました。
もし適切そうだったら取り込んでいただけませんでしょうか?
--
|: Noritada KOBAYASHI
|: Dept. of General Systems Studies,
|: Graduate School of Arts and Sciences, Univ. of Tokyo
|: E-mail: nori1@dolphin.c.u-tokyo.ac.jp (preferable)
|: nori@esa.c.u-tokyo.ac.jp
|: Key fingerprint = AB26 9533 81DA 997B 3C06 4380 19BB ADA0 695C 9F53
Attachments (1)
optparse.diff
(410 Bytes, text/x-diff)
--- optparse.rb.org 2007-02-20 15:53:16.000000000 +0900
+++ optparse.rb 2007-11-02 19:26:36.000000000 +0900
@@ -379,7 +379,7 @@
while s = lopts.shift
l = left[-1].length + s.length
l += arg.length if left.size == 1 && arg
- l < max or left << ''
+ l < max or sopts.empty? or left << ''
left[-1] << if left[-1].empty? then ' ' * 4 else ', ' end << s
end