Kenny Tilton:

> Question 1: Is that the right way to go? I could not make out how to run
> Ruby from SciTE, though I saw tempting menu items to that effect.

   SciTE has difficulties running an interactive irb session. You need to
shift focus to the SciTE output pane and text entry there is line oriented,
requiring "Enter" before sending to irb. This may work, producing a Tools |
irb menu item, when added to the end of your ruby.properties file with the
path fixed to suit your Ruby installation:

 command.name.0.*.rb=irb
 command.0.*.rb=ruby c:\ruby\bin\irb $(FileNameExt)
 command.subsystem.0.*.rb=0

   For ruby/samples/hello.rb this gave:

>ruby c:\ruby\bin\irb hello.rb
hello.rb(main):001:0> class Hello
hello.rb(main):002:1>     attr_reader :msg
hello.rb(main):003:1>     def initialize
hello.rb(main):004:2>         @msg = "Hello, World"
hello.rb(main):005:2>     end
hello.rb(main):006:1> end
nil
hello.rb(main):007:0>
hello.rb(main):008:0* h = Hello.new
#<Hello:0x2ab5f28 @msg="Hello, World">
hello.rb(main):009:0> puts h.msg
Hello, World
nil
hello.rb(main):010:0> print "Press RETURN"
Press RETURNnil
hello.rb(main):011:0> $stdin.gets
x
"x\n"
hello.rb(main):012:0> nil
>Exit code: 0

   If the $(FileNameExt) is removed then you should see an empty irb
session.

   SciTE can run Ruby scripts either through the Go command implemented in
the download package or some variant such as defining

command.go.*.rb=ruby $(FileNameExt)

   There are various complexities involved in running different types of
Ruby program such as those that show a GUI or are interactive. RubyWin looks
like it has a Ruby interpreter and irb built in so it is a better bet for
interaction. SciTE is not linked to Ruby at all (as it is a generic editor)
and uses external processes for all tools.

> Any other ideas on how to live with multi-file projects would be
> welcome.

   For SciTE, turn on buffers and automatic save and load on activate and
deactivate:

buffers=10
load.on.activate=1
save.on.deactivate=1

   Neil