|
View:
New views
10 Messages
—
Rating Filter:
Alert me
|
|
|
Cannot get FreeRIDE to workI'm trying to get ready to teach a Ruby class later this
summer, and I was hoping to use FreeRIDE. It looks nice, it just doesn't work at all. On my office machine, if I enter a program such as: puts "Hello" and try to run it, I get: >ruby C:\Ruby\hello.rb >exit On my computer at home I somehow managed to get output from one program, but not from another. In the process of moving files, uninstalling and reinstalling FreeRIDE, I apparently broke something, and now when I open FreeRIDE it opens for a fraction of a second and immediately quits. Probably I screwed up the registry or something (I'm a programmer, not a sysadmin). Unless some sainted person is willing to give me explicit instructions on how to recover, I'll have to count FreeRIDE as forever dead on that machine. BTW, the Eclipse RDT plugin works great; but not all of my students will know Eclipse. Thanks for any help anyone can give me. And apologies if I'm posting in the wrong place (I'm a Ruby newbie....) --Dave Matuszek matuszek@... _______________________________________________ Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users |
|
|
Re: Cannot get FreeRIDE to workI'm assuming you're running the one-click installer, and the FreeRIDE it contains.
Open a command window and navigate to to ruby\freeride and then type "run.bat". Now, if there are any error messages, they won't disappear a fraction of a second later. You can also try deleting the saved FreeRIDE preference files by deleting the directory %USERPROFILE%\freeride (it will be automatically recreated the next time you run FreeRIDE). Curt
On 6/1/06, Dave Matuszek <matuszek@...> wrote: I'm trying to get ready to teach a Ruby class later this _______________________________________________ Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users |
|
|
Re: Cannot get FreeRIDE to workHi Curt. Thanks for the very prompt reply; I wish I could try
it out right away, but I'm currently at work (where FreeRIDE appears to work, I just never get any output). Nevertheless, I tried running directly from run.bat--as expected, FreeRIDE works as before (runs, no output). Not sure what you meant by "%USERPROFILE%\freeride". I did find a directory "Matuszek/freeride", but deleting (actually, renaming) that caused FreeRIDE to ask for a Ruby interpreter. I found one (the one used by Eclipse; everything I download includes yet another Ruby interpreter), but FreeRIDE didn't like that one, so I reverted to the old directory. Sorry to be such a nuisance, but I hope you'll continue to help me with this. --Dave Curt Hibbs wrote: > I'm assuming you're running the one-click installer, and the FreeRIDE it > contains. > > Open a command window and navigate to to ruby\freeride and then type > "run.bat". Now, if there are any error messages, they won't disappear a > fraction of a second later. > > You can also try deleting the saved FreeRIDE preference files by > deleting the directory %USERPROFILE%\freeride (it will be automatically > recreated the next time you run FreeRIDE). > > Curt > > On 6/1/06, *Dave Matuszek* <matuszek@... > <mailto:matuszek@...>> wrote: > > I'm trying to get ready to teach a Ruby class later this > summer, and I was hoping to use FreeRIDE. It looks nice, > it just doesn't work at all. > > On my office machine, if I enter a program such as: > puts "Hello" > and try to run it, I get: > >ruby C:\Ruby\hello.rb > >exit > > On my computer at home I somehow managed to get output from > one program, but not from another. In the process of moving > files, uninstalling and reinstalling FreeRIDE, I apparently > broke something, and now when I open FreeRIDE it opens for > a fraction of a second and immediately quits. Probably I > screwed up the registry or something (I'm a programmer, not > a sysadmin). Unless some sainted person is willing to give me > explicit instructions on how to recover, I'll have to count > FreeRIDE as forever dead on that machine. > > BTW, the Eclipse RDT plugin works great; but not all of my > students will know Eclipse. > > Thanks for any help anyone can give me. And apologies if I'm > posting in the wrong place (I'm a Ruby newbie....) > > --Dave Matuszek > matuszek@... <mailto:matuszek@...> > _______________________________________________ > Freeride-users mailing list > Freeride-users@... <mailto:Freeride-users@...> > http://rubyforge.org/mailman/listinfo/freeride-users > > > > ------------------------------------------------------------------------ > > _______________________________________________ > Freeride-users mailing list > Freeride-users@... > http://rubyforge.org/mailman/listinfo/freeride-users Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users |
|
|
Re: Cannot get FreeRIDE to workDo I understand correctly that you've managed to get FreeRIDE itself working, but when you execute a script you can't see the output it should produce? If that's the case then I might a have solution. Attached to this email are two files: fox_debugger_configurator.rb and script_runner.rb, copy these file to respectively: plugins\rubyide_tools_fox_debugger and plugins\rubyide_tools_fox_script_runner. Be sure to rename the old files, just in case it fails to work. When executing a script you should see the output in a DOS-box, granted that you've checked the "Run in terminal" preference. If, on your other machine, you can't get FreeRIDE itself to work it usually is a problem with an old configuration file as Curt pointed out. I hope this helps, please let me/us know in either case. With kind regards Jonathan Dave Matuszek wrote: Hi Curt. Thanks for the very prompt reply; I wish I could try it out right away, but I'm currently at work (where FreeRIDE appears to work, I just never get any output). Nevertheless, I tried running directly from run.bat--as expected, FreeRIDE works as before (runs, no output). Not sure what you meant by "%USERPROFILE%\freeride". I did find a directory "Matuszek/freeride", but deleting (actually, renaming) that caused FreeRIDE to ask for a Ruby interpreter. I found one (the one used by Eclipse; everything I download includes yet another Ruby interpreter), but FreeRIDE didn't like that one, so I reverted to the old directory. Sorry to be such a nuisance, but I hope you'll continue to help me with this. --Dave Curt Hibbs wrote:I'm assuming you're running the one-click installer, and the FreeRIDE it contains. Open a command window and navigate to to ruby\freeride and then type "run.bat". Now, if there are any error messages, they won't disappear a fraction of a second later. You can also try deleting the saved FreeRIDE preference files by deleting the directory %USERPROFILE%\freeride (it will be automatically recreated the next time you run FreeRIDE). Curt On 6/1/06, *Dave Matuszek* <matuszek@... matuszek@...> wrote: I'm trying to get ready to teach a Ruby class later this summer, and I was hoping to use FreeRIDE. It looks nice, it just doesn't work at all. On my office machine, if I enter a program such as: puts "Hello" and try to run it, I get: >ruby C:\Ruby\hello.rb >exit On my computer at home I somehow managed to get output from one program, but not from another. In the process of moving files, uninstalling and reinstalling FreeRIDE, I apparently broke something, and now when I open FreeRIDE it opens for a fraction of a second and immediately quits. Probably I screwed up the registry or something (I'm a programmer, not a sysadmin). Unless some sainted person is willing to give me explicit instructions on how to recover, I'll have to count FreeRIDE as forever dead on that machine. BTW, the Eclipse RDT plugin works great; but not all of my students will know Eclipse. Thanks for any help anyone can give me. And apologies if I'm posting in the wrong place (I'm a Ruby newbie....) --Dave Matuszek matuszek@... matuszek@... _______________________________________________ Freeride-users mailing list Freeride-users@... Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users ------------------------------------------------------------------------ _______________________________________________ Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users_______________________________________________ Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users # Purpose: Run ruby script and show output # # $Id: script_runner.rb,v 1.32 2006/02/26 14:25:19 jonathanm Exp $ # # Authors: Rich Kilmer <rich@...> # Contributors: # # This file is part of the FreeRIDE project # # This application is free software; you can redistribute it and/or # modify it under the terms of the Ruby license defined in the # COPYING file. # # Copyright (c) 2002 Rich Kilmer All rights reserved. # Modified by L. Julliard 2003, 2004 # #require 'win32_popen' if RUBY_PLATFORM =~ /(mswin32|mingw32)/ require "find" module FreeRIDE class ScriptRunner extend FreeBASE::StandardPlugin include Fox def self.start(plugin) @plugin = plugin @@script_runner = nil # Handle icons plugin['/system/ui/icons/ScriptRunner'].subscribe do |event, slot| if event == :notify_slot_add app = plugin['/system/ui/fox/FXApp'].data path = "#{plugin.plugin_configuration.full_base_path}/icons/#{slot.name}.png" if FileTest.exist?(path) slot.data = Fox::FXPNGIcon.new(app, File.open(path, "rb").read) slot.data.create end end end cmd_mgr = plugin["/system/ui/commands"].manager cmd_run = cmd_mgr.add("App/Run/RunScript","&Run") do |cmd_slot| @@script_runner.kill if @@script_runner ep = plugin["/system/ui/current/EditPane"] prj = plugin["/project"].manager.get_project_for_editpane(ep) @@script_runner = ScriptRunner.new(prj) end plugin["/system/ui/keys"].manager.bind("App/Run/RunScript", :F5) # Make run command available at start time only if there is an edit # pane opened cmd_run.availability = plugin['/system/ui/current'].has_child?('EditPane') cmd_run.icon = "/system/ui/icons/ScriptRunner/run" plugin["/system/ui/current/ToolBar"].manager.add_command("Run", "App/Run/RunScript") cmd_run.manage_availability do |command| plugin['/system/ui/current'].subscribe do |event, slot| if slot.name=="EditPane" case event when :notify_slot_link command.availability=true when :notify_slot_unlink command.availability=false end end end end # now set up the stop icon and menu item cmd_stop = cmd_mgr.add("App/Run/StopScript","&Stop") do |cmd_slot| @@script_runner.kill if @@script_runner end plugin["/system/ui/keys"].manager.bind("App/Run/StopScript", :ctrl, :F2) cmd_stop.icon = "/system/ui/icons/ScriptRunner/stop" plugin["/system/ui/current/ToolBar"].manager.add_command("Run", "App/Run/StopScript") cmd_clear = cmd_mgr.add("App/Run/ClearOutput","&Clear Output") do |cmd_slot| # FIXME: this is a hack to clear the script runner output # AND the debugger output. Ideally it should apply only to the # currently visible pane but it's not that easy to do. plugin["/system/ui/current/OutputPane"].manager.clear("Run") ep_slot = plugin["/system/ui/current/EditPane"] ep_slot['actions/clear_errorline'].invoke dbg = plugin["/system/ui/current/Debugger"] dbg.manager.clear() if dbg.is_link_slot? end plugin["/system/ui/keys"].manager.bind("App/Run/ClearOutput", :ctrl, :F5) cmd_clear.icon = "/system/ui/icons/ScriptRunner/clear" plugin["/system/ui/current/ToolBar"].manager.add_command("Run", "App/Run/ClearOutput") # Insert the inspector in the Tools menu runmenu = plugin["/system/ui/components/MenuPane/Run_menu"].manager runmenu.add_command("App/Run/RunScript") runmenu.add_command("App/Run/StopScript") runmenu.add_command("App/Run/ClearOutput") plugin.transition(FreeBASE::RUNNING) end # plugin should point to the project-slot of the project to run. # The project determines the run-settings. def initialize(plugin) @plugin = plugin["/plugins/rubyide_tools_fox_script_runner"].manager @dbg_plugin = plugin['/plugins/rubyide_tools_debugger'].manager @cmd_mgr = plugin["/system/ui/commands"].manager @setting_props = plugin.manager.properties @ep_slot = plugin["/system/ui/current/EditPane"] if @setting_props['save_before_running'] @cmd_mgr.command("App/File/SaveAll").invoke else @ep_slot.manager.save_as if @ep_slot.manager.new? end @ep_slot['actions/clear_errorline'].invoke command = construct_run_command #puts "command: #{command}" return unless command # use a mutx to avoid calling the stop method (and hence detach_stdout) # from 2 concurrent places (waitpid thread and FOX input handler) @mutex = Mutex.new plugin["/system/ui/current/OutputPane"].manager.show plugin["/system/ui/current/OutputPane"].manager.attach_input(method(:keyboard_input)) plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>>ruby #{@file}\n") if !@setting_props['run_in_terminal'] && RUBY_PLATFORM =~ /(mswin32|mingw32)/ plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>*** WARNING *** Windows users should check the \"Run process in terminal\" check box in the Debugger Preferences\nto see STDOUT and STDERR output in real time.\n") end # run popen on both Linux and Windows. No popen3 as in the # debugger because it is then impossible to keep the synchronization # between STDOUT and STDERR output if RUBY_PLATFORM =~ /(mswin32|mingw32)/ #@inp, @out = IO.win32_popen2(command,"t") @inp = @out = IO.popen(command,"w+") else @inp = @out = IO.popen(command,"w+") end #puts "pid = #{@out.pid}" #@inp.print "pid\n" #@pid = @out.gets.to_i # get remote process ID @pid = @out.pid t = Thread.new(@pid) { |pid| begin Process.waitpid(pid,0) rescue # No child processes (Errno::ECHILD) can happen if process KILLed ensure # this little nap is necessary to avoid a fatal race condition # between the detach_stdout called from here and the detach_stdout # called from attach_stdout when EOFError is raised after the # child process stopped. # Note: I tried Thread.critical and mutex.synchronize in # attach_stdout and detach_stdout but it kept crashing occasionally sleep 0.1 stop end } attach_stdout(@out) attach_stdin(@inp) status("Ruby Process Running (PID= #{@pid})") @@script_runner = self #begin # @inp.print "go\n" # resume remote process #rescue # cmd_mgr.command('App/Services/MessageBox').invoke('ERROR!', 'Unexpected Error while launching the script') #end @previous_trap_handler = trap("SIGINT") do puts "Ruby Process Interrupted (PID = #{@pid})" self.kill t.kill if t.alive? end end ## # # def construct_run_command if @setting_props['run_in_terminal'] && RUBY_PLATFORM =~ /(mswin32|mingw32)/ starter_file = File.join("#{@plugin.plugin_configuration.full_base_path}","script_starter_with_pause.rb") else starter_file = File.join("#{@plugin.plugin_configuration.full_base_path}","script_starter.rb") end # Get the ruby-interpreter to use if @setting_props['interpreter'] int_name = @setting_props['interpreter'] ruby_path = (@dbg_plugin.properties['interpreters'])[int_name]['command'] else ruby_path = @dbg_plugin.properties['path_to_ruby'] end unless FileTest.exist?(ruby_path) @cmd_mgr.command('App/Services/MessageBox').invoke("Where is Ruby?", "I can't find the default Ruby interpreter. Please configure the path to ruby in the Debugger/Run preference box") return end exec_args = @setting_props['cmd_line_options'] @file = @ep_slot.manager.filename exec_dir = @setting_props['working_dir'] exec_dir = File.expand_path(File.dirname(@file)) if (exec_dir == '' || exec_dir == nil) @exec_dir = exec_dir command = "#{ruby_path} -C \"#{exec_dir}\" -r \"#{starter_file}\" " if @setting_props["name"] != "Default Project" @setting_props["source_directories"].each do |s| command += " -I \"#{s}\"" end @setting_props["required_directories"].each do |r| command += " -I \"#{r}\"" end end command += " \"#{@file}\" #{exec_args}" if @setting_props['run_in_terminal'] if RUBY_PLATFORM =~ /(mswin32|mingw32)/ command = "start CMD /C "+command else command = "xterm -e '"+command+"; read -p \"Press ENTER to close the window...\"'" end end command end ## # kill the running process # def kill @killed = true begin puts "Killing #{@pid}" Process.kill("SIGKILL", @pid) rescue # in case the process already died - do nothing ensure stop(true) end end ## # stop the running process # def stop(killed=false) # if pid is nil then it means we already ran the stop method return if @pid.nil? detach_stdout(@out) detach_stdin(@inp) @out.close unless @out.closed? @inp.close unless @inp.closed? if killed @plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>>Process Interrupted!!\n") status("Ruby Process Interrupted (PID = #{@pid})") else @plugin["/system/ui/current/OutputPane"].manager.append("Run", "<CMD>>exit\n") status("Ruby Process Exited (PID = #{@pid})") end @pid = nil @@script_runner = nil @killed = nil trap("SIGINT",@previous_trap_handler) end ## # monitor the script stdout and print any incoming text # to the script runner text console # def attach_stdout(fh) getApp().addInput(fh, INPUT_READ|INPUT_EXCEPT) do |sender, sel, ptr| case FXSELTYPE(sel) when SEL_IO_READ begin text = fh.sysread(5000) print_stdout(text) check_error(text) rescue EOFError, IOError detach_stdout(fh) end when SEL_IO_EXCEPT puts 'onPipeExcept' end end end ## # attach stdin of script to the renderer # def attach_stdin(fh) # Nothing to do end ## # Detach the stdout input from the text console # def detach_stdout(fh) unless fh.nil? || fh.closed? getApp().removeInput(fh, INPUT_READ|INPUT_EXCEPT) end end ## # Detach the stdin from the text console # def detach_stdin(fh) # Nothing to do end ## # print script stdout to text console # def print_stdout(text) @plugin["/system/ui/current/OutputPane"].manager.append("Run", text) end ## # check text output of remote process for error # def check_error(text) # if there is an error message then point the faulty line in the editpane # open the file if not already loaded in one of the Edit panes. # If line is nil it removes the line marker, If file is nil do nothing if text =~ /\s*(.*\.rb):(\d+):/ err_file, line = $1, $2 err_file = File.expand_path(File.join(@exec_dir,err_file)) unless File.absolute_path?(err_file) ep_slot = @cmd_mgr.command("EditPane/FindFile").invoke(err_file) #puts "err_file: #{err_file}, line: #{line}, ep_slot: #{ep_slot}" ep_slot = @cmd_mgr.command("App/File/Load").invoke(err_file) if ep_slot.nil? unless ep_slot.nil? # just in case file loading went wrong ep_slot['actions/make_current'].invoke unless ep_slot.nil? ep_slot['actions/show_errorline'].invoke(line) end end end ## # Return the FOX FXApp global variable # def getApp @plugin['/system/ui/fox/FXApp'].data end ## # Prompt a message in the status bar # def status(msg) @plugin['/system/ui/current/StatusBar/actions/prompt'].invoke(msg) end def keyboard_input(text) # send user input to remote process unless pipe is closed. unless @inp.nil? || @inp.closed? begin if (text[0] == 13) @inp.syswrite("\n") else @inp.syswrite(text) end rescue # rescue a possible Errno::EPIPE (linux) or invalid argument (win32) # exception if the pipe was broken while we were buffering # keyboard input from FOX end end end end end # Purpose: Setup and initialize the dock bar gui interfaces # # $Id: fox_debugger_configurator.rb,v 1.11 2006/02/26 14:25:19 jonathanm Exp $ # # Authors: Laurent Julliard <laurent AT moldus DOT org> # Contributors: Richard Kilmer <rich@...> # # This file is part of the FreeRIDE project # # This application is free software; you can redistribute it and/or # modify it under the terms of the Ruby license defined in the # COPYING file. # # Copyright (c) 2002 Laurent Julliard. All rights reserved. # begin require 'rubygems' require_gem 'fxruby', '>= 1.2.0' rescue LoadError require 'fox12' end require 'fox12/colors' require 'rubyide_tools_fox_debugger/fox_ruby_configurator' module FreeRIDE module FoxRenderer module DebuggerRenderFox include Fox class DebuggerConfiguratorRenderer include Fox ICON_PATH = "/system/ui/icons/Debugger" def initialize(plugin) @plugin = plugin @dbg_plugin = @plugin['/plugins/rubyide_tools_debugger'].manager main = plugin['/system/ui/fox/FXMainWindow'].data # create the config pane UI. Parent it to the main window for now # config_pane = FXVerticalFrame.new(main, FRAME_NONE|LAYOUT_FILL_X|LAYOUT_FILL_Y) group1 = FXGroupBox.new(config_pane, "Runtime Parameters", GROUPBOX_TITLE_LEFT|FRAME_RIDGE|LAYOUT_FILL_X|LAYOUT_FILL_Y) group1_frm = FXVerticalFrame.new(group1, FRAME_NONE|LAYOUT_FILL_X|LAYOUT_FILL_Y) FXLabel.new(group1_frm,"Ruby interpreter to use:",nil,JUSTIFY_LEFT|LAYOUT_TOP|LAYOUT_LEFT) @il = FXComboBox.new(group1_frm, 0, nil, 0, COMBOBOX_NORMAL|LAYOUT_FILL_X|FRAME_THICK) @il.setNumVisible(4) FXLabel.new(group1_frm,"Command line options:",nil,JUSTIFY_LEFT|LAYOUT_TOP|LAYOUT_LEFT) @clo = FXTextField.new(group1_frm, 2, nil, 0, (LAYOUT_TOP|LAYOUT_FILL_X|LAYOUT_FILL_COLUMN|FRAME_THICK)) FXLabel.new(group1_frm,"Working directory:",nil,JUSTIFY_LEFT|LAYOUT_TOP|LAYOUT_LEFT) @wd = FXTextField.new(group1_frm, 2, nil, 0, (LAYOUT_TOP|LAYOUT_FILL_X|LAYOUT_FILL_COLUMN|FRAME_THICK)) @sbr = FXCheckButton.new(config_pane, "Save files before running/debug...", nil, 0, ICON_BEFORE_TEXT|LAYOUT_SIDE_TOP) @dbr = FXCheckButton.new(config_pane, "Display dialog before running/debug... (not implemented yet)", nil, 0, ICON_BEFORE_TEXT|LAYOUT_SIDE_TOP) @dbr.disable @rit = FXCheckButton.new(config_pane, "Run process in terminal", nil, 0, ICON_BEFORE_TEXT|LAYOUT_SIDE_TOP) config_pane.create config_pane.hide # Each and every config pane must define the following attributes: # - the config pane manager must be 'self' # - attr_icon is a smal size icon that will show up in the configuration # tree of the configurator dialog box # - attr_label is the label that will appear next to the icon (see previous point) # - attr_description contains a longer description # - attr_frame is the FOX dialog box object to insert in the configuration # dialog box # # Several configuration pane can be defined by a plugin either at # the same level or hierarchically e.g # configurator/Debugger # configurator/Run # configurator/Run/Profiling # plugin['configurator'].manager = self pcfg = plugin["configurator/Debugger"] pcfg.attr_icon = plugin[ICON_PATH+'/startDebugger'].data pcfg.attr_label = 'Debugger/Run' pcfg.attr_description = 'Debugger/Run Settings' pcfg.attr_frame = config_pane # Construct the ruby-interpreter configuration sub-panel @ruby_configurator = RubyConfiguratorRenderer.new(plugin) end ## # set_properties is a method called by the configurator plugin # whenever the "Apply" button is used to save the new plugin # settings # # config_slot: input parameter passed by the configurator plugin # in case there are several configuration pane for the same plugin # def set_config_properties(config_slot) dbg_props = @plugin['/project/active/default'].manager.properties case config_slot.name when 'Debugger' default_interpreter = @il.getItemText(@il.getCurrentItem) dbg_props['default_interpreter'] = default_interpreter @dbg_plugin.properties['interpreters'].each do |key, val| if key == default_interpreter dbg_props['path_to_ruby'] = val["command"] break end end dbg_props['cmd_line_options'] = @clo.text dbg_props['working_dir'] = @wd.text dbg_props['config_before_running'] = @dbr.checkState == 1 dbg_props['save_before_running'] = @sbr.checkState == 1 dbg_props['run_in_terminal'] = @rit.checkState == 1 dbg_props.save when 'Ruby' @ruby_configurator.save_properties end @dbg_plugin.log_info << "Setting Debugger/Run properties" end ## # get_properties is a method called by the configurator plugin # whenever the configuration panel of a given plugin is dislayed # and the current settings must be displayed. # # config_slot: input parameter passed by the configurator plugin # in case there are several configuration pane for the same plugin # def get_config_properties(config_slot) dbg_props = @plugin['/project/active/default'].manager.properties case config_slot.name when 'Debugger' @il.clearItems if @dbg_plugin.properties['interpreters'] @dbg_plugin.properties['interpreters'].each do |key, val| @il.appendItem(key) end end default_interpreter = dbg_props['default_interpreter'] if default_interpreter @il.getNumItems.times do |idx| if @il.getItem(idx) == default_interpreter @il.setCurrentItem(idx) break end end end @clo.text = dbg_props['cmd_line_options'] || "" @wd.text = dbg_props['working_dir'] || "" @dbr.check = dbg_props['config_before_running'] || false @sbr.check = dbg_props['save_before_running'] || false @rit.check = dbg_props['run_in_terminal'] || false when 'Ruby' @ruby_configurator.load_properties end @dbg_plugin.log_info << "Getting Debugger/Run properties" end ## # def modified?(config_slot) case config_slot.name when 'Debugger' return !( cmp_prop('default_interpreter', @il.getItemText(@il.getCurrentItem)) and cmp_prop('cmd_line_options', @clo.text) and cmp_prop('working_dir', @wd.text) and cmp_prop('config_before_running', @dbr.check, false) and cmp_prop('save_before_running', @sbr.check, false) and cmp_prop('run_in_terminal', @rit.check, false) ) when 'Ruby' return @ruby_configurator.modified? end end ## # Method compares the property with name prop_name to val # if the named property is nil, then val is compared to the default value def cmp_prop(prop_name, val, default='') p = @plugin['/project/active/default'].manager.properties[prop_name] return val==p if p return val==default end end #Class ConfiguratorRenderer end end end _______________________________________________ Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users |
|
|
Re: Cannot get FreeRIDE to workHi Jonathan,
Trying your suggestion, I first get: >ruby C:\Ruby\hello.rb *** WARNING *** Windows users should check the "Run process in terminal" check box in the Debugger Preferences to see STDOUT and STDERR output in real time. >exit but still no output. Checking the indicated check box makes this message go away, and when I run my program puts "Hello" now a DOS window flashes on the screen. I think that window also has no output in it; at any rate, changing my program to read puts "Hello" for i in 1..1000000 puts i end makes no visible difference. (Also adding a 'gets' in the program has no visible effect.) I now think the program just isn't being run, because adding a few zeros to the above doesn't slow anything down. Maybe I'm not using the IDE correctly? I have the edit tab open to this program, and I choose Run -> Run, or I hit F5. Is there something special I should do to "bless" this file? In all cases, I just get the DOS flash. I know FreeRIDE is _finding_ Ruby, because its irb works fine. Thanks, Dave Jonathan Maasland wrote: > Hi Dave, > > Do I understand correctly that you've managed to get FreeRIDE itself > working, but when you execute a script you can't see the output it > should produce? If that's the case then I might a have solution. > > Attached to this email are two files: fox_debugger_configurator.rb and > script_runner.rb, copy these file to respectively: > plugins\rubyide_tools_fox_debugger and > plugins\rubyide_tools_fox_script_runner. Be sure to rename the old > files, just in case it fails to work. When executing a script you should > see the output in a DOS-box, granted that you've checked the "Run in > terminal" preference. > > If, on your other machine, you can't get FreeRIDE itself to work it > usually is a problem with an old configuration file as Curt pointed out. > > I hope this helps, please let me/us know in either case. > > With kind regards > Jonathan > > Dave Matuszek wrote: > >>Hi Curt. Thanks for the very prompt reply; I wish I could try >>it out right away, but I'm currently at work (where FreeRIDE >>appears to work, I just never get any output). >> >>Nevertheless, I tried running directly from run.bat--as expected, >>FreeRIDE works as before (runs, no output). >> >>Not sure what you meant by "%USERPROFILE%\freeride". I did find >>a directory "Matuszek/freeride", but deleting (actually, renaming) >>that caused FreeRIDE to ask for a Ruby interpreter. I found one >>(the one used by Eclipse; everything I download includes yet another >>Ruby interpreter), but FreeRIDE didn't like that one, so I reverted >>to the old directory. >> >>Sorry to be such a nuisance, but I hope you'll continue to help >>me with this. >> >>--Dave >> >> >>Curt Hibbs wrote: >> >> >>>I'm assuming you're running the one-click installer, and the FreeRIDE it >>>contains. >>> >>>Open a command window and navigate to to ruby\freeride and then type >>>"run.bat". Now, if there are any error messages, they won't disappear a >>>fraction of a second later. >>> >>>You can also try deleting the saved FreeRIDE preference files by >>>deleting the directory %USERPROFILE%\freeride (it will be automatically >>>recreated the next time you run FreeRIDE). >>> >>>Curt >>> >>>On 6/1/06, *Dave Matuszek* <matuszek@... >>><mailto:matuszek@...>> wrote: >>> >>> I'm trying to get ready to teach a Ruby class later this >>> summer, and I was hoping to use FreeRIDE. It looks nice, >>> it just doesn't work at all. >>> >>> On my office machine, if I enter a program such as: >>> puts "Hello" >>> and try to run it, I get: >>> >ruby C:\Ruby\hello.rb >>> >exit >>> >>> On my computer at home I somehow managed to get output from >>> one program, but not from another. In the process of moving >>> files, uninstalling and reinstalling FreeRIDE, I apparently >>> broke something, and now when I open FreeRIDE it opens for >>> a fraction of a second and immediately quits. Probably I >>> screwed up the registry or something (I'm a programmer, not >>> a sysadmin). Unless some sainted person is willing to give me >>> explicit instructions on how to recover, I'll have to count >>> FreeRIDE as forever dead on that machine. >>> >>> BTW, the Eclipse RDT plugin works great; but not all of my >>> students will know Eclipse. >>> >>> Thanks for any help anyone can give me. And apologies if I'm >>> posting in the wrong place (I'm a Ruby newbie....) >>> >>> --Dave Matuszek >>> matuszek@... <mailto:matuszek@...> >>> _______________________________________________ >>> Freeride-users mailing list >>> Freeride-users@... <mailto:Freeride-users@...> >>> http://rubyforge.org/mailman/listinfo/freeride-users >>> >>> >>> >>>------------------------------------------------------------------------ >>> >>>_______________________________________________ >>>Freeride-users mailing list >>>Freeride-users@... >>>http://rubyforge.org/mailman/listinfo/freeride-users >>> >>> >>_______________________________________________ >>Freeride-users mailing list >>Freeride-users@... >>http://rubyforge.org/mailman/listinfo/freeride-users >> >> >> >> > > > ------------------------------------------------------------------------ > > _______________________________________________ > Freeride-users mailing list > Freeride-users@... > http://rubyforge.org/mailman/listinfo/freeride-users Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users |
|
|
Re: Cannot get FreeRIDE to workOn 6/1/06, Dave Matuszek <matuszek@...> wrote:
Hi Curt. Thanks for the very prompt reply; I wish I could try I was talking about this for the case where you said you had the dos-box momentarily appear on screen and then quickly disappear and FreeRIDE never starts up. Not sure what you meant by "%USERPROFILE%\freeride". I did find Assuming you are running Windows 2000 or Windows XP, Windows will have created a "home" folder for you, and the path to that home folder is contained in the environment variable USERPROFILE. FreeRIDE will have create a subdirectory off of this called "freeride". If you open a command window, you should be able to run these two commands: > cd %USERPROFILE% > dir and then see the contents of your home directory. Just delete freeride subdirectory. Curt Sorry to be such a nuisance, but I hope you'll continue to help _______________________________________________ Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users |
|
|
Re: Cannot get FreeRIDE to workI'm sorry the proposed solution didn't work. Looking at the code right now I haven't a clue where it might go amiss. Could you tell me which specific version of Ruby you are using? (ruby -v) Are you running Windows XP or 98/ME? If you have the time could you add a "puts command" to plugins/rubyide_tools_fox_script_runner/script_runner.rb on line 235, at the end of the construct_run_command and tell me what it reads? Also you could look at %USERPROFILE%/freeride/config/freeride.log to see if it mentions something odd. Thanks very much for the feedback thusfar. Kind regards, Jonathan Dave Matuszek wrote:
_______________________________________________ Freeride-users mailing list Freeride-users@... http://rubyforge.org/mailman/listinfo/freeride-users |
|
|
Re: Cannot get FreeRIDE to workHi Jonathan,
I added 'puts command' just before the 'command' return value. Here's the result (sorry about the wrap). C:\Programming\FreeRIDE>freeruby-win\bin\ruby.exe -rubygems freeride.rb start CMD /C C:\Programming\InstantRails\ruby\bin/rubyw.exe -C "C:/WorkspaceRuby " -r "C:/Programming/FreeRIDE/plugins/rubyide_tools_fox_script_runner/script_sta rter_with_pause.rb" "C:\WorkspaceRuby\what.rb" I sure don't see anything in the log file that looks like an error report. --Dave 2006-06-01 17:01:07 :: [INFO] --- FreeRIDE Started on Thu Jun 01 17:01:06 Eastern Standard Time 2006 2006-06-01 17:01:07 :: [INFO] Plugin(rubyide_gui-outputpane): OutputPane plugin started 2006-06-01 17:01:07 :: [INFO] Plugin(rubyide_fox_gui-appframe): AppFrame started 2006-06-01 17:01:07 :: [INFO] Plugin(rubyide_fox_gui-appframe): Dockbar UI components positioned OK! 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-statusbar): Status Bar 1 started 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-toolbar): ToolBar 1 started 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-editpane): iconpath : C:/Programming/FreeRIDE/plugins/rubyide_fox_gui/icons/editor.png 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-editpane): iconpath : C:/Programming/FreeRIDE/plugins/rubyide_fox_gui/icons/fonts.png 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-menubar): MenuBar 1 started 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockbar): DockBar south started 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockbar): DockBar south created 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockbar): DockBar west started 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockbar): DockBar west created 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): DockPane Renderer for /system/ui/components/DockPane/Output View/ created 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-outputpane): OutputPane Renderer plugin started 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): Reparenting /system/ui/components/DockPane/Output View/ to /system/ui/components/DockBar/south 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): DockPane Renderer for /system/ui/components/DockPane/File View/ created 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): Reparenting /system/ui/components/DockPane/File View/ to /system/ui/components/DockBar/west 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_tools_fox_file_browser): FileBrowser plugin is running 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): DockPane Renderer for /system/ui/components/DockPane/Source View/ created 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): Reparenting /system/ui/components/DockPane/Source View/ to /system/ui/components/DockBar/west 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_tools_fox_source_browser): SourceBrowser plugin started 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): DockPane Renderer for /system/ui/components/DockPane/Project Explorer/ created 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-dockpane): Reparenting /system/ui/components/DockPane/Project Explorer/ to /system/ui/components/DockBar/west 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_tools_fox_project_explorer): ProjectExplorer is running 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_project): Opening project files 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-editpane): Setting All Editpane properties 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-editpane): EditPane created 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_fox_gui-editpane): iconpath : C:/Programming/FreeRIDE/plugins/rubyide_fox_gui/icons/modified.png 2006-06-01 17:01:08 :: [INFO] Plugin(rubyide_tools_fox_project_explorer): Adding project JustTesting to project-explorer 2006-06-01 17:01:09 :: [INFO] Plugin(rubyide_tools_fox_project_explorer): ProjectExplorer started succesfully Jonathan Maasland wrote: > Dave, > > I'm sorry the proposed solution didn't work. Looking at the code right > now I haven't a clue where it might go amiss. Could you tell me which > specific version of Ruby you are using? (ruby -v) > Are you running Windows XP or 98/ME? > > If you have the time could you add a "puts command" to > plugins/rubyide_tools_fox_script_runner/script_runner.rb on line 235, at > the end of the construct_run_command and tell me what it reads? > > Also you could look at %USERPROFILE%/freeride/config/freeride.log to see > if it mentions something odd. > > Thanks very much for the feedback thusfar. > > Kind regards, > Jonathan > > Dave Matuszek wrote: > >>Hi Jonathan, >> >>Trying your suggestion, I first get: >> >> >ruby C:\Ruby\hello.rb >> *** WARNING *** Windows users should check the "Run process in >> terminal" check box in the Debugger Preferences >> to see STDOUT and STDERR output in real time. >> >exit >> >>but still no output. Checking the indicated check box makes this >>message go away, and when I run my program >> >> puts "Hello" >> >>now a DOS window flashes on the screen. I think that window also has >>no output in it; at any rate, changing my program to read >> >> puts "Hello" >> for i in 1..1000000 >> puts i >> end >> >>makes no visible difference. (Also adding a 'gets' in the program >>has no visible effect.) >> >>I now think the program just isn't being run, because adding a few >>zeros to the above doesn't slow anything down. Maybe I'm not using >>the IDE correctly? I have the edit tab open to this program, and >>I choose Run -> Run, or I hit F5. Is there something special I should >>do to "bless" this file? In all cases, I just get the DOS flash. >>I know FreeRIDE is _finding_ Ruby, because its irb works fine. >> >>Thanks, >> Dave >> >> >>Jonathan Maasland wrote: >> >> >>>Hi Dave, >>> >>>Do I understand correctly that you've managed to get FreeRIDE itself >>>working, but when you execute a script you can't see the output it >>>should produce? If that's the case then I might a have solution. >>> >>>Attached to this email are two files: fox_debugger_configurator.rb and >>>script_runner.rb, copy these file to respectively: >>>plugins\rubyide_tools_fox_debugger and >>>plugins\rubyide_tools_fox_script_runner. Be sure to rename the old >>>files, just in case it fails to work. When executing a script you should >>>see the output in a DOS-box, granted that you've checked the "Run in >>>terminal" preference. >>> >>>If, on your other machine, you can't get FreeRIDE itself to work it >>>usually is a problem with an old configuration file as Curt pointed out. >>> >>>I hope this helps, please let me/us know in either case. >>> >>>With kind regards >>>Jonathan >>> >>>Dave Matuszek wrote: >>> >>> >>> >>>>Hi Curt. Thanks for the very prompt reply; I wish I could try >>>>it out right away, but I'm currently at work (where FreeRIDE >>>>appears to work, I just never get any output). >>>> >>>>Nevertheless, |