Aptana Radrails M7 Beta - First Impressions


I am an intensive user of Aptana Radrails M5 and has just updated to

Interface-wise, I can immediately see the following changes :-

  1. Rails Navigator has been replaced by Ruby Explorer

  2. 5 obviously new icons on the tool bar
    a) H - switch to Helper
    b) T - switch to Test
    c) M - switch to Model
    d) V - switch to Views
    e) C - switch to Controller

Curious, I selected my favourite project and click (a) - (e), nothing

Then, I opened the CustomerController which looks the same as in M3
Clicking H opened module customers_helper.rb
Clicking M opened module customer.rb
Clicking V asked for which action (using AS, N/A)
Clicking T opened customer_controller_test.rb

This is very convenient, Cool :slight_smile:

  1. Rails Plugin no longer automatically goto the home pages but links
    are clearly there thus speeding up

  2. Code completion/Code Snippet when one type

val or validates+ctrl+space inserts

validates_presence_of(attributes, :message => “message”)

  1. The Ruby Explorer is great in that via a tree structure, methods
    hyperlinked to the actaul method
    This is a nice feature absent in M5

More to come…

Just for comparison:

  1. We have two project views. A “script explorer”, which shows your
    project a directory structure, and a “Rails Explorer” (the default)
    that groups related things together and floats the most-used items up
    to the top. So at the top level you have a node for “controllers”,
    instead of two levels down. Open a controller and the actions and
    views are shown together.

  2. Code navigation
    “open associate”, available from the context menu or via ctrl+alt+N or
    via a ctrl-alt hyperlink will follow the Rails dispatch path. So if
    you are in a controller in a login method that has a login.rhtml view
    it will toggle between them. If the login action has a call to
    another action, a re-direct to another action, an explicit render of a
    view…it will follow that path. If there are multiple paths it gives
    you a choice, unless your cursor is on the line with the redirect/
    render/action call in which case it will just go there directly.

If the view doesn’t exist we’ll create it on the fly.

If a view is reachable from multiple actions and you use open
associate we will let you choose which one you go to.

The thinking here is that the normal workflow is to create/modify an
action and then create/modif a view to accomodate the changes. We
follow the same dispatch rules as Rails, so it’s very natural and you
can do your development in the same mindset.

  1. Other code navigation
  • If you want to go to a specific file a fast way is ctrl+shift+r
    (open resource), then start typing the name.
  • F3 to open the definition of a class – so if you are in a model on
    the first line (“class Mymodel << ActiveRecord::Base”) and you have
    your cursor on “Base” then F3 will open that class
  • On a method call (eg an action in a contrller) right click and
    select “open call hierarchy” will show you all the places this is
    called from, double click to navigate
  • ctrl+T on a ruby type will open the type hierarchy for navigation
    (not that useful in Rails app development IMO, more from Ruby coders)
  • ctrl+O opensa quick outline of the current file (say a controller
    with many methods), for easy navigation
  • And of course the dependency viewer, double click to jump to a
    dependent item or dependency