Views
Con Nautilus (Gnome), pódese acceder a sistemas de ficheiros remotos sobre SSH. Pódense invocar moitas aplicacións para editar ficheiros, pero o VIM non é unha delas (non entende as URIs? de Gnome VFS). Grantm publicou un script en http://www.perlmonks.org/?node_id=602454 que soluciona este problema
#!/usr/bin/perl
use strict;
use warnings;
my @files;
foreach (split /\n/, $ENV{NAUTILUS_SCRIPT_SELECTED_URIS}) {
if(s{^file://(/.*)$}{$1}) {
push @files, unescape($_);
}
elsif(s{^ssh://([^/]+)/(.*)$}{scp://$1//$2}) {
push @files, unescape($_);
}
else {
system(qq{gdialog --infobox "Unknown URI type: '$_'"});
exit;
}
}
my $msg = "Files:\n" . join("\n", @files);
#system(qq{gdialog --infobox "$msg"});
system('gvim', @files);
exit;
sub unescape {
my($data) = $_;
$data =~ s/%([\da-f][\da-f])/chr(hex($1))/eg;
return $data;
}
Este script cópiase en "~/.gnome2/nautilus-scripts/Open with gvim" e dánselle permisos de execución.