Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Branch: master
Commits on Oct 28, 2011
  1. @JEG2
  2. @JEG2

    Defaulting to an SSH tunnel friendly configuration and leaving the ol…

    JEG2 authored
    …d connection semantics available as a new option.
  3. @JEG2

    Making sure we write binary.

    JEG2 authored
  4. @JEG2
  5. @sorbits

    Alter shebang and add encoding comment.

    sorbits authored
    We use ‘env’ to find ‘ruby’ so that it is still found if installed outside ‘/usr/bin’ (presuming its location is listed in the PATH environment variable).
    
    Since not all implementations of ‘env’ support additional arguments to the executable we wish to run, there now is an encoding comment to replace the -KU argument (for ruby 1.9).
Commits on Oct 18, 2011
  1. @sorbits

    Support RMATE_{HOST,PORT}.

    sorbits authored
    This allows setting the default host/port as environment variables and additionally, if the server accepts environment variables from the connecting client, solves the problem where multiple clients connects to the same account (e.g. same user on different machines).
Commits on Jan 23, 2011
  1. @sorbits

    Add --host/--port options.

    sorbits authored
    Also explicitly list -h/--help as -h would otherwise be matched by --host.
  2. @sorbits
Commits on Sep 24, 2010
  1. @lasersox

    Don't warn the user that the file isn't writeable when he is editing …

    lasersox authored
    …a path that doesn't yet exist!
  2. @lasersox

    Adding -w/--wait flag to let rmate block while the user edits the fil…

    lasersox authored
    …e. This is to support GIT_EDITOR and other such use-cases.
  3. @lasersox
  4. @lasersox

    Detach!

    lasersox authored
  5. @lasersox

    Organizing the program by putting functions and class definitions at …

    lasersox authored
    …the begining of the script.
  6. @lasersox
Commits on Aug 20, 2010
  1. @lasersox

    rmate will abort when any file being opened is not writable. Force it…

    lasersox authored
    … to open with -f / --force.
Commits on Jun 27, 2010
  1. @sorbits
Commits on Jun 8, 2010
  1. @sorbits
Commits on May 16, 2010
  1. @sorbits

    Change rmate / RMateServer to rely on exposed IP.

    sorbits authored
    This avoids doing ssh tunnels but also opens up the host for potential exploits so we should not make this the default and/or provide some possible authentication system.
Commits on May 13, 2010
  1. @sorbits
Commits on Oct 18, 2009
  1. @sorbits

    Only do a backup file when file exists.

    sorbits authored
    Also remove backup file after (successful) save.
  2. @sorbits

    Allow rmate to work for non-existing files.

    sorbits authored
    Presently it sends an empty string as the file data to the server. This cause a proxy icon to show for the file which is misleading. Ideally it shouldn’t send any file data, but that’ll cause “Save” to be treated as “Save As…” (will be fixed later).
Commits on Jun 22, 2009
  1. @ciaran

    Fix rmate saving.

    ciaran authored
    FileUtils.cp throws an exception on failure (rather than false return), as will a failed File.open, so this allows us to catch errors in a simple rescue block.
    FileUtils.cp will try to overwrite an existing file at the target path, so there is no need to explicitly unlink an existing backup first.
    
    Long-term we probably want some way for rmate to notify the server that the save failed.
Commits on Jun 20, 2009
  1. @ciaran

    Preserve the original file’s flags by copying it and overwriting the …

    ciaran authored
    …content, instead of creating a new file.
Commits on Jun 19, 2009
  1. @ciaran
  2. @ciaran
  3. @ciaran
  4. @ciaran

    Add saving to RMate.

    ciaran authored
    When a save command is received, the original file will be renamed to take a ~ suffix, and (if this succeeds) the new data will be written to the original path.
  5. @sorbits

    Add ruby version of mate.

    sorbits authored
    This is not saving back (on the server) but otherwise works. It takes one or more files as argument and opens this in the local version of Avian.
    
    I have this in my .ssh/config for the host:
    
        RemoteForward 25757 localhost:25757
        ForwardAgent yes
        ControlPath ~/.ssh/master-%r@%h:%p
        ControlMaster auto
    
    The first line is the essential one, the next ones are so that it re-uses the connection, that way, it won’t try to setup forward for same port if a second session is opened.
    
    The protocol with Avian is very simply, it is: First line is just «command» and then zero or more «variable»: «value» to provide settings.
    
    One special case is that the variable ‘data’ has a integer as value which tells how many raw bytes should be read next, after those, more variables may follow (even another data variable, in which case the bytes read should be appended to those already read, this is to allow transferring data in chunks, e.g. TM may not know in advance how many bytes a file will amount to (due to encodings and such)).
    
    The rmate app tells Avian that it wants the file data back on save with ‘data-on-save: YES’ (look in the source). Avian sends back ‘save’ as command and then the data via the variable system explained above. It sends back the ‘close’ command when a file is closed. It puts the token among the variables sent back if one was provided during open.
Commits on Mar 1, 2008
  1. @sorbits

    Initial commit

    sorbits authored
Something went wrong with that request. Please try again.