<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">That prompt to me would be the tab key, possibly, what are roo and the Seam Forge guys doing? They support something like this.<div><br><div>
<span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div><div>Jim Tyrrell</div><div>Senior JBoss Solutions Architect</div><div><br></div><div>Did you see RHT on CNBC's Mad Money?</div><div><a href="http://www.cnbc.com/id/39401056">http://www.cnbc.com/id/39401056</a></div></div><div><br></div></span><br class="Apple-interchange-newline">
</div>
<br><div><div>On Apr 19, 2011, at 10:51 AM, <a href="mailto:ssilvert@redhat.com">ssilvert@redhat.com</a> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>The most usable command line interface I've ever seen is on the <br>AS/400. If you need help with a command, you type the command and hit <br>the help key. Then you are presented with a form showing all the <br>arguments and default values. So the help is right there where you <br>need it as you fill out a form for the command.<br><br>The AS/400 has the advantage that they have full control over the <br>terminal and you can easily lay out these forms when needed. However, <br>for our CLI, we could have a "prompt me" mode that prompts for each <br>argument, showing default values and explanations along the way.<br><br>[localhost:9999 /] promptme deploy<br>local file? /foo.war<br>server deployable name (foo.war)? my_war_name.war<br>runtime name (my_war_name.war)? my_war_runtime.war<br>deploy to servergroup1 (yes)?<br>deploy to servergroup2 (yes)? no<br><br>**result: foo.war was uploaded to domain and deployed to servergroup1<br><br>[localhost:9999 /]<br><br>Quoting Alexey Loubyansky <<a href="mailto:alexey.loubyansky@redhat.com">alexey.loubyansky@redhat.com</a>>:<br><br><blockquote type="cite"><br></blockquote><blockquote type="cite">On 04/19/2011 04:29 PM, David M. Lloyd wrote:<br></blockquote><blockquote type="cite"><blockquote type="cite">On 04/19/2011 08:31 AM, Alexey Loubyansky wrote:<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">In addition, it's kind of a proprietary convention. We discussed this<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">with Max today and I'm looking into the GNU convention for command line<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">arguments<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">That is a common convention -- for command line arguments. For<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">interactive command lines (examples I'm thinking of include 3com and<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Cisco network management CLIs, as well as commands such as linux's "ip"<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">command which have widely variable arguments), usually it's more like:<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">create-jms-cf name mycf entries foo bar baz<br></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Here is the full version<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">[localhost:9999 /] create-jms-cf<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">--help name=<br></blockquote><blockquote type="cite">auto-group=<br></blockquote><blockquote type="cite">entries= connector=<br></blockquote><blockquote type="cite">block-on-acknowledge=<br></blockquote><blockquote type="cite">block-on-durable-send= block-on-non-durable-send=<br></blockquote><blockquote type="cite">cache-large-message-client=<br></blockquote><blockquote type="cite">call-timeout= client-failure-check-period=<br></blockquote><blockquote type="cite">client-id=<br></blockquote><blockquote type="cite">confirmation-window-size= connection-ttl=<br></blockquote><blockquote type="cite">consumer-max-rate=<br></blockquote><blockquote type="cite">consumer-window-size= discovery-group-name=<br></blockquote><blockquote type="cite">dups-ok-batch-size=<br></blockquote><blockquote type="cite">failover-on-initial-connection= failover-on-server-shutdown=<br></blockquote><blockquote type="cite">group-id=<br></blockquote><blockquote type="cite">max-retry-interval= min-large-message-size=<br></blockquote><blockquote type="cite">pre-acknowledge=<br></blockquote><blockquote type="cite">producer-max-rate= producer-window-size=<br></blockquote><blockquote type="cite">reconnect-attempts=<br></blockquote><blockquote type="cite">retry-interval= retry-interval-multiplier=<br></blockquote><blockquote type="cite">scheduled-thread-pool-max-size=<br></blockquote><blockquote type="cite">thread-pool-max-size= transaction-batch-size=<br></blockquote><blockquote type="cite">use-global-pools=<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite">Of course this falls apart for "deploy" unless you do something like this:<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">deploy file mything.war as myblah.war runtime-name yourblah.war<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">or something (i.e. make it somewhat more fluent and less shell-ish).<br></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Ok, so you'd actually prefer a simplicity instead of a standard convention.<br></blockquote><blockquote type="cite">I'll think about it (and if somebody has suggestions, please, share) but<br></blockquote><blockquote type="cite">if that doesn't work out we'll have to choose an existing convention.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">And another point is the use of '='. Some command lines don't use it, e.g.<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">deploy --file my.war --name my_war_name.war --runtime-name<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">my_war_runtime_name.war<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">and some do<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">deploy --file=my.war --name=my_war_name.war<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">--runtime-name=my_war_runtime_name.war<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">And some command lines support both :)<br></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">That's too messy, IMO.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Thanks,<br></blockquote><blockquote type="cite">Alexey<br></blockquote><blockquote type="cite">_______________________________________________<br></blockquote><blockquote type="cite">jboss-as7-dev mailing list<br></blockquote><blockquote type="cite"><a href="mailto:jboss-as7-dev@lists.jboss.org">jboss-as7-dev@lists.jboss.org</a><br></blockquote><blockquote type="cite"><a href="https://lists.jboss.org/mailman/listinfo/jboss-as7-dev">https://lists.jboss.org/mailman/listinfo/jboss-as7-dev</a><br></blockquote><blockquote type="cite"><br></blockquote><br><br><br><br><br><br>_______________________________________________<br>jboss-as7-dev mailing list<br><a href="mailto:jboss-as7-dev@lists.jboss.org">jboss-as7-dev@lists.jboss.org</a><br>https://lists.jboss.org/mailman/listinfo/jboss-as7-dev<br></div></blockquote></div><br></div></body></html>