| TextMate-JumpTo documentation | view source | Contained in the TextMate-JumpTo distribution. |
TextMate::JumpTo - Tell TextMate to jump to a particular file, line
This document describes TextMate::JumpTo version 0.07
use TextMate::JumpTo qw(jumpto tm_location);
jumpto( file => 'mysrc.pl', line => 123 );
my $textmate_link = tm_location( file => 'foo.t', line => 12 );
On Mac OS The TextMate editor handles urls of the form
txmt://open?url=file://somefile.pl&line=100
which cause it to jump to the file, line and column specified by the arguments. This module is a simple wrapper which uses the Mac OS 'open' command to send TextMate to the specified location.
I use it in my ~/.perldb to have TextMate track the current debugger position. Here's what it looks like:
$ cat ~/.perldb
use TextMate::JumpTo qw(jumpto);
use File::Spec;
sub afterinit {
$trace |= 4; # Enable watchfunction
# Needed to work out where filenames are relative to
chomp( $base_dir = `pwd` );
$option{animate} = 0;
push @options, 'animate';
}
sub watchfunction {
my ( $package, $file, $line ) = @_;
return unless $DB::single || $option{animate};
local $trace = 0;
if ( $file =~ /^\(eval\s+\d+\)\[(.+?):(\d+)\]/ ) {
$file = $1;
$line += $2 - 1;
}
$file = File::Spec->rel2abs( $file, $base_dir );
jumpto( file => $file, line => $line, bg => 1 );
return 1;
}
jumptoInstruct TextMate to jump to the specified file, line and column. The arguments are a list of key, value pairs:
jumpto( file => 'splendid.pl', line => 12, column => 3 );
Possible arguments are:
fileThe path to the file to go to.
lineThe (one based) line number to go to.
columnThe (one based) column to go to.
bgTrue to leave TextMate in the background. By default a call to jumpto
will bring TextMate to the foreground.
tm_locationGet a URL using the txmt: scheme that jumps to the specified
location. Arguments as for jumpto with the exeception of the bg
switch which makes no sense in this context.
my $loc = tm_location( file => 'humbile.pm', line => 42 );
TextMate::JumpTo requires no configuration files or environment variables.
None.
None reported.
No bugs have been reported.
Please report any bugs or feature requests to
bug-textmate-jumpto@rt.cpan.org, or through the web interface at
http://rt.cpan.org.
Andy Armstrong <andy@hexten.net>
Copyright (c) 2008, Andy Armstrong <andy@hexten.net>.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.
| TextMate-JumpTo documentation | view source | Contained in the TextMate-JumpTo distribution. |