Use rmate with Sublime Text, an improved fork of rsub.
Clone or download
Pull request Compare This branch is 28 commits ahead, 4 commits behind henrikpersson:master.
Latest commit 32e4032 Oct 10, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Default.sublime-commands remote_subl Aug 30, 2017
Main.sublime-menu remote_subl Aug 30, 2017
README.md Update README.md Oct 10, 2018
remote_subl.py fix lint Jan 24, 2018
remote_subl.sublime-settings pop up when connection lost Aug 30, 2017

README.md

RemoteSubl

RemoteSubl starts as a fork of rsub to bring rmate feature of TextMate to Sublime Text. It transfers files to be edited from remote server using SSH port forward and transfers the files back when they are saved.

Comparing to rsub, the followings are enhanced:

  • support multiple files via rmate foo bar.
  • use the same view when opening the same file twice.
  • notify when connection lost.
  • resume previous connection when it was lost.
  • better status bar messages when saving file and when encountering errors.
  • bring up Sublime Text on different platforms.

Why a new fork? It seems that the author of rsub is not actively maintaining that package.

Installation

RemoteSubl can easily be installed using Package Control.

On the remote server, we need to install rmate (this one is the bash version). You don't have to install it if you have been using rmate with TextMate or other editors. It is just the same executable. If not, it (the bash version) can be installed by running this script (assume that you have the right permission),

curl -o /usr/local/bin/rmate https://raw.githubusercontent.com/aurora/rmate/master/rmate
sudo chmod +x /usr/local/bin/rmate

You can also rename the command to rsubl

mv /usr/local/bin/rmate /usr/local/bin/rsubl

If your remote system does not have bash (so what else does it have?), there are different versions of rmate to choose from:

Usage

Open an ssh connection to the remote server with remote port forwarded. It can be done by

ssh -R 52698:localhost:52698 user@example.com

After running the server, you can just open the file on the remote system by

(NOTE: you need to have opened Sublime on you local machine. If not you get this error connect_to localhost port 52698: failed.)

rmate test.txt

... or if you renamed it to rsubl then ...

rsubl test.txt

If everything has been setup correctly, your should be able to see the opening file in Sublime Text.

SSH config

It could be tedious to type -R 52698:localhost:52698 everytime you ssh. To make your life easier, add the following to ~/.ssh/config,

Host example.com
    RemoteForward 52698 localhost:52698
    User user

From now on, you only have to do ssh example.com.