Package: rsub
Withrsubyou can open and edit files from a remote machine (you’re
connected via SSH) in your localSublime
Text* orTextMate
2. No need to setup a shared
filesystem or anything like that, just aSSH
tunnel!This script is a port of the originalrmate.* To get it work on Sublime Text you need
`rsub-plugin <https://github.com/jirutka/rsub-plugin>`__.InstallationThe rsub requires Python 2.7+ or 3.× and moduledocopt0.4.0+.System-wideInstall from PyPi system-wide:sudo pip install rsub…or manually:git clone git@github.com:jirutka/rsub-client.git
cd rsub-client
sudo ./setup.py install
cd .. && rm -Rf rsub-clientLocallyIf you don’t have root access to the system, or just don’t want to
install rsub system-wide, then you can tellpiporsetup.pyto
install rsub into your home directory (namely~/.local):pip install --user rsub…or manually:git clone git@github.com:jirutka/rsub-client.git
cd rsub-client
./setup.py --user install
cd .. && rm -Rf rsub-clientThersubscript should be installed in~/.local/bin. If you want
to make it accessible from anywhere, add this directory to yourPATH(choose one according to shell you’re using):echo 'export PATH=$HOME/.local/bin:$PATH' >> ~/.bashrc                   # bash
echo 'export PATH=$HOME/.local/bin:$PATH' >> ~/.zshrc                    # zsh
echo 'set -x PATH $HOME/.local/bin $PATH' >> ~/.config/fish/config.fish  # fishUsageYou can usersub--helpto see the usage:Usage:
  rsub [options] [-l NUM] [-m NAME] [-t TYPE] -
  rsub [options] [-l NUM...] [-m NAME...] [-t TYPE...] FILE...

  -                     Read from the standard input.
  FILE                  File to open (will be created if does not exist yet).

  -l NUM --line=NUM     Place caret on line [NUM] after loading the file.
  -m NAME --name=NAME   The display name shown in editor.
  -t TYPE --type=TYPE   Treat file as having [TYPE] (e.g. rb, py, md).

Options:
  -H HOST --host=HOST   Connect to host. Use 'auto' to detect the host from SSH.
  -p PORT --port=PORT   Port number to use for connection.
  -w --wait             Wait for file(s) to be closed by the editor.
  -f --force            Open even if the file is not writable.
  -v --verbose          Verbose logging messages.
  -h --help             Show this message and exit.
  --version             Show version and exit.Default options can be set in/etc/rsubrcand~/.rsubrc(or/etc/rmate.rcand~/.rmate.rcfor compatibility with original
rmate):host = auto  # prefer host from SSH_CONNECTION over localhost
port = 52698You can also set theRSUB_HOSTandRSUB_PORT(orRMATE_HOSTandRMATE_PORT) environment variables.Setting up the connectionTo do its job,rsubneeds a connection back to your computer so that
it can talk to Sublime Text or TextMate. There are multiple ways you can
accomplish this, but probably the best way is to use a reverse SSH
tunnel:ssh -R 52698:localhost:52698 example.comThe-Roption sets up a reverse tunnel. The first52698names a
port on the remote. It will be connected tolocalhost:52698or the
same port on the connecting box. That port number is the default for
Sublime Text, TextMate 2 and rsub. To test things out, launch Sublime
Text or TextMate 2 on your local machine and run a command like this on
the remote:rsub test.mdAfter you verify that things are working, feel free to update your SSH
setting to automatically setup the tunnel without you needing to supply
the-Rarguments all the time.For a single server just add an entry like the following to your~/.ssh/config:Host example.com
RemoteForward 52698 localhost:52698If you want to make those settings the default for all of your servers,
use the wildcard host:Host *
RemoteForward 52698 localhost:52698More information can be found inthis blog
post.LicenseThis project is licensed underMIT
license.