Arcadia Ruby Ide version 0.1.2.1
by Antonio Galeone on May 14, 2007
“Thank you for consider this project”
Arcadia is a Integrated Development Environment (IDE) for Ruby language written in Ruby using the classic tcl/tk GUI toolkit.
Some of Arcadia ruby ide project features include: -Editor with source browsing, syntax highlighting, code completion -Contextual ruby documentation -Supporting RAD gui building -Generation of widget-wrapper-independent ruby code
-Working on any platform where ruby and tcl-tk work. -Highly extensibility architecture.
-[fixed] 10726 - test arcadia on cygwin and config files updated
How to install
There are two way: 1)exec as root on command line “gem install arcadia” 2)a) untar (on unix) tar -xzf arcadia-<version>.tar.gz
b) unzip (on windows) arcadia-<version>.zip
How to run
exec on comman line “ruby arcadia.rb”
Short User guide
I hope that you perceive Arcadia gui enough user frindly. As you can see the application is splitted in vertical and horizontal resizing frames. Clicking on vertical splitter appear two button for left or right one shot frame close. The horizontal splitter has two little button for the same reason (perhaps i will conform them to the vertical style). Every frame has a title and a button to expand or resizing it. In this beta release there are very essential feature:
< Toolbar > The toolbar button are in order: -new, open, save (relatively to editor extension) -run current, run last
(for execute the raised file in the editor or the last file executed)
-debug current, debug last, stop debug
(for the debug extension that is in very unstable state)
-quit (to exit from arcadia)
< Editor > Editor use the notebook metaphor. Same command are on the popup menu that is raised on “Button-3” click event fundamentalally for closing the tab under the mouse pointer. These are same editor short-cut: Ctrl-c => copy selected text Ctrl-v => paste copied text Ctrl-x => cut selected text Ctrl-z => undo Ctrl-f => copy the selected text on input combobox of find dialog and moves focus Ctrl-s => save Ctrl-space => completion code Ctrl-shift-i => indent the selected block Ctrl-shift-u => unindent the selected block Ctrl-shift-c => comment/uncomment the selected code block F5 => execute the file F3 => find/ find next F1 => contextual ruby documentation (called from editor or from code completion item, if no corrispondation is founded a doc tree is build in left side)
Double-Click on line number set or unset a debug breckpoint
< File history > The last used files are organizing in tree so you can reopen them or there
directory by clicking on the tree node.
< Palette > It contain the wrapper components for the tk gui building. It is in very unstabled and incomplete state. The first component is a TkTopLevel wrapper, when you click on it a new form is created and a Object inspector appears. The other components must be first selected and then created by clicking on container widget. The so created widgets has a popup menu for deleting them or in the toplevel case to switch to a code view. On the palette there are also two button, one for deselect and other for copy from the selected created widget. The copy action copy also the code into the clipboard, so you can copy the code rapresenting the gui into the embedded editor or into external editor.
< Object Inspector > It is for modify the widget property at runtime
< Debug > It is created when a debug session init. The debug button are: Step Next, Step Into, Step Over, Resume. The debug frame show the local, instance and global variables for each step. (you must have patience!)
<Configuration> Same Arcadia properties are locally configurabled by editing the file arcadia.conf under ~/.arcadia directory. The format of property definition are: <OPERATING SYSTEM IDENTIFY::>PROPERTY_NAME=PROPERTY_VALUE
I include into distribution also the BWidget lib (under tcl directory) so are require realy only the standard tcl tk lib (tested on tcl tk 8.4). I have tested arcadia with ruby 1.8.4, 1.8.5, 1.8.6 on FreeBsd6.x, Vector linux 5.8, Windows 2000/XP, Cygwin (note: same page fault error on dll under cygwin may be solved in this way: by ash.exe exec “/bin/rebaseall”). If you will test arcadia on other operating system sends me an e-mail.
Soon i will write samething about the arcadia software architecture (when it is more stable) in order to allow extensions writing and collaborations.
Arcadia is released under the Ruby License