I started a wiki for anyone interested.
http://rush.reyn.co.za/wiki/

On 8/18/05, Reyn Vlietstra <reyn.vlietstra / gmail.com> wrote:
> Trans, thanks I had a look at their mailing list and they had a few
> nice examples of how something like this can be used, some of which
> are included here:
> 
> * methods added to filetypes
>   * >> somesong.mp3.play
>   * >> some.jpg.rotate(90).view
>   * >> somefile.extension.defaultopen("/usr/bin/somebinary")
>   * >> somefile.extension [which would open it using somebinary]
> 
> * custom global objects
>   * >> db.somedatabase.sometable.find_all [active_record could be used here]
>   * >> apache.config.port = 81 [Not sure how this would work ?
> read/write the .conf file ?]
>   * >> apache.restart
>   * >> samba.config.global.security = user
> 
> Unfortunately *nix config files dont follow some sort of standard like
> xml, which could have make this alot easier.
> 
> Then obviously chaining of commands
>   * [grep something] | invoke a graphing application which will show
> the number of ocurrances by filename with a bar chart
>   * gimp.applyfilter(gimp.filters.blur) | email.send("blured
> image","someone / somewhere.com")
> 
> There was a suggestion of using opengl for the command line, which
> could add some nice functionality:
>   * The cli then becomes more of an ide, a combo box could be popped
> up for command suggestions instead of the usual list of commands which
> saves space.
>   * images could be displayed on the cli iteself
>   * a nice graph of the chained commands could be displayed with each
> command's projected inputs and outputs for the current fsm [Could be
> generated by doxygen]
> 
> I think this would be a nice project to help unify available
> applications/libs on *nix.
> 
> jm, the very simple commands included in my previous post are:
> 
> class Ls < Command
> 
>     respond_to "ls"
> 
>     def begin_command(args)
>         args = "*" if args == ""
>         $objects = Dir.glob(args)
>     end
> 
> end
> 
> class Bracket < Command
> 
>     respond_to "b"
> 
>     def begin_command(args)
>         $objects.map!{|o| "("+o.to_s+")"}
>     end
> 
> end
> 
> They can then be used by doing
> >> ls *.rb | b | b
> which would print out all the .rb files each having two brackets around them.
> 
> The basic idea currently uses a global $objects to keep track of the
> current objects, which I'm not yet convinced is the best solution.
> 
> Anybody interested in something like this ?
> 
> http://reyn.co.za/rush.tar.gz
> 
> On 8/18/05, Trans <transfire / gmail.com> wrote:
> > There's been some discussion on this with regards to R:O:S. You might
> > want to dig that up on Rubyforge.
> >
> >
> >
> 
> 
> --
> Reyn Vlietstra
> 
> 


-- 
Reyn Vlietstra