views:

249

answers:

5

Is there a unix based terminal (extension or app) that does link resolution.

In particular when I see things like:

/home/sam/.gem/ruby/1.8/gems/actionpack-2.3.2/lib/action_controller/benchmarking.rb:68:in `perform_action_without_rescue'
/home/sam/.gem/ruby/1.8/gems/activesupport-2.3.2/lib/active_support/core_ext/benchmark.rb:17:in `ms'
/home/sam/.gem/ruby/1.8/gems/activesupport-2.3.2/lib/active_support/core_ext/benchmark.rb:17:in `ms'

I would like to be able to click on:

/home/sam/.gem/ruby/1.8/gems/actionpack-2.3.2/lib/action_controller/benchmarking.rb

To open the file.

A: 

try the browser "links". Its amazing what it does in a console window.

Matthias Wandel
+2  A: 

urxvt supports this.

Luca Matteis
I cleaned up your first link target. Also, the configuration your second link points to doesn't handle links to local files, which OP apparently wants. While this is easy to add, you should detail this in your post.
ephemient
ephemient: thanks for changing to the *real* link :)
Luca Matteis
Yerp this is the only one that I could get to work. Its pretty tricky to set up.
Sam Saffron
A: 

gnome terminal (Ubuntu's default terminal app) has that feature.

Alex Martelli
Would you know how I activate it for local links ?
Sam Saffron
I think you could use the gnome configuration editor, see http://en.wikipedia.org/wiki/Gconf-editor -- or Mandrake's gconfpref, etc etc. No access to ubuntu right now (I'm at OSCON and my laptop's a mac;-) so I can't give detailed GUI-use tips.
Alex Martelli
A: 

I do not think any of the terminals available have this particular option of linkifying local filesystem links. For URLs, Konsole and GNOME Terminal work well.

Alan Haggai Alavi
A: 

You can sort-of accomplish what you want using xargs, gnome-open, and a simple script to filter the text so that the trailing detritus is removed. Basically, you could do something along the lines of:

compile | filtererrors | xargs gnome-open

Of course, you would have to write your own "filtererrors" program, but that shouldn't be too hard. Just read in each line. Find the first index of ':', and then print the line up to and excluding that index.

Michael Aaron Safyan