#10326: Various clean-up in local/bin/sage-sage
------------------------------+---------------------------------------------
   Reporter:  jdemeyer        |       Owner:  jason            
       Type:  enhancement     |      Status:  positive_review  
   Priority:  minor           |   Milestone:  sage-4.6.1       
  Component:  misc            |    Keywords:  scripts sage-sage
     Author:  Jeroen Demeyer  |    Upstream:  N/A              
   Reviewer:  Rob Beezer      |      Merged:                   
Work_issues:                  |  
------------------------------+---------------------------------------------

Comment(by leif):

 In any case an improvement, but still room for more... ;-)

  * For educational purposes, what about listing the long options with
 double-dash [only]? (I don't think we have to mention that Sage also
 currently supports long options with just a single dash.)

  * What about using "here" documents rather than cascades of `echo`s?
 (Perhaps more than one per `usage()` though.)

  * What about using the shell's pattern matching for option parsing? (This
 is more readable, avoids problems with potentially broken `test`s, and is
 in some cases less redundant.)

   * I would list "coverage" under "testing", not "documentation".

   * We could support `sage -h <topic>` or alike (`sage help
 <topic|option>`).


 There are some flaws or omissions (can't list them all here, just a few):
  * {{{s/debuging/debugging/}}}
  * `-clone` doesn't "run" the new branch.
  * `-b` without a branch (re)builds the current. (And `-b main` switches
 back to the "original", hopefully unmodified...)
  * `-s` is also valid in conjunction with `-f` (but only as the second
 argument, like with `-i`).
  * If you run `sage` with a file given, the extension is mandatory, and
 you can also pass further arguments to it (ending up in `sys.argv`), so
 the usage is
 {{{
     sage filename.{sage, py, spyx} [arguments]
 }}}
     or
 {{{
     sage filename.<sage|py|spyx> [arguments]
 }}}
  * `-update` and `-update-build` are obsolete, or at least currently
 unsupported.
  * `-t` etc. also takes the additional options `-force_lib` and `-sagenb`.
  * `-testall` also takes additional options, like e.g. `-long`.
  * ... (I don't recall... ;-) )

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10326#comment:9>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to