rubyhackchallenge icon indicating copy to clipboard operation
rubyhackchallenge copied to clipboard

help に --dump オプションを追加します

Open sonots opened this issue 8 years ago • 8 comments

https://bugs.ruby-lang.org/issues/13849

sonots avatar Aug 31 '17 02:08 sonots

help をやたらと長くはしたくないそうなので、仕様議論中

sonots avatar Aug 31 '17 02:08 sonots

https://github.com/ruby/ruby/pull/1688

--dump=? を追加するのが難しい。現状、--dump=show_help で出せるようにはなった。

$ ./ruby -h
Usage: ./ruby [switches] [--] [programfile] [arguments]
  ...
  --dump=[target] try --dump=? to show valid targets
$ ./ruby --dump=show_help
$ ./ruby --dump=show_help
Usage: ./ruby [switches] [--] [programfile] [arguments]
  --dump=insns    dump YARV instructions
  --dump=yydebug  dump yydebug of yacc parser generator
  --dump=parsetree, --dump=parsetree_with_comment
                  dump parsetree or parsetree with comment

sonots avatar Aug 31 '17 02:08 sonots

複数指定できることを言った方がいいかも?

ko1 avatar Aug 31 '17 04:08 ko1

--dump=insns,help とすると、help だけ出て終わったりするので、明言できないんすよねぇ。。

sonots avatar Aug 31 '17 04:08 sonots

help は例外なので無視して、複数指定できる旨を記述します。

sonots avatar Aug 31 '17 05:08 sonots

こうなりました

# -h では出ない
$ ./ruby --help
Usage: ./ruby [switches] [--] [programfile] [arguments]
   ...
  --dump=target[,....]
                  try --dump=help to show help messages of --dump
$ ./ruby --dump=help
Usage: ./ruby [switches] [--] [programfile] [arguments]
  --dump=insns    dump instruction sequences
  --dump=yydebug  dump yydebug of yacc parser generator
  --dump=parsetree, --dump=parsetree_with_comment
                  dump AST or AST with comments.

sonots avatar Aug 31 '17 06:08 sonots

nobu says

What about --help=dump (--help=feature and so on)?

ってことで --help=dump に変わりました。

$ ./ruby --help
Usage: ./ruby [switches] [--] [programfile] [arguments]
   ...
  --dump=target[,....]
                  try --help=dump to show help messages of --dump
$ ./ruby --help=dump
Usage: ./ruby [switches] [--] [programfile] [arguments]
  --dump=insns    dump instruction sequences
  --dump=yydebug  dump yydebug of yacc parser generator
  --dump=parsetree, --dump=parsetree_with_comment
                  dump AST or AST with comments.

sonots avatar Aug 31 '17 07:08 sonots

スゴーイ。

ko1 avatar Aug 31 '17 08:08 ko1